Free Web Hosting Provider - Web Hosting - E-commerce - High Speed Internet - Free Web Page
Search the Web

 نفذ ما كنت تحلم بتنفيذه

FileTypes-OCX

معلومات أخرى

الأخوة المبرمجين :

أظن أنه بات واضحا عمل الأداة و كيفية استدعاء أوامرها من خلال الشروحات السابقة و لكن بقي لدينا بعض البارمترات الصعبة و البحاجة إلى المزيد من الشرح

كيفية كتابة الكود:

يرجى الاطلاع على المثال المرفق مع الأداة و الذي يمكنكم الحصول عليه من خلال قسم التحميل...

 

البارامتر Command:

إن هذا البارامتر من أهم البارمترات في الأداة و أكثرها تعقيدا ....

و يجب أن يضم هذا البارمتر مايلي

دليل الملف التنفيذي لبرنامجك: App.Path

أسم ملفك التنفيذي باللاحقة:App.EXEName

الأمر الخاص بالشلShell المستخدم و هو من اختيارك المطلق و يجب أن تضع أمر خاص لكل Shell تضيفه إلى لاحقتك

 

فتكون النتيجة كما يلي

FileTypesCommand = App.Path & "/" & App.ExeName & الأمر الخاص بك

عند وجود الملف التنفيذي على سطح القرص الصلب (الجذر)  لا داعي لإضافة "\" ... و عليك التحقق بطرقك الخاصة.

 

أما باقي البارمترات فهي اختيارية بحتة .... أما البارامترات المعقدة الأخرى فقد تلافينا المشكلة من خلال إضافة Enum خاص لكل بارامتر يقدم لك الخيارات الممكن كتابتها (فتكون النتيجة صحيحة 100%) و يبقى عليك اختيار أقرب اختيار يناسبك....

 

كيفية استدعاء  الأمر الخاص بي:

كبف أعرف أن الأمر المطلوب تنفيذه هو كذا ؟؟؟؟؟؟؟؟؟؟؟؟؟؟!!!!

لقد نفذت أوامر إنشاء لاحقة و كل شيئ تمام ثم أنشئت Shell خاص للأداة .... و لكن المشكلة

كيف يمكن لبرنامجي معرفة أن المطلوب هو الأمر الخاص بالShell الأول أو الثاني ..... ؟؟؟؟

 

بسيطة !!!! الموضوع بسيط جدا كل ماعليكم حتى تعرفون الأمر المراد تنفيذه هو تعريف متحول خاص به و يكون متحول عام .

ثم كتابة مايلي عند Form_Load أو عند Sub_Main حسب مشروعك (أنت أدرى) :

اسم المتحول = Command

 

الأمرين RegistryEnumerateSubKeys و  :RegistryEnumerateVa

إن هذان الأمران من أهم الأوامر الموجودة في هذه الأداة حيث أنهما يقدمان لاحقة بمحتويات أي مفتاح سواء محتوياته من المفاتيح الفرعية أو من القيم.

 


Dim     Lngcount     As     Long
Dim     lngCounter     As     Long
Dim     astrIn()     As     String
FileTypes1.RegistryEnumerateSubKeys      دليل المفتاح الفرعي,     المفتاح الجذري     , astrIn(),     Lngcount

For lngCounter = 0 To Lngcount - 1
Me.List1.AddItem (astrIn(lngCounter))
Next

 

 

و بهذا الكود تملأ      List1    باجذور الموجودة في المستوى الأدنى من مستوى المفتاح المحدد

أما بالنسبة للأمر الآخر فإن استخدامه مماثل لاستخدام هذا الأمر .....

 

و للتوسع في طريقة استخدامهما يمكنكم الإطلاع على المثال المرفق مع الأداة حيث تلاحظون استخدام عملي لهذه الأوامر.

 

أظن الآن بات بإمكانكم استخدام الأداة بكل طلاقة ................

 

 

وائل فؤاد رضا

Waed.r@scs-net.org