VB6 Registry Editor

بسم الله الرحمن الرحيم

(الموضوع للمبتدئين)Visual Basic 6.0 Registry

 

مقدمـــــــــــــــــــــــــــــــــــــــــــــــه

ماهى ملفات الريجيسترى Registry : 
    - هى قاعدة بيانات هرمية تقوم بتخزين اعدادات البرامج الاختيارات فى بيئة مايكروسوفت ويندوز تحتوى على ضبط و اعدادات ملفات و برامج نظام التشغيل ذات المستوى المنخفض مثل الـكيرنيل و تعريفات الجهاز و ايضا اى برنامج اخر ليس من منتجات مايكروسوفت و تم تقديمها لاول مرة فى اصدار الويندوز 3.1 .

موضوع اليوم هو التعامل مع ملفات الريجيسترى Registry Editor من خلال Visual Basic 0.6 و فائدة هذا الموضوع هو حفظ قيم المتغيرات التى تنتج من البرنامج و التى يود المبرمج الاحتفاظ بها حتى بعد عمل Restart للكمبيوتر و اهم الامثلة التطبيقية عليها هو مشروع تسجيل الدخول بكلمة سر او Login Screen .... حيث تحتاج احيانا ان تجعل البرنامج يتعامل مع اكثر من مستخدم سواء كان ذلك على جهاز واحد أو اكثر من جهاز فتقوم بعمل شاشة لدخول المستخدمين المصرح لهم فقط Register و ايضا بعد التسجيل تحتاج الى ان يتعرف البرنامج دائما على المستخدم الذى يعمل Login و ذلك عن طريق حفظ اسمه فى الريجيسترى و يظل دلئما مصرح له بالعمل حتى يقوم بعمل LogOut من البرنامج و تظهر هذه الخاصية فى العديد من المواقع التى تضع Box بعد خانات الـــ Login اسمه Save UserName On PC و معناها ان كل مره سيقوم المستخدم بالدخول على الموقع فلن يسأله الموقع عن اسمه او رقمه السرى فهم بالفعل محفوظين على الجهاز الخاص بالمستخدم و فى اغلب الاوقات يكون فى الريجيسترى.
طريقة التعامل مع ملفات الريجيسترى:
1) حفــظ  SaveSetting
2) حـــذف DeleteSetting
3) استدعاء GetSetting
4) استدعاء الكل GetAllSettings
متغيرات المعادلة
AppName, SectionName, KeyName, KeyValue
شرح متغيرات المعادلة :
AppName :
هو اسم البرنامج : و هو الاسم الذى تختاره بصرف النظر عن اسم برنامج الفيجوال بيزك قد يكون أى شىء
SectionName :
هو اسم القسم : و هو ايضا تختاره أى اسم تريد و هو يمثل مكان تخزين اسم القيمه Key Name
KeyName :
هو اسم المفتاح : و هو المفتاح الذى تخزن فيه القيمة Key Value
KeyValue :
هو قيمة الفمتاح : و هو القيمة المراد تخزينها أو التعامل معها عموما .
كتابة الكود :
SaveSetting appname := "MyApp"section := "Startup"Key := "Top"Key := 75
Or
SaveSetting "AppName", "SectionName", "KeyName", KeyValue
GetSetting "AppName", "SectionName", "KeyName"
GetAllSetting "AppName", "SectionName", "KeyName"
DeleteSetting "AppName", "SectionName", "KeyName"
شكل ملف الريجيسترى

ماهو شكل ملفات الريجيسترى Registry : 
    - هى جميع الملفات ذات الامتداد Reg و تكون عبارة عن مفاتيح فى اغلب الاوقات
اين توجد ملفات الريجيسترى Registry : 
    - توجد فى اى مكان على الجهاز فقط قم بالبحث عن (reg.*)
