عبد الله الساهر
Jan 2005, 04:44 AM
ماهو الرجستري ؟
هو قاعده بيانات تستخدم لتخزين الاعدادات و الخيارات لبرامج ميكروسوفت من عيار 32 بت و يحتوي على المعلومات الازمه من اعدادات عتاد الجهاز Hardware settings , برامج Software , مستخدمين Users ..ألخ و اي تغيير في خصائص الكنترول بنل اوالملفات و ترابطها File Associationsاو تركيب برنامج جديدNew Software...راح ينعكس التغير اللي صار بالنظام الى تسجيل بياني في الرجستري . الملفات الفعليه او الحقيقيه المسئوله عن الرجستري و تكوينه ..تكون بالعاده مخزنه في مواقع مختلفه على حسب اصدر الوندوز اللي عندك , وندوز 95 & 98 فيها ملفين تحت مجلد الوندوز user.dat و system.dat , و وندوز ME تزيد عليهم بي ملف اخرى اسمه classes.dat بينما في وندوز NT/2000 موجوده بختلاف تحت %SystemRoot%\System32\Con fig directory .
هيكل الرجستري Structure of the Registryهيكل الرجستري مرتب في مراتب متسلسله يسمونها hierarchal structure ...للنظره الاولى تبدو معقده شوي ..لكن ما تدري الا وانت مكتشف ان اسهل منها مافيه ...و تشبه تنظيم و استعراض المجلدات في القرص الصلب directory structure.
كل فرع رئيسي في الرجستري له ايقونه بشكل مجلد folder icon و يسمى Hive .. و كل فرع رئيسي او Hive فيه مفاتيح داخل مفاتيح Keys & sub-Keys و هكذا ..و هالمفاتيح فيها values بيانات تحوي القيمه او المعلومه الاساسيه المخزنه في الرجستري . يوجد بالرجستري سته فروع او Hives اساسيه و كل واحد منها فيه معلومات معينه محدده مخزنه بالفرع .
HKEY_CLASSES_ROOTو هذا الفرع فيه كل معلومات و روابط الملفات و اتحادها mappings and association و معلومات خصائص ال drag-and-drop او الواجهه الرسوميه في عملية مسك و افلات الملفات , و الــ Object Linking and Embedding (OLE) ,,,الخ .
HKEY_CURRENT_USERو هذا الفرع مرتبط بشكل اساسي الى فرع HKEY_USERS للمستخدم الفعلي و الحالي للجهاز . , و فيه معلومات الدخول الجهاز logon names و خصائص سطح المكتب و قائمه بدا التشغيل .
HKEY_LOCAL_MACHINEو هذا الفرع فيه مواصفات و خصائص الجهاز من هاردوير hardware , برامج Software..الخ . , و يستخدمه كل مستخدم logon user على الجهاز .
HKEY_USERSفيه معلومات و خصائص مستقله individual preferences لكل مستخدم للجهاز...و كل مستخدم معرف برقم او مفتاح SID تحت الفرع الرئيسي .
HKEY_CURRENT_CONFIGو هذا الفرع مرتبط في HKEY_LOCAL_MACHINE من اجل تشغيل الاعدادات الحاليه للهاردوير بالجهاز hardware .
HKEY_DYN_DATAهذا الفرع ايظا مرتبط في HKEY_LOCAL_MACHINE لتشغيل و استخدام مميزات ال plug & play windows , و هذا الفرع يعتبر Dynamic ديناميكي و يغير نفسه كل ما تغير شي في هاردوير الجهاز او شي انشل منه ..الخ.
انواع البيانات في الرجستري Value Typesيوجد ثلاثه انواع في الرجستري تمثل المجرى الاساسي للفرع او ال Hive و هي : String, Binary, DWORD ....و كل نوع ممكن انه يحمل خمسة انواع من البيانات : REG_BINARYو هذا النوع يخزن البيانات كا binary data كا ارقام و اغلب خصائص و ضوابط عناصر سوقات التشغيل hardware component تستخدم النوع هذا من البيانات . , تقدر تشوف المعلومات المكتوبه عن طريق استخدام اي برنامج hexadecimal
REG_DWORDهذا النوع يخزن معلومه من نوع ارقام 4 byte و بالعاده استخدمها يكون منطقي Boolean يعني مثلا كا الرقم "1" enabled و رقم "0" Disabled . ايظا بالاظافه الى سواقات التشغيل دايم تسجل معايير او parameters للهاردوير بالقيمه هذي .
REG_EXPAND_SZو هذا النوع بيانات strings قابله للتمدد expandable و فيها مخازن مؤقته variables قابله للتغير و الاستجابه عندما يتم طلبها من برنامج . .. مثال : القيمه او الstrings هذي "%SystemRoot%" عندما يتم طلبها من برنامج راح تعيد قيمه او نتيجه هي c:\windows\
REG_MULTI_SZو هذا النوع نفس النوع السابق بس يزيد عليه انه متعدد لتمثيل قيمه.. تحمل قائمه من القيم list of multiple values و كل قيمه مدخله فيه مفصوله عن اللي غيرها بي Null Character
REG_SZهذا النوع الاعتيادي للـ strings و عاده ما يمثل او يعكس بيانات بشريه تفاعليه قابله للقراءه .
و ايظا هناك انواع اخرى غير متوفره او لا يمكن الوصول اليها و مشاهدتها من ال regedit و تحمل بيانات من نوع REG_DWORD_LITTLE_ENDIAN عباره عن رقم 32 بت صغير في هيئه LITTLE_ENDIAN REG_DWORD_BIG_ENDIAN عباره عن رقم 32 بت كبير في هيئه BIG_ENDIAN REG_QWORD عباره عن رقم بيانات من عيار 64 بت REG_QWORD_LITTLE_ENDIAN عباره عن رقم بيانات من عيار 64 بت في هيئه LITTLE_ENDIAN REG_RESOURCE_LIST و فيها مصادر و قوائم سواقات التشغيل device driver resource REG_LINK وهو ارتباط احادي التشفير Unicode Format . يستخدمه الرجستري استخدام داخلي . ولا ترتبط البرامج او تستخدم النوع هذا .
تحرير الرجستري Registry editingقبل ما نبدا في التعبث في الرجستري لازم تكون تعرف تسوي تصدير و استيراد للمفاتيح و عمل نسخ احتياطيه لها ,,, و ذلك عن طريق تفعيل او تنشيط الفرع و الذهاب الى registry و اختيار export
اوكي الان راح نشرح عمليتين في التغير او التعديل في الرجستري راح نسوي OLE Container لكائن الانترنت اكسبلورر والهدف استيعاب هذه التقنيه ومدى فاعليتها في انشاء كائن جديد بستخدام عناصر و ضوابط برامج اخرى وايظا راح نشوف عمليه تغير قيمه او value string في الرجستري و انعكاسها على اداء الوندوز من تحسينات ( manipulate Registry) .
تخصيص الرجستري ( manipulate Registry)
و هي طريقه سهله و تحتاج فقط لمعرفة المفاتيح و الفروع اللازمه لعمل هذا التعديل :
1- تغير محرك البحث الافتراضي للانترنت اكسبلورر اذهب الى HKEY_CURRENT_USER\Softwar e\Microsoft\Internet Explorer\Main و غير القيمه المكتوبه في Search Page
2- تغير عنوان الاكسبلورر اذهب الى HKEY_LOCAL_MACHINE\SOFTWA RE\Microsoft\Internet Explorer\Main و غير القيمه المكتوبه تحت Window Title
3- تحديد الكاش فايلز Lengthen Cache files HKEY_LOCAL_MACHINE\Softwa re\Microsoft\Windows\Curr entVersion\Internet Settings\Cache و غير القيمه المكتوبه تحت CleanupInterval و FreshnessInterval الى سبعه ايام (value=80 3a 09 00)
4- لحل مشكله عدم دعم اسامي الملفات الطويله كا c:\docume~1.doc اذهب الى KEY_LOCAL_MACHINE\System\ CurrentControlSet\Control \FileSystem و خل قيمة NameNumericTail على 0
5- الوندوز باسورد او logon مهم خصوصا اذا كان فيه اكثر من مستخدم للوندوز و عشان تجبر كل مستخدم ان يسوي logon وتعطل زر كانسل cancel اذهب الى HKEY_LOCAL_MACHINE\Networ k\Logon و اكتب MustBeValidated و ادخل القيمه 1
هو قاعده بيانات تستخدم لتخزين الاعدادات و الخيارات لبرامج ميكروسوفت من عيار 32 بت و يحتوي على المعلومات الازمه من اعدادات عتاد الجهاز Hardware settings , برامج Software , مستخدمين Users ..ألخ و اي تغيير في خصائص الكنترول بنل اوالملفات و ترابطها File Associationsاو تركيب برنامج جديدNew Software...راح ينعكس التغير اللي صار بالنظام الى تسجيل بياني في الرجستري . الملفات الفعليه او الحقيقيه المسئوله عن الرجستري و تكوينه ..تكون بالعاده مخزنه في مواقع مختلفه على حسب اصدر الوندوز اللي عندك , وندوز 95 & 98 فيها ملفين تحت مجلد الوندوز user.dat و system.dat , و وندوز ME تزيد عليهم بي ملف اخرى اسمه classes.dat بينما في وندوز NT/2000 موجوده بختلاف تحت %SystemRoot%\System32\Con fig directory .
هيكل الرجستري Structure of the Registryهيكل الرجستري مرتب في مراتب متسلسله يسمونها hierarchal structure ...للنظره الاولى تبدو معقده شوي ..لكن ما تدري الا وانت مكتشف ان اسهل منها مافيه ...و تشبه تنظيم و استعراض المجلدات في القرص الصلب directory structure.
كل فرع رئيسي في الرجستري له ايقونه بشكل مجلد folder icon و يسمى Hive .. و كل فرع رئيسي او Hive فيه مفاتيح داخل مفاتيح Keys & sub-Keys و هكذا ..و هالمفاتيح فيها values بيانات تحوي القيمه او المعلومه الاساسيه المخزنه في الرجستري . يوجد بالرجستري سته فروع او Hives اساسيه و كل واحد منها فيه معلومات معينه محدده مخزنه بالفرع .
HKEY_CLASSES_ROOTو هذا الفرع فيه كل معلومات و روابط الملفات و اتحادها mappings and association و معلومات خصائص ال drag-and-drop او الواجهه الرسوميه في عملية مسك و افلات الملفات , و الــ Object Linking and Embedding (OLE) ,,,الخ .
HKEY_CURRENT_USERو هذا الفرع مرتبط بشكل اساسي الى فرع HKEY_USERS للمستخدم الفعلي و الحالي للجهاز . , و فيه معلومات الدخول الجهاز logon names و خصائص سطح المكتب و قائمه بدا التشغيل .
HKEY_LOCAL_MACHINEو هذا الفرع فيه مواصفات و خصائص الجهاز من هاردوير hardware , برامج Software..الخ . , و يستخدمه كل مستخدم logon user على الجهاز .
HKEY_USERSفيه معلومات و خصائص مستقله individual preferences لكل مستخدم للجهاز...و كل مستخدم معرف برقم او مفتاح SID تحت الفرع الرئيسي .
HKEY_CURRENT_CONFIGو هذا الفرع مرتبط في HKEY_LOCAL_MACHINE من اجل تشغيل الاعدادات الحاليه للهاردوير بالجهاز hardware .
HKEY_DYN_DATAهذا الفرع ايظا مرتبط في HKEY_LOCAL_MACHINE لتشغيل و استخدام مميزات ال plug & play windows , و هذا الفرع يعتبر Dynamic ديناميكي و يغير نفسه كل ما تغير شي في هاردوير الجهاز او شي انشل منه ..الخ.
انواع البيانات في الرجستري Value Typesيوجد ثلاثه انواع في الرجستري تمثل المجرى الاساسي للفرع او ال Hive و هي : String, Binary, DWORD ....و كل نوع ممكن انه يحمل خمسة انواع من البيانات : REG_BINARYو هذا النوع يخزن البيانات كا binary data كا ارقام و اغلب خصائص و ضوابط عناصر سوقات التشغيل hardware component تستخدم النوع هذا من البيانات . , تقدر تشوف المعلومات المكتوبه عن طريق استخدام اي برنامج hexadecimal
REG_DWORDهذا النوع يخزن معلومه من نوع ارقام 4 byte و بالعاده استخدمها يكون منطقي Boolean يعني مثلا كا الرقم "1" enabled و رقم "0" Disabled . ايظا بالاظافه الى سواقات التشغيل دايم تسجل معايير او parameters للهاردوير بالقيمه هذي .
REG_EXPAND_SZو هذا النوع بيانات strings قابله للتمدد expandable و فيها مخازن مؤقته variables قابله للتغير و الاستجابه عندما يتم طلبها من برنامج . .. مثال : القيمه او الstrings هذي "%SystemRoot%" عندما يتم طلبها من برنامج راح تعيد قيمه او نتيجه هي c:\windows\
REG_MULTI_SZو هذا النوع نفس النوع السابق بس يزيد عليه انه متعدد لتمثيل قيمه.. تحمل قائمه من القيم list of multiple values و كل قيمه مدخله فيه مفصوله عن اللي غيرها بي Null Character
REG_SZهذا النوع الاعتيادي للـ strings و عاده ما يمثل او يعكس بيانات بشريه تفاعليه قابله للقراءه .
و ايظا هناك انواع اخرى غير متوفره او لا يمكن الوصول اليها و مشاهدتها من ال regedit و تحمل بيانات من نوع REG_DWORD_LITTLE_ENDIAN عباره عن رقم 32 بت صغير في هيئه LITTLE_ENDIAN REG_DWORD_BIG_ENDIAN عباره عن رقم 32 بت كبير في هيئه BIG_ENDIAN REG_QWORD عباره عن رقم بيانات من عيار 64 بت REG_QWORD_LITTLE_ENDIAN عباره عن رقم بيانات من عيار 64 بت في هيئه LITTLE_ENDIAN REG_RESOURCE_LIST و فيها مصادر و قوائم سواقات التشغيل device driver resource REG_LINK وهو ارتباط احادي التشفير Unicode Format . يستخدمه الرجستري استخدام داخلي . ولا ترتبط البرامج او تستخدم النوع هذا .
تحرير الرجستري Registry editingقبل ما نبدا في التعبث في الرجستري لازم تكون تعرف تسوي تصدير و استيراد للمفاتيح و عمل نسخ احتياطيه لها ,,, و ذلك عن طريق تفعيل او تنشيط الفرع و الذهاب الى registry و اختيار export
اوكي الان راح نشرح عمليتين في التغير او التعديل في الرجستري راح نسوي OLE Container لكائن الانترنت اكسبلورر والهدف استيعاب هذه التقنيه ومدى فاعليتها في انشاء كائن جديد بستخدام عناصر و ضوابط برامج اخرى وايظا راح نشوف عمليه تغير قيمه او value string في الرجستري و انعكاسها على اداء الوندوز من تحسينات ( manipulate Registry) .
تخصيص الرجستري ( manipulate Registry)
و هي طريقه سهله و تحتاج فقط لمعرفة المفاتيح و الفروع اللازمه لعمل هذا التعديل :
1- تغير محرك البحث الافتراضي للانترنت اكسبلورر اذهب الى HKEY_CURRENT_USER\Softwar e\Microsoft\Internet Explorer\Main و غير القيمه المكتوبه في Search Page
2- تغير عنوان الاكسبلورر اذهب الى HKEY_LOCAL_MACHINE\SOFTWA RE\Microsoft\Internet Explorer\Main و غير القيمه المكتوبه تحت Window Title
3- تحديد الكاش فايلز Lengthen Cache files HKEY_LOCAL_MACHINE\Softwa re\Microsoft\Windows\Curr entVersion\Internet Settings\Cache و غير القيمه المكتوبه تحت CleanupInterval و FreshnessInterval الى سبعه ايام (value=80 3a 09 00)
4- لحل مشكله عدم دعم اسامي الملفات الطويله كا c:\docume~1.doc اذهب الى KEY_LOCAL_MACHINE\System\ CurrentControlSet\Control \FileSystem و خل قيمة NameNumericTail على 0
5- الوندوز باسورد او logon مهم خصوصا اذا كان فيه اكثر من مستخدم للوندوز و عشان تجبر كل مستخدم ان يسوي logon وتعطل زر كانسل cancel اذهب الى HKEY_LOCAL_MACHINE\Networ k\Logon و اكتب MustBeValidated و ادخل القيمه 1