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

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

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

בעית עברית בקריאת DLL

מתוזמן נעוץ נעול הועבר תכנות
2 פוסטים 1 כותבים 337 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • מנצפךמ מנותק
    מנצפךמ מנותק
    מנצפך
    כתב ב נערך לאחרונה על ידי
    #1

    C#
    אני משתמש במתודה OpenPrinter.

       [DllImport("winspool.Drv", EntryPoint = "OpenPrinterA",
           SetLastError = true, CharSet = CharSet.Ansi,
           ExactSpelling = true, CallingConvention = CallingConvention.StdCall)]
    
            private static extern bool
          OpenPrinter([MarshalAs(UnmanagedType.LPStr)] string szPrinter,
          out IntPtr hPrinter, IntPtr pDefault); //ref PRINTER_DEFAULTS pd);
    

    זה עובד נפלא, אך כשאני מנסה לפתוח מדפסת עם שם בעברית זה נכשל (שגיאה 1801 : Printer_name_invalid).

    זה קורה רק שאני על משתמש באנגלית. אם המשתמש בעברית זה עובד רגיל.

    מה אפשר לעשות?
    ניסיתי לשנות את ה charset ל -unicode אך לא עוזר.

    בנוסף, האם יש דרך לשנות את השפה של כל התהליך לעברית? אולי זה יעזור.

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

      הפתרון הוא להשתמש בגירסת הunicode של הפונקציה.

      
              [DllImport("winspool.Drv", EntryPoint = "OpenPrinterW",
             SetLastError = true, CharSet = CharSet.Ansi,
             ExactSpelling = true, CallingConvention = CallingConvention.StdCall)]
      
              public static extern bool
            OpenPrinter([MarshalAs(UnmanagedType.LPWStr)] string szPrinter,
            out IntPtr hPrinter, IntPtr pDefault); //ref PRINTER_DEFAULTS pd);
      
      

      (שינו לב לשינוי בין LPWStr ל LPStr)

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

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

      • אין לך חשבון עדיין? הרשמה

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