و المسؤل عن التعامل مع ملفات الريجيسترى هو برنامج الريجيسترى Registery Editor و يقوم باضافة ملفات و مفاتيح الريجيسترى و هو الذى سنقوم بالتعامل معه فى موضوع اليوم و يتم فتح الريجيسترى كالتالى :
1) قائمة Start ثـــــــــم
2) نختار Run او نضغط على R ثـــــــــــم
3) نكتب RegEdit
و يظهر الشكل التالى و الذى هو Registery Editor "لا انصح بالتعامل معه اذا لم تكن على دراية تامه به"
vb6 registry editor
Registry Editor
اضغط على الصورة لرؤيتها بالحجم الطبيعى
أين تجد المفاتيح التى قمت بحفظها فى الريجيسترى عند التعامل مع VB6 ؟
HKEY_CURRENT_USER , SOFTWARE, VB AND VBA PROGRAM SETTINGS, "Your AppName"

vb6 registry editor
ملفات الريجيسترى

 الموضـــــــــــــــــــــــــــــــــــــــــوع :

عمل شاشة Login للدخول على برنامج

البرنامج يحتوى على شاشة Login و شاشة أخرى تمثل البرنامج المراد التسجيل اليه سواء مستخدم جديد أو تسجيل دخول مستخدم حالى .
تصميم البرنامج : كما بالصورة رقم (1)
 
vb6 registry editor
صورة رقم (1) - شكل الفورم

شكل الفولدر النهائى للبرنامج : كما بالصورة رقم (2)


vb6 registry editor
صورة رقم (2) - شكل فولدر البرنامج
و المفروض أن المستخدم يقوم بالتسجيل أو يقوم مدير البرنامج Admin بتسجيل المستخدم عن طريق شاشة Login-Register و يضاف الاسم و كلمة السر الى قاعدة البيانات MyDb.Mdb و التى تحتوى على جدول (Info) و الذى بدورة يحتوى على 3 حقول هم (ID "AutoNumber" - UsrNm "Text 20" - PassWord "Text 20) .

يدخل المستخدم لشاشة Login لتسجيل بيانات الدخول اذا كانت صحيحه يسمح له البرنامج بالدخول للشاشة الرئيسية و اذا لم تكن البيانات صحيحه لا يسمح له, ايضا يمكن للمستخدم تعديل بيانات دخوله الى البرنامج بنفسه أو يكون Admin فقط له الحق فى ذلك على حسب حساسية البيانات المتعامل معها فى البرنامج و فى مثالنا هذا فإن المستخدم يقوم بتعديل بياناته بنفسه.

موضوع Registry يكمن فى نقطة واحده فقط فى البرنامج و هى (Remember me) أى ان الجهاز الذى تم الدخول من عليه سيحتفظ ببيانات الدخول حتى بعد اغلاقه و عند فتحه مره أخرى لن تكون هناك حاجه لتسجيل الدخول اذا قام المستخدم بوضع علامه فى مربع Remember Me و هذه الخاصيه كما أن لها مميزات فإن لها عيوب خطيره خصوصا اذا كان البرنامج يتم التعامل معه من على نفس الجهاز أو أن الجهاز يصل اليه أكثر من شخص .

حتى لا نطيل الكلام فى الموضوع و بعد أن تعرفنا على أساسيات و منطق و تصميم البرنامج فان البرنامج مرفوع Source Code على موقع MediaFire.com من خلال هذا الرابط .

أى سؤال عن المشروع من فضلك اترك تعليق هنا فى vb6access2003.blogspot.com او فى الجروب أعلى الصفحه .

اذا كنت تريد شرحا تفصيليا للعمل مع الريجيسترى ( من هنا )

Visual Basic 6.0 Lessons, Tricks, Tutorials and help links :

VB6 Popular Posts

Visual Basic Online Course - Excel 2003 Part 1

VB 6.0 Crystal Report With MS-Access 2003 - PassWord Problem

Visual Basic Online Course - Analog Clock in VB6