Skip to main content

رجیستری در ویندوز یک بخش مهم و حیاتی است. اهمیت این بخش به دلیل این است که ویندوز و نرم‌افزار های زیادی تنظیمات خود را در رجیستری ذخیره می‌کنند؛ تنظیماتی از قبیل فرمت فایل ها، رنگ بندی و تصویر پس‌زمینه، و یا تعیین برنامه‌ای که بعد از ورود کاربر اجرا شود (شل یا پوسته) همگی این ها و حتی اطلاعات حساس‌تر در رجیستری ذخیره شده‌اند.

امروز می‌خواهیم در مورد این بخش مهم در سیستم‌عامل ویندوز صحبت کنیم پس با وبسایت کرم‌های کامپیوتر همراه باشید.

رجیستری چطور کار می‌کند؟

این موضوع می‌تواند شروع خوبی برای مطلب ما باشد. رجیستری ویندوز درواقع یک دیتابیس درختی (Hierarchical) است. از ویژگی های مهم رجیستری این است که داده ها موقتی نستند؛ یعنی تمام اطلاعات بعد از ریستارت باید باقی بمانند. پس بدیهی است که داده ها باید بر روی هارد (به قول اهل فن ها حافظه جانبی) ذخیره شوند. سیستم عامل ویندوز این داده ها را در هارد ذخیره و در هر راه‌اندازی آن ها را در حافظه اصلی سیستم یا همان RAM ذخیره می‌کند. بنابراین دسترسی به Registry بسیار سریع خواهد بود (در حالت ایده‌آل).

رجیستری ویندوز به طور کل از ۵ بخش به نام Hive (به معنی کندو) تشکیل شده است. هایو ها یک دسته‌بندی برای کلید ها و مقدار ها هستند. این کندو ها به ترتیب زیر هستند:

  • HKEY_CLASSES_ROOT (HKCR): حاوی اطلاعات کلاس، ارتباط بین برنامه ها و اطلاعات فرمت های فایل است
  • HKEY_CURRENT_USER (HKCU): اطلاعات مربوط به کاربر فعلی
  • HKEY_LOCAL_MACHINE (HKLM): اطلاعاتی که بین کاربر ها مشترک هستند و مربوط به سیستم فعلی است
  • HKEY_USERS (HKU): به اذای هر کاربر در سیستم یک شاخه جدید (کلید) در این هایو ایجاد می‌شود
  • HKEY_CURRENT_CONFIG (HKCC): تنظیمات مربوط به ویندوز

همانطور که می‌بینید در لیست بالا جلوی نام هر کندو در پرانتز نام مختصر آن نیز نوشته شده که گاهاً در آدرس دهی از آن ها استفاده می‌شود. البته برخی از hive ها صرفا جهت حفظ سازگاری هستند و در واقع بیشتر شبیه یک میانبر به یک کلید دیگر عمل می‌کنند. برای مثال HKCR در واقع یک ادغام از دو کلید در آدرس های HKEY_LOCAL_MACHINE\Software\Classes و HKEY_CURRENT_USER\Software\Classes است.

برنامه ویرایش رجیستری

هرچند که برنامه هایی برای این کار نوشته شده‌اند اما در بسیاری از مواقع نرم‌افزار Regedit خود ویندوز کاملا کافی خواهد بود و نیازی به استفاده از نرم‌افزار های دیگر نیست. برای اجرای اون هم می‌تونید در منوی استارت به دنبال آن بگردید! یا آن که کلید های R+win را بزنید و در پنجره run نام این برنامه را وارد کنید تا اجرا شود.

نمایی از برنامه regedit و لیست Hives یا کندو ها

البته علاوه بر این یک رابط خط فرمان به نام reg نیز هست که می‌توان از آن نیز استفاده کرد و به دلیل خط فرمانی بودن پیچیدگی بیشتری دارد.

درسترسی به Hives (کندو ها)

همانطور که پیش‌تر گفته شد این هایو ها در هارد سیستم ذخیره و نگهداری می‌شوند. به همین خاطر رجیستری ویندوز با دسترسی به این فایل ها می‌تواند بدون وارد شدن به آن نیز تغییر کند! این نکته می‌تواند موجب نقض امنیت ویندوز شود.

تمامی این فایل ها در آدرس Windows\System32\Config هستند:

Supporting filesRegistery Hives
Software,Software.log and Software.savHKEY_LOCAL_MACHINE\Software
System, System.alt, System.log, and System.savHKEY_LOCAL_MACHINE\System
Sam, Sam.log, and Sam.savHKEY_LOCAL_MACHINE\SAM
Security, Security.log, and Security.savHKEY_LOCAL_MACHINE\Security
Default, Default.log, and Default.savHKEY_USERS\DEFAULT
System, System.alt, System.log, System.sav, Ntuser.dat, and Ntuser.dat.logHKEY_CURRENT_CONFIG
فایل هایی که برای دسترسی به یک کندو موجود هستند

کلید ها و مقدار ها

همانطور که گفته شد رجیستری یک نوع دیتابیس درختی است. می‌توان آن را به ساختار پوشه ها و فایل ها تشبیه کرد. همانطور که هر پوشه می‌تواند شامل چند پوشه و چند فایل دیگر باشد هر کلید در رجیستری نیز می‌تواند شامل چند کلید و مقدار دیگر باشد.

در سمت چپ ساختار درختی کلید ها و در سمت راست مقدار ها هستند

نکته دیگر این است که هر کلید همواره دارای یک مقدار پیشفرض به نام (Default) و از نوع REG_SZ است. مقادیر می‌توانند از انواع مختلفی باشند؛ برخی از رایج ترین انواع این ها هستند:

  • REG_BINARY: داده های باینری
  • REG_DWORD: یک عدد ۳۲ بیت
  • REG_EXPAND_SZ: یک متن که می‌تواند شامل متغیر های Environment هم باشد (مثل %path%)
  • REG_SZ: یک رشته متن ساده

در مطالب بعدی به شما کلید ها و مقدار های جالبی را در ویندوز معرفی می‌کنیم که با تغییر هر کدام می‌توانید در ویندوز تغییراتی ایجاد کنید و گاهاً حتی امکانات جدیدی به آن اضافه کنید!