דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. קבצים ברשת

הפורום כעת לקריאה בלבד, לקריאה נוספת.

קבצים ברשת

מתוזמן נעוץ נעול הועבר תכנות
19 פוסטים 3 כותבים 1.9k צפיות 3 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • clickoneC clickone

    @מנצפך

    1. הרשאות ושוב הרשאות.
    2. בכניסה למחשב אתה יכול למפות לתיקיית רשת בצורה ממש פשוטה.

    אני אישית משתמש ברעיון דומה כדי למפות לכונן X לכל משתמש את התיקייה האישית שלו.
    בעבר הביאו כאן גם פיתרון של כונן שנראה ממש כמו כונן לוגי עם הפניית UNC

    מנצפךמ
    מנצפךמ
    מנצפך
    כתב ב נערך לאחרונה על ידי
    #3

    @clickone אתה יכול להפנות אותי לפתרון שהובא?
    אני שם דגש על זה שאני צריך פתרון שיכול להשתנות כל הזמן. כלומר שתהיה לי שליטה מתוכנה שאני כותב על כל זה.

    clickoneC 2 תגובות תגובה אחרונה
    0
    • מנצפךמ מנצפך

      @clickone אתה יכול להפנות אותי לפתרון שהובא?
      אני שם דגש על זה שאני צריך פתרון שיכול להשתנות כל הזמן. כלומר שתהיה לי שליטה מתוכנה שאני כותב על כל זה.

      clickoneC
      clickoneC
      clickone
      כתב ב נערך לאחרונה על ידי
      #4

      @מנצפך
      שליטה תוך כדי תנועה?
      כשהמשתמש מחובר?
      כי אם הוא באמצע לקררוא את הקובץ לא יודע אם זה יעזור שתנתק לו את הכונן....

      אין טסט כמו פרודקשן.

      המייל שלי urivpn@gmail.com

      תגובה 1 תגובה אחרונה
      0
      • dovidD
        dovidD
        dovid
        ניהול
        כתב ב נערך לאחרונה על ידי
        #5

        https://stackoverflow.com/questions/3465182/how-to-map-a-drive-using-c
        https://stackoverflow.com/questions/43173970/map-network-drive-programmatically-in-c-sharp-on-windows-10

        • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
        • בכל נושא אפשר ליצור קשר dovid@tchumim.com
        תגובה 1 תגובה אחרונה
        1
        • מנצפךמ
          מנצפךמ
          מנצפך
          כתב ב נערך לאחרונה על ידי
          #6

          לא באמצע שהוא מחובר.

          תגובה 1 תגובה אחרונה
          0
          • מנצפךמ מנצפך

            @clickone אתה יכול להפנות אותי לפתרון שהובא?
            אני שם דגש על זה שאני צריך פתרון שיכול להשתנות כל הזמן. כלומר שתהיה לי שליטה מתוכנה שאני כותב על כל זה.

            clickoneC
            clickoneC
            clickone
            כתב ב נערך לאחרונה על ידי clickone
            #7

            @מנצפך
            @dovid נראה לי הפיתרון הזה עדיף. הוא ממש יוצר כונן לוגי ולא רשת.

            using System;
            using System.Text;
            using System.ComponentModel;
            using System.Runtime.InteropServices;
            
            static class Subst {
                public static void MapDrive(char letter, string path) {
                    if (!DefineDosDevice(0, devName(letter), path))
                        throw new Win32Exception();
                }
                public static void UnmapDrive(char letter) {
                    if (!DefineDosDevice(2, devName(letter), null))
                        throw new Win32Exception();
                }
                public static string GetDriveMapping(char letter) {
                    var sb = new StringBuilder(259);
                    if (QueryDosDevice(devName(letter), sb, sb.Capacity) == 0) {
                        // Return empty string if the drive is not mapped
                        int err = Marshal.GetLastWin32Error();
                        if (err == 2) return "";
                        throw new Win32Exception();
                    }
                    return sb.ToString().Substring(4);
                }
            
            
                private static string devName(char letter) {
                    return new string(char.ToUpper(letter), 1) + ":";
                }
                [DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
                private static extern bool DefineDosDevice(int flags, string devname, string path);
                [DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
                private static extern int QueryDosDevice(string devname, StringBuilder buffer, int bufSize);
            }
            
            

            בדיקה:

                    Subst.MapDrive('z', @"c:\temp");
                    Console.WriteLine(Subst.GetDriveMapping('z'));
                    Subst.UnmapDrive('z');
            

            לא בדקתי (ומעניין לבדוק) אם הוא על כל המחשב או רק על משתמש מסויים.

            מקור:
            https://stackoverflow.com/questions/3753758/creating-virtual-hard-drive

            אין טסט כמו פרודקשן.

            המייל שלי urivpn@gmail.com

            מנצפךמ clickoneC 2 תגובות תגובה אחרונה
            1
            • clickoneC clickone

              @מנצפך
              @dovid נראה לי הפיתרון הזה עדיף. הוא ממש יוצר כונן לוגי ולא רשת.

              using System;
              using System.Text;
              using System.ComponentModel;
              using System.Runtime.InteropServices;
              
              static class Subst {
                  public static void MapDrive(char letter, string path) {
                      if (!DefineDosDevice(0, devName(letter), path))
                          throw new Win32Exception();
                  }
                  public static void UnmapDrive(char letter) {
                      if (!DefineDosDevice(2, devName(letter), null))
                          throw new Win32Exception();
                  }
                  public static string GetDriveMapping(char letter) {
                      var sb = new StringBuilder(259);
                      if (QueryDosDevice(devName(letter), sb, sb.Capacity) == 0) {
                          // Return empty string if the drive is not mapped
                          int err = Marshal.GetLastWin32Error();
                          if (err == 2) return "";
                          throw new Win32Exception();
                      }
                      return sb.ToString().Substring(4);
                  }
              
              
                  private static string devName(char letter) {
                      return new string(char.ToUpper(letter), 1) + ":";
                  }
                  [DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
                  private static extern bool DefineDosDevice(int flags, string devname, string path);
                  [DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
                  private static extern int QueryDosDevice(string devname, StringBuilder buffer, int bufSize);
              }
              
              

              בדיקה:

                      Subst.MapDrive('z', @"c:\temp");
                      Console.WriteLine(Subst.GetDriveMapping('z'));
                      Subst.UnmapDrive('z');
              

              לא בדקתי (ומעניין לבדוק) אם הוא על כל המחשב או רק על משתמש מסויים.

              מקור:
              https://stackoverflow.com/questions/3753758/creating-virtual-hard-drive

              מנצפךמ
              מנצפךמ
              מנצפך
              כתב ב נערך לאחרונה על ידי
              #8

              @clickone והמשתמש לא יוכל לגשת למה שלא עשיתי mapping?

              clickoneC תגובה 1 תגובה אחרונה
              0
              • מנצפךמ מנצפך

                @clickone והמשתמש לא יוכל לגשת למה שלא עשיתי mapping?

                clickoneC
                clickoneC
                clickone
                כתב ב נערך לאחרונה על ידי
                #9

                @מנצפך
                אם זה ברשת אז וודאי שלא
                אם זה בתוך המחשב עצמו, אז תסגור את השאר בהרשאות קריאה וכתיבה.
                או תסתיר את הכונן (לא שזה יעזור יותר מדאי 🙂 אם הוא ידע להגיע מבחוץ לנתיב של C זה לא יעזור לך. אא"כ תשתמש בהרשאות חזקות או שים את זה בכונן אחר חוץ מC)

                אין טסט כמו פרודקשן.

                המייל שלי urivpn@gmail.com

                תגובה 1 תגובה אחרונה
                1
                • clickoneC clickone

                  @מנצפך
                  @dovid נראה לי הפיתרון הזה עדיף. הוא ממש יוצר כונן לוגי ולא רשת.

                  using System;
                  using System.Text;
                  using System.ComponentModel;
                  using System.Runtime.InteropServices;
                  
                  static class Subst {
                      public static void MapDrive(char letter, string path) {
                          if (!DefineDosDevice(0, devName(letter), path))
                              throw new Win32Exception();
                      }
                      public static void UnmapDrive(char letter) {
                          if (!DefineDosDevice(2, devName(letter), null))
                              throw new Win32Exception();
                      }
                      public static string GetDriveMapping(char letter) {
                          var sb = new StringBuilder(259);
                          if (QueryDosDevice(devName(letter), sb, sb.Capacity) == 0) {
                              // Return empty string if the drive is not mapped
                              int err = Marshal.GetLastWin32Error();
                              if (err == 2) return "";
                              throw new Win32Exception();
                          }
                          return sb.ToString().Substring(4);
                      }
                  
                  
                      private static string devName(char letter) {
                          return new string(char.ToUpper(letter), 1) + ":";
                      }
                      [DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
                      private static extern bool DefineDosDevice(int flags, string devname, string path);
                      [DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
                      private static extern int QueryDosDevice(string devname, StringBuilder buffer, int bufSize);
                  }
                  
                  

                  בדיקה:

                          Subst.MapDrive('z', @"c:\temp");
                          Console.WriteLine(Subst.GetDriveMapping('z'));
                          Subst.UnmapDrive('z');
                  

                  לא בדקתי (ומעניין לבדוק) אם הוא על כל המחשב או רק על משתמש מסויים.

                  מקור:
                  https://stackoverflow.com/questions/3753758/creating-virtual-hard-drive

                  clickoneC
                  clickoneC
                  clickone
                  כתב ב נערך לאחרונה על ידי
                  #10

                  @clickone אמר בקבצים ברשת:

                  לא בדקתי (ומעניין לבדוק) אם הוא על כל המחשב או רק על משתמש מסויים.

                  לפי בדיקה ראשונית שעשיתי הכונן הוא פר משתמש

                  אין טסט כמו פרודקשן.

                  המייל שלי urivpn@gmail.com

                  תגובה 1 תגובה אחרונה
                  0
                  • מנצפךמ
                    מנצפךמ
                    מנצפך
                    כתב ב נערך לאחרונה על ידי
                    #11

                    @clickone אני רוצה להבין עוד.
                    איך אני עושה שהמשתמש לא יוכל לגשת למה שלא עשיתי maaping?
                    בדר"כ אני יודע שבשביל לגשת לקבצים במחשב אחר ברשת, צריך שם וסיסמא של המשתמש במחשב המרוחק. אז איך אני מספק אותם בשביל ליצור כונן רשת?

                    clickoneC תגובה 1 תגובה אחרונה
                    0
                    • מנצפךמ
                      מנצפךמ
                      מנצפך
                      כתב ב נערך לאחרונה על ידי
                      #12

                      זה קשור כאן לעסק?
                      https://www.codeproject.com/Articles/43091/Connect-to-a-UNC-Path-with-Credentials

                      תגובה 1 תגובה אחרונה
                      1
                      • מנצפךמ מנצפך

                        @clickone אני רוצה להבין עוד.
                        איך אני עושה שהמשתמש לא יוכל לגשת למה שלא עשיתי maaping?
                        בדר"כ אני יודע שבשביל לגשת לקבצים במחשב אחר ברשת, צריך שם וסיסמא של המשתמש במחשב המרוחק. אז איך אני מספק אותם בשביל ליצור כונן רשת?

                        clickoneC
                        clickoneC
                        clickone
                        כתב ב נערך לאחרונה על ידי
                        #13

                        @מנצפך
                        זה רשת?
                        אז אולי הפיתרון של דוד יותר נכון.
                        ואז ממילא אתה משתמש בהרשאות אז הכל בסדר
                        אתה יכול להשתמש בפיתרון שלי עם נתיב UNC

                        לגבי שם משתמש וסיסמא אני לא יודע
                        אבל ייתכן ש

                        @מנצפך אמר בקבצים ברשת:

                        זה קשור כאן לעסק?
                        https://www.codeproject.com/Articles/43091/Connect-to-a-UNC-Path-with-Credentials

                        אכן יעזור

                        אין טסט כמו פרודקשן.

                        המייל שלי urivpn@gmail.com

                        מנצפךמ תגובה 1 תגובה אחרונה
                        0
                        • clickoneC clickone

                          @מנצפך
                          זה רשת?
                          אז אולי הפיתרון של דוד יותר נכון.
                          ואז ממילא אתה משתמש בהרשאות אז הכל בסדר
                          אתה יכול להשתמש בפיתרון שלי עם נתיב UNC

                          לגבי שם משתמש וסיסמא אני לא יודע
                          אבל ייתכן ש

                          @מנצפך אמר בקבצים ברשת:

                          זה קשור כאן לעסק?
                          https://www.codeproject.com/Articles/43091/Connect-to-a-UNC-Path-with-Credentials

                          אכן יעזור

                          מנצפךמ
                          מנצפךמ
                          מנצפך
                          כתב ב נערך לאחרונה על ידי
                          #14

                          @clickone זה רשת.

                          clickoneC תגובה 1 תגובה אחרונה
                          1
                          • מנצפךמ מנצפך

                            @clickone זה רשת.

                            clickoneC
                            clickoneC
                            clickone
                            כתב ב נערך לאחרונה על ידי clickone
                            #15

                            @מנצפך
                            תתחיל עם הפיתרון הזה
                            בא נראה מה יצא
                            אל תראה למשתמש את כונן הרשת
                            רק את הכונן הלוגי
                            וכמובן

                            1. הרשאות!
                            2. הרשאות!!
                            3. הרשאות!!!

                            אין טסט כמו פרודקשן.

                            המייל שלי urivpn@gmail.com

                            מנצפךמ 2 תגובות תגובה אחרונה
                            0
                            • clickoneC clickone

                              @מנצפך
                              תתחיל עם הפיתרון הזה
                              בא נראה מה יצא
                              אל תראה למשתמש את כונן הרשת
                              רק את הכונן הלוגי
                              וכמובן

                              1. הרשאות!
                              2. הרשאות!!
                              3. הרשאות!!!
                              מנצפךמ
                              מנצפךמ
                              מנצפך
                              כתב ב נערך לאחרונה על ידי
                              #16

                              @clickone איך להסתיר את הרשת?
                              האמת שאני קצת מסתבך כי אני לא על המחשב ווינדוס ואת כל הניסויים אני עושה על VM.

                              תגובה 1 תגובה אחרונה
                              0
                              • clickoneC clickone

                                @מנצפך
                                תתחיל עם הפיתרון הזה
                                בא נראה מה יצא
                                אל תראה למשתמש את כונן הרשת
                                רק את הכונן הלוגי
                                וכמובן

                                1. הרשאות!
                                2. הרשאות!!
                                3. הרשאות!!!
                                מנצפךמ
                                מנצפךמ
                                מנצפך
                                כתב ב נערך לאחרונה על ידי
                                #17

                                @clickone ניסיתי להוריד הרשאות מהתיקייה שברשת. אבל גם כשאני ממפה כונן המשתמש לא יכול להיכנס. מה עשינו?

                                clickoneC תגובה 1 תגובה אחרונה
                                0
                                • מנצפךמ מנצפך

                                  @clickone ניסיתי להוריד הרשאות מהתיקייה שברשת. אבל גם כשאני ממפה כונן המשתמש לא יכול להיכנס. מה עשינו?

                                  clickoneC
                                  clickoneC
                                  clickone
                                  כתב ב נערך לאחרונה על ידי
                                  #18

                                  @מנצפך ההרשאות צריכות להיות תקפות ספציפית לאותו משתמש.
                                  אולי תמקד יותר מה אתה מנסה לעשות?
                                  אולי כל מה שאתה צריך זה תיקיית FTP ממופה.

                                  אין טסט כמו פרודקשן.

                                  המייל שלי urivpn@gmail.com

                                  תגובה 1 תגובה אחרונה
                                  1
                                  • מנצפךמ
                                    מנצפךמ
                                    מנצפך
                                    כתב ב נערך לאחרונה על ידי
                                    #19

                                    @clickone אפרט יותר.
                                    יש מחשב ציבורי.
                                    אני רוצה לאפשר לכמה אנשים להשתמש בו, כל אחד יוכל לאחסן את החומר שלו על המחשב ויוכל לגשת רק לקבצים שלו, ע"י הזנת פרטי זיהוי בתוכנה שלי.
                                    אני לא רוצה ליצור לכל אחד חשבון משלו. (כי זה כמה מחשבים).
                                    חשבתי לעשות משהו כזה:
                                    כשמשתמש נכנס לראשונה לתוכנה שלי, אני יוצר לו תיקייה ברשת, וממפה אותה.
                                    לאחר שהוא מסיים את השימוש אני מוחק את המיפוי, ומשנה את ההרשאות של התיקייה כך ששום מחשב ברשת לא יוכל לגשת אליה. עד שהמשתמש נכנס שוב למערכת, ואז אני נותן שוב (למחשב שבו הוא משתמש) הרשאות גישה.
                                    מה אתם אומרים על זה?
                                    והאם אפשר לעשות את זה גם ב FTP? (מיפוי כונן, כך שאפשר לגשת אליו כמו כונן לוגי אחר)?

                                    תגובה 1 תגובה אחרונה
                                    0

                                    שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.

                                    נמאס לכם לגלול בין אותם הפוסטים בכל ביקור? כשנרשמים לחשבון, תמיד תחזרו בדיוק למקום שבו הייתם קודם, ותוכלו לבחור לקבל התראות על תגובות חדשות (בין אם במייל, ובין אם בהתראת פוש). תוכלו גם לשמור סימניות ולפרגן ב-upvote לפוסטים כדי להביע הערכה לחברי קהילה אחרים.

                                    בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗

                                    הרשמה התחברות
                                    תגובה
                                    • תגובה כנושא
                                    התחברו כדי לפרסם תגובה
                                    • מהישן לחדש
                                    • מהחדש לישן
                                    • הכי הרבה הצבעות


                                    בא תתחבר לדף היומי!
                                    • התחברות

                                    • התחברו או הירשמו כדי לחפש.
                                    • פוסט ראשון
                                      פוסט אחרון
                                    0
                                    • דף הבית
                                    • קטגוריות
                                    • פוסטים אחרונים
                                    • משתמשים
                                    • חיפוש
                                    • חוקי הפורום