التعامل معRegistry في دلفي :

Share:

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


الضغط بزر الفأرة اليميني على أيقونة جهاز الكمبيوتر واختيار خصائص من القائمة 
اسم المستخدم يوجد داخل مسجل النظام تحت المفتاح
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion]
للتأكد من ذلك  . ( Regedit افتح البرنامج ) RegisteredOwner ومخزن في القيمة النصية
       ابدأ مشروعًا جديدًا وأضف زرين إلى النموذج و العنصر Edit1 
USES إلى القسم Registry للتعامل مع مسجل النظام عليك إضافة الوحدة
للقراءة من مسجل النظام اكتب التعليمات التالية في حدث الضغط على الزر الأول :






Var reg:tregistry ;
Begin
reg:= tregistry.Create ; // إنشاء المتحول وحجز مكان له في الذاكرة
try
reg.RootKey := HKEY_LOCAL_MACHINE ;// تحديد المفتاح الرئيسي
reg.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion',false ) ;
edit1.text := reg.ReadString('RegisteredOwner');// قراءة القيمة النصية المخزنة في الوسيط المذكور
reg.CloseKey ; // إغلاق المفتاح
Finally
reg.Free ; // تحرير الذاكرة بعد استخدام المتحول
end;
تقوم بفتح المفتاح المرر لها كوسيط أول وإذا لم يكن موجودًا فتقوم بإنشاء هذا المفتاح إذا كان OpenKey التعليمة
.True وسيطها الثاني
للكتابة إلى مسجل النظام اكتب التعليمات التالية في حدث الضغط على الزر الثاني :

Var reg:tregistry ;
Begin
reg:= tregistry.Create ;// إنشاء المتحول وحجز مكان له في الذاكرة
try
reg.RootKey := HKEY_LOCAL_MACHINE ;// تحديد المفتاح الرئيسي
reg.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion',false ) ;
http://www.alshater.net لغة البرمجة دلفي
153
reg.WriteString('RegisteredOwner',edit1.Text ); // كتابة القيمة المدخلة في عنصر التحرير إلى اسم
القيمة المحددة
reg.CloseKey ; // إغلاق المفتاح
Finally
reg.Free ; // تحرير الذاكرة بعد استخدام المتحول
end;