עבור לתוכן

זקוק לעזרה עם עברית, unicode וכל מה שצריך כדי להמיר בינהם

Featured Replies

פורסם

אני מנסה להמיר עברית מ Ascii ל unicode מה שמתגלה כמשימה קשה במיוחד.

בשביל ההמרה חשבו במיקרוספוט על הפונקציה הבאה

int MultiByteToWideChar(
UINT CodePage, // code page
DWORD dwFlags, // character-type options
LPCSTR lpMultiByteStr, // string to map
int cbMultiByte, // number of bytes in string
LPWSTR lpWideCharStr, // wide-character buffer
int cchWideChar // size of buffer
);

כמו שאתם רואים היא מקבלת UNIT CodePage ואם מכניסים לה את המספר 862 היא אמורה תאורתית

להמיר נכון עברית שנשמרה בascii עם דף קוד עברי של דוס. אבל, וכאן האבל הגדול winxp שלא בגירסת localized של עברית

ממיר בתור ברירת מחדל עם דף קוד אמריקאי, העברית נהפכת כצפוי לסדרה של סימנים מוזרים.

אז אתם אומרים, למה ברירת מחדל הרי אתה יכול לתת לה את הקוד 862.

ובכן בפרויקט שלי אני חייב לקבל command line שמורכב מעברית ascii ב 862 ולהמיר אותה ל unicode אבל ברגע שהתוכנה

רצה winxp ימיר אוטומטית את ה ascii ל unicode בלי לשאול באיזה דף להישתמש ולכן העברית תמיד תצא ג'יבריש.

האם יש דרך לשנות את ברירות המחדל של winxp באנגלית שידבקו בדף קוד של העברית? האם בכל זאת ניתן לשחזר את העברית?

למישהו יש עצה?

כמו כן כל הגדרות העברית בווינדוס שלי מכוונות נכון לישראל,עברית וברירית המחדל של תוכניות שאינן תומכות בunicode.

פורסם

רגע, זה קצת מוזר: אתה מנסה לקבל ב-command line אותיות ב-codepage עברי של DOS?

אני לא בטוח שבמקרה של command line יש לך בכלל שליטה על ה-codepage שבו אתה מקבל את ה-argv שלך... (למרות שסביר להניח שיש. נסה לחפור בדוקומנטציה על ה-shell של windows...)

פורסם
  • מחבר

זה לא שאני מנסה לקבל זה פשוט מה שיש Command Line שמורכב מעברית ascii בדף קוד 862

ונכון, אין לי שליטה על הדף קוד בהמרה וזו הבעיה. העברית יוצאת ג'יבריש. נראה שווינדוס מגויר (כזה שהוא עבר לוקליזציה שלמה לעברית ולא תוסף עברית)

יודע להתמודד עם הבעיה בסדר ואילו ווינדוס רגיל שתומך בעברית עם דף קוד לא מתמודד נכון. מבחינתי לעבור לווינדוס עברי זה לא הפיתרון ואני ימשיך לעבוד על הבעיה.

פורסם

ומה קורה אם אתה מתקין MUI עברי?

פורסם

http://www.uwe-sieber.de/codepage_e.html

יש שם חלק שנקרא DOS Codepages under Windows שאמור לעזור לך, כולל הסבר ספציפי על עברית.

פורסם
  • מחבר

הבעיה אינה בעיה עם הצגת עברית בחלון דוס אלא המרה של אותה העברית ליוניקוד.

שימוש ב CHCP לא עוזר, לא בגלל שחסרה תמיכה אלא בגלל שזה לא משנה.

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

CP_ACP: The current system Windows "ANSI" code page

היא משפיעה על

CP_OEMCP: The current system OEM code page

זה טוב לתוכנות דוס שצריכות לרוץ עם עברית בחלונות XP (בתנאי שמתקנים את הפונטים) אבל לא בשביל המרה ליוניקוד.

פורסם

נסה לעבוד בחלון דוס. שם הקש:

mode con: cp select=862

זה יגרום לו לבחור באותו חלון את הדף קוד הנכון

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

פורסם
  • מחבר

הבעיה שלי לא קשורה לעולם המופלא של דוס ו/או חלון דוס בXP (רק השורשים שלה שם...אהמ דף קוד 862)

לכן פקודה כזאת לא עוזרת.

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים