رجیستری بانک اطلاعاتی یا پایگاه داده ای است با ساختار درختواره که برای ذخیره تنتظیمات و خصوصیات نسخه های 32 بیتی ویندوز شامل ویندوز های 95 , 98 , me , 2000 , NT و XP استفاده میشود . رجیستری شامل اطلاعات و تنظیمات مربوط به سخت افزار , نرم افزار , کاربران و ظاهر کامپیوتر شماست . هر وقت که شما تغییری در کنترل پنل تان می دهید یا نرم افزاری نصب می کنید و یا قسمت مربوط به فایل های سیستمی رادستکاری می کنید , این تغییرات در قسمت رجیستری ثبت و ذخیره می شود . فایل هایی که قسمت رجیستری را تشکیل می دهندبسته به نوع ویندوز متفاوتند . در ویندوز 95 و 98 دو فایل مخفی در دایرکتوری ویندوز وجود دارند که USER.DAT و SYSTEM.DATنامیده می شود . در ویندوز me علاوه بر این دو فایل , فایل دیگری نیز بنام CLASSES.DATوجود دارد . اما در ویندوز 2000 و XP فایلهای مربوط به رجیستری بطور جداگانه در دایرکتوری %SystemRoot%\System32\Configقرار دارند . این فایل ها بطور مستقیم قابل ویرایش نیستند . به این معنی که شما نمی توانید مثلا در ویندوز 98 فایل USER.DAT را باز کنید و آنرا تغییر بدهید بلکه شما باید برای انجام تغییرات از ابزاری مانند Registry Editor استفاده کنید .این ابزار در خود ویندوز وجود دارد و هنگام نصب ویندوز نصب می شود.
کاربردهای رجیستری
1- تغییرات دلخواه در قسمتهای مختلف ویندوز (که در حالت عادی قابل تغییر نیستند)
2- بالا بردن سرعت ویندوز
3- بهینه سازی ارتباطات سخت افزاری
4- بالا بردن امنیت ویندوز
5- و حتی بیشترین کاربرد رو در هک و ... دارد
ساختار رجیستری
رجیستری دارای یک ساختار مرتبهای (hierachal) میباشد ؛هر چند که ساختمان آن پیچیده به نظر میآید،اما همانند ساختار پوشههای روی هارد دیسک شما میباشد.شکل ظاهری Registry Editor ، مشابه Windows Explorer بوده و در آن ، ساختمان رجیستری به صورت یک ساختار درختی نمایش داده میشود. در ساختار رجیستری ،هر شاخه اصلی (که با آکن پوشه ویندوز نمایش داده شده است و کلمه اول آن HKEY میباشد) یکHive نامیده میشود. Hiveها شامل Key ها هستند .هر Key(کلید) خود میتواند شامل زیر کلیدهای دیگر باشد.کلید ممکن است به زیر کلیدهای دیگر رجوع کنند و یا به یک مقدار ( Value) اشاره کنند.مقادیر شامل اطلاعات واقعی ذخیره شده در رجیستری هستند . پنج نوع مقدار اصلی وجود دارد که عبارتند از :
Expandable-String , Multi-String , String , Binary ,DWORD
انواع دادههای رجیستری
هر مقدار رجیستری به صورت یکی از پنج نوع داده اصلی (که قبلا اشاره شد) ذخیره میشود. این پنج نوع عبارتند از :
(String Value) REG_SZ
این نوع، یک رشته استاندارد است که برای نمایش مقادیر متنی قابل خواندن به کار میرود ."SZ" مخفف "String Zero" میباشد.
(Binary Value) REG_BINARY
این نوع، مقادیر را بصورت دادههای باینری خام ذخیره میکند .اکثر اطلاعات مربوط به اجزای سخت افزاری بصورت دادههای باینری هستند و میتوانند در یک ویرایشگر بصورت هگزادسیمال نمایش داده شوند.
(DWORD Value) REG_ DWORD
این نوع،دادهها را بایک عدد چهار بایتی یعنی محدوده 0 تا 4249672295 نمایش میدهد و معمولا برای مقادیر بولی بکار میروند.مثلا 0 برای غیر فعال و 1 برای فعال و... .بسیاری از پارامترها برای راهاندازهای ابزارهاو سرویسها ،از این نوعاندو میتوانند در Regedit32 به صورت باینری ،هگزادسیمال و دسیمال ودر Regedit بصورت هگزادسیمال و دسیمال نشان داده شوند. DWORDمخفف جمله "Double Word " میباشد.
(Expandable String Value) REG_EXPAND_SZ
این نوع، یک رشته دادهای قایل رشد است که یک رشته ، شامل یک متغییر میباشدکه با فراخوانی توسط برنامههای کاربردی ،جایگزین میشود.برای مثال مقدار "%SystemRoot%" با مکان واقعی پوشهای که شامل سیستم فایلی NT میباشد جایگزین میشود.(این نوع تنها در ویرایشگر رجیستری مربوط به ویندوز XP و یا یک نسخه پیشرفته ویرایشگر رجیستری نظیر REGEDT32 قابل دسترس است ).
(Multi String Value) REG_MULTY_SZ
این نوع ، یک رشته چند گانه است که جهت نمایش مقادیری شامل لیستها یا مقادیر چندگانهای بوده و هر کدام توسط یک کارکتر NULL از هم جدا شدهاند،به کار میرود.(این مقدار در ویندوز XP و یا هنگام استفاده از یک ویرایشگر رجیستری پیشرفته مثل REGEDT32، قابل دستیابی است).
انواع دیگر دادههای رجیستری که در ویرایشگرهای استاندارد رجیستری قابل دستیابی نیستند ،عبارتند از :
· REG_WORD_LITTLE_ENDIAN : یک عدد 32 بیتی با قالب Little_Endian
· REG_WORD_BIG_ENDIAN : یک عدد 32 بیتی با قالب Big_Endian
· REG_NONE : یک نوع مقدار تعریف نشده.
· REG_QWORD :یک عدد 64 بیتی .
· REG_QWORD_LITTLE_ENDIAN : یک عدد 64 بیتی با قالب Little_Endian
· REG_RESOURCE_LIST : یک لیست منابع از راهاندازهای سخت افزاری .
· REG_LINK : یک ارتباط سمبلیک Unicode که به طور داخلی استفاده میشود.برنامههای کاربردی از این نوع استفاده نمیکنند.