الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكله في تشغيل برنامجي على windows لا يحتوي العربيه

مغلق
بدأه مهدي حجازي في 24 يوليو 2007 · 10 رد · 1,397 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

مشكلتي أن لدي برنامج vb6 عند تشغيله على windows لم نقم بتحميل حزمه اللغات التي تكتب من اليمين الى اليسار فان الكلام يظهر على شكل علامات استفهام.

الحل:

لا أريد ان اطلب من المستخدم ان يقوم بتحميل حزمه اللغه العربيه و انما :

1 - أن اكتشف اذا كان الجهاز عليه اللغه ام لا.

2- اذا لم يكن عليه اللغه اريد ان اقوم بتثبيتها قبل تثبيت برنامجي.

ارجوا ان تساعدوني في حل هاتين المشكاتين ولكم جزيل الشكر.

#2

أخي الكريم ، لغة البيزيك المرئي 6.0 ترتبط إرتباط كامل بنظام التشغيل ، فعليك إضافة كافة الإمكانيات الممكنة للغات المختلفة من ControlPanel أختر Regional And language Options ، وفي التبويب Language تأكد من تعليم كافة الـ Checks ، ثم أذهب الي التبويب Advancel وحدد الدولة Arabic(Egypt) ، ثم قم بتعليم كافة الخيارات الموجودة بـ Code Page Convartion Tables .

وأحب أن أوضح لك شيء آخر ، لغة VB 6.0 تحتاج الي ملف يدعي VBAME.DLL لضبط خاصية RightToLeft الخاصة بالنوافذ وعناصر التحكم . قم بنسخها في مسار نظام التشغيل ، وستجد هذا الملف في إسطوانة VB 6.0 أو Office .

وشكراً

لا تخلط ما بين شخصيتي وأسلوبي .. فشخصيتي هي

ما أنا عليه وتحت تصرفي .. وأسلـوبي يعتمد عليـك

أنت وتصرفاتك

ولحظاتي صمت... وصمـت لحظاتي كلام ... كلامه

اشد آلام ... فصمتي أنا عنوان

عصر التكنولوجيا المعلوماتية(مدونتي الخاصة)

My FaceBook

#3

لمعرفة اللغات المدعومة فى النظام : EnumSystemLocales: Enumerate Installed and Supported System Locales

و أعتقد أنه ممكن تستخدم دالة LoadKeyboardLayout لتفعيل دعم لغة ما ( مش متأكد ).

ثم أن الأصل هو أن توفر قائمة بالـ Minimum System Requirement بما فيهم دعم اللغات و المستخدم دوره أنه يجهز جهازة و نظامه للعمل مش أحنا.

#4

أخي الكريم MMA_EG_Cairo أنا اعلم هذه المعلومات ولكني أريد أن اقوم بها اتوماتيكيا عند عمل تثبيت لبرنامجي.

شكرا لك اخي msayed2004 على حل المشكله الأولى وانا اتفهم وجهه نظرك بالنسبه لقائمه المتطلبات لكن هذا ما فرض علي و أريد أن أقوم به.

والشكر مقدما لكل مساعده

#6

شكرا اخي TareqVB

ولكني لا اريد تغيير لغه الكتابه في شريط أوات اللغ وانما اريد تغيير non unicode language الموجوده في تبويب advanced الومجود في ال regional and language settings .

#7
muqawem كتب:
أخي الكريم MMA_EG_Cairo أنا اعلم هذه المعلومات ولكني أريد أن اقوم بها اتوماتيكيا عند عمل تثبيت لبرنامجي.

شكرا لك اخي msayed2004 على حل المشكله الأولى وانا اتفهم وجهه نظرك بالنسبه لقائمه المتطلبات لكن هذا ما فرض علي و أريد أن أقوم به.

والشكر مقدما لكل مساعده

لقد بحثت كثيرا في هذا الأمر من قبل أخي الكريم ولم أصل لشيء

وفي اعتقادي أن الأمر صعب جدا , والله أعلم

#8

أخواني الكرام ، أنا بقالي ثلاية أيام وأنا أفكر في الموضوع ، وبعد مرور هذه الأيام توصلت لشيء منطقي ، وليس أصل له من الأساس ، ولكنه مجرد رأي !!!!!!!!!

من المفروض أن نظام التشغيل يقوم بتخزين كافة التغيرات داخل قاعدة بيانات كبيرة تسمي ( RegEdit ) ،

فمسجل النظام مجرد مخزن يحدد للحاسب هل تم إختيار الأمر أم لا .

علي سبيل المثال إذا إتخزنا الأوامر الخاصة بتحويل نقر الفأرة من 2 كليك الي 1 كليك ، فأنه يقوم علي الفور بتخزن هذا الحدث في مسجل النظام ، والدليل علي ذلك أن لكل مستخدم له التعدادات الخاصة به .

فإذا عرفنا ما هي المفاتيح الموجودة داخل مسجل النظام فببساطة نعرف كيفية التحويل .

ولكن إخواني الكرام هناك مشكلة أخري لن نضعها في إعتبارنا وهي أن هناك ملفات يطلب منك نظام التشغيل بإدخال إسطوانة نظام التشغيل لنسخ الملفات الخاصة بعملية التعريب .

إذاً فنحن الآن لدينا مشكلتين من حيث المنطق وهما :

1- ما هي المفاتيح Keys الموجودة بمسجل النظام لتعليمها.

2- ما هي الملفات الموجودة داخل إسطوانة نظام التشغيل لإجراء عملية التعريب .

وإذا توصلنا لحل هذين المشكلتين ، فأعتقد أن تعم الفائدة علي الكل ، ويمكن إجراء تعريب لبرنامجي دون توجية المستخدم بالتعريب اليدوي .

والله أعلم ، فأنا مجرد مفكر بسيط ، وأتمني أن تتم حل هذه المشكلة لأنها هامة جداً بالنسبة للجميع

وآسف علي عدم فهمك يا muqawem .

وشكراً للجميع

لا تخلط ما بين شخصيتي وأسلوبي .. فشخصيتي هي

ما أنا عليه وتحت تصرفي .. وأسلـوبي يعتمد عليـك

أنت وتصرفاتك

ولحظاتي صمت... وصمـت لحظاتي كلام ... كلامه

اشد آلام ... فصمتي أنا عنوان

عصر التكنولوجيا المعلوماتية(مدونتي الخاصة)

My FaceBook

#9

السلام عليكم

شكرا لك أخي MMA_EG_Cairo على هذا التحليل للمشكله . بالنسبه لي فقيد بقيت طيله الأيام الماضيه أحاول حل هذه المشكله وهذا ما توصلت اليه :

بالنسبه للمشكله الأولى فقد الغينا محاوله ايجاد حل لها للاسباب التاليه :

1- ان المستخدم الذي لا يوجد لديه اللغة العربيه على جهازه فهو على الأغلب ليس عربيا وبرنامجنا لا يستهدفه.

2- لقد حصلت على حزمه اللغخ العربيه الموجوده في windows ولكن بصوره غير شرعيه أي انني لا استطيه تحزيمها وتوزيعها مع برنامجي كملفات مساعده.

أما بالنسيبه للمشكله الثانيه وهي اذا كانت عند المستخدم اللغه العربيه فكيف اضبط اعدادات اللغه دون تدخل المستخدم :

هناك ما يسمى في unattended installation وهو صنع نسخه من نظام التشغيل تحتوي على اعدادات التنصيب دون تدخ المستخدم ومن هذه الاعدادات هي اعدادات اللغه فلماذا لا نستفيد من هذه الفكره فكل ما عليك :

1 - انشئ ملف وليكن اسمه regopts.txt.

2- ضع فيه اعدادات اللغه التاليه :

[RegionalSettings]

Language = locale ID

LanguageGroup = language group ID, language group ID

SystemLocale = locale ID

UserLocale = locale ID

InputLocale = locale ID:keyboard layout ID, locale ID:keyboard layout ID

UserLocale_DefaultUser = locale ID

InputLocale_DefaultUser = locale ID:keyboard layout ID

لاحظ ان ما يهمنا هو السطر التالي SystemLocale = locale ID ولأخذ قيمه ال Locale ID التي تريدها ادخل على الربط التالي :

http://www.microsoft.com/globaldev/reference/lcid-all.mspx

وهذا مثال SystemLocale =0401 وهذا يضبطها على اللغه العربيه للسعوديه . لاحظ انيه يجب عليك استعمال القيم ال hex للغه.

3- الان يمكنك ايتدعاء هذه الاعدادات التاليه عن طريق محرر الاوامر والامر هو التالي :

rundll32.exe shell32,Control_RunDLL intl.cpl,,/f:"c:\regopts.txt"

4- وحتى نستفيد من هذه الخاصيه ضع هذا الامر في batch file وقم بتنفيذه اثناء عمليه تنصيب برنامج وبعد تثبي ملفات برنامجك ثم قم باعاده التشغيل.

#10

ياسلام علي هذه المعلومة الغالية ، هذه المعلومة تغني عن أي شيء ، فبمجرد إستدعاء الأمر يؤدي الي ظهور رسالة تفيد بحتمية إدخال إسطوان الـويندوز لجلب مجموعة من الملفات الخاصة بنظام التشغيل .

فهذا حل جميل لغاية ، ومبدئي

وشكراً

لا تخلط ما بين شخصيتي وأسلوبي .. فشخصيتي هي

ما أنا عليه وتحت تصرفي .. وأسلـوبي يعتمد عليـك

أنت وتصرفاتك

ولحظاتي صمت... وصمـت لحظاتي كلام ... كلامه

اشد آلام ... فصمتي أنا عنوان

عصر التكنولوجيا المعلوماتية(مدونتي الخاصة)

My FaceBook

#11

جميل ولكن ماذا اذا كان برنامجي متعدد اللغات بحيث انني اريد ان يستطيع المستخدم التبديل بين اللغات من البرنامج في اي وقت ؟؟!!

مشكلة لم اجد لها حل حتى الآن للاسف ..

كتفكير منطقي اعتقد انه يجب ان اقوم بتغيير non unicode language الموجوده في تبويب advanced حسب اللغة لان هذا كفيل بحل المشكلة.

بالمناسبة الملف vbame.dll لايحل المشكلة لانه موجود اصلا عند تثبت التعريب ولكن حتى بوجوده اذا غيرت القيمة التي ذكرتها اعلاه الى لغة لا تدعم اليمين - اليسار تظهر المشكلة.

تم تعديل هذه المشاركة بواسطة rcweb في 31 ديسمبر 2007 في 12:25

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…