هر آنچه باید از رجیستری ویندوز و ساختن کلیدها در آن بدانید

شروع موضوع توسط MoshaverFa ‏2/7/15 در انجمن ترفند های کامپیوتر و اینترنت

  1. MoshaverFa

    MoshaverFa Moderator عضو کادر مدیریت

    ارسال ها:
    961
    تشکر شده:
    509
    امتیاز دستاورد:
    63
    رجیستری ویندوز، یکی از اسرار‌آمیز‌ترین نقاط این سیستم عامل است؛ جایی که کاربران را قادر می‌سازد ‌تقریبا همه سیستم‌عامل را تحت مدیریت و تغییر و تحول قرار دهند؛ هر چند از آغاز کار سیستم‌عامل رجیستری در پشت صحنه فعال است، بسیاری از کاربران اطلاعات اندکی از آن دارند. پس بگذارید شما را همانند کاربران حرفه‌ای با این نقطه اسرار‌آمیز سیستم عامل ویندوز آشنا سازیم.



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



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



    awww.beytoote.com_images_stories_computer_co4735.jpg


    اجزای سازنده رجیستری ویندوز
    رجیستری ویندوز از سه جزء اساسی تشکیل شده است؛ کلید‌های سطح اصلی یا Root، کلید‌ها و مقادیر یا Value. کلیدهای سطح روت؛ جایی ‌که همه کلید‌ها را میزبانی می‌کند و کلید‌ها، هر یک مقادیر یا Value‌های مخصوص به خود را دارند. برای درک این هر سه می‌توانید به درایو، پوشه و فایل فکر کنید.



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



    awww.beytoote.com_images_stories_computer_co4734.jpg



    HKEY_CLASSES_ROOT (HKCR): این کلید سطح روت از سوی ویندوز برای مدیریت Object Linking and Embedding یا‌‌ همان OLE که برای برنامه‌نویسان کاملا آشناست و همچنین برای ارتباط فایل‌ها با برنامه‌ها استفاده می‌شود. در این سطح ویندوز تمامی فایل‌های شما را با برنامه‌های مرتبط با آن‌ها پیوند می‌دهد. در نتیجه شما قادر به باز کردن فایل‌ها و تعامل با آن‌ها هستید.



    HKEY_CURRENT_USER (HKCU): در این بخش، همه ‌اطلاعات مربوط به تنظیمات و پیکر‌بندی‌های در ارتباط با کاربر فعلی ذخیره می‌شود؛ یعنی کاربری که اکنون در ویندوز Log in است. نه تنها سیستم عامل، بلکه سایر برنامه‌ها نیز اطلاعات مربوط به کاربر را در این قسمت از رجیستری ذخیره می‌کنند.



    HKEY_LOCAL_MACHINE(HKLM): این بخش شامل اطلاعات مربوط به همه تنظیمات سخت‌افزاری و نرم‌افزاری و مانند آن، بدون در نظر گرفتن کاربر یا User است. از آنجا‌ که این قسمت اطلاعات جامع سیستم را در خود دارد، یکی از قسمت‌هایی است که بسیار مورد ارجاع ویندوز قرار می‌گیرد.



    HKEY_USERS(HKU): همان گونه که از نام این کلید روت می‌توان دریافت، این بخش مربوط به ذخیره اطلاعات همه کاربران سیستم عامل، اعم از کاربر فعلی و سایر کاربران است. تفاوت آن با HKCU در این است که اطلاعات همه کاربران و نه فقط کاربر فعلی Log in شده را در خود دارد.



    HKEY_CURRENT_CONFIG(HKCC): این کلید روت، یک لینک به تنظیمات Current Hardware Profile در HKLM است و در نتیجه می‌توان آن را یک کلید روت کاذب دانست.



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



    awww.beytoote.com_images_stories_computer_co4733.jpg



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



    Binary Value: همان گونه که از نام آن بر‌می‌آید، این مقادیر تنها از داده‌های باینری (صفر و یک) تشکیل شده‌اند و معمولا برای خاموش یا روشن کردن (فعال و غیر فعال کردن) تنظیمات به کار می‌روند.



    DWORD Value (32-bit): این مقادیر دقیقا مشابه مقادیر باینری بوده، ولی در عین حال، قادر به ذخیره مقادیری از نوع Integer در دامنه ۳۲ بیت هستند. این مقادیر برای کار با سیستم‌های ۳۲ بیتی طراحی شده‌اند؛ هر چند می‌توان از آن‌ها برای سیستم‌های ۶۴ بیتی در حالت Backward نیز استفاده کرد.



    QWORD Value (64-bit): دقیقا مشابه DWORD بوده اما محدوده ذخیره‌سازی داده‌های Integer در آن‌ها ۶۴ بیت است‌ و مسلما برای کار با سیستم‌های ۶۴ بیتی طراحی شده‌اند.



    Multi-String Value: اگر مقادیر String برای ذخیره یک خط اطلاعات متنی بودند، این نوع مقادیر قادر به ذخیره چند خط اطلاعات متنی هستند.



    Expandable String Value: دقیقا مشابه مقادیر String بوده، ولی قادر به ذخیره متغیرهای محیطی نیز هستند. برنامه نویسان با این متغیرها به خوبی آشنایی دارند.



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



    awww.beytoote.com_images_stories_computer_co4732.jpg



    برای ایجاد یک کلید جدید، نخست باید هدف از ایجاد این کلید و‌ جایگاه مربوط به آن در کلیدهای روت اصلی را بدانید. بعد از آن کافی است ‌روی کلید روت اصلی مورد نظر کلیک راست کرده و گزینه New و سپس گزینه Key را انتخاب کنید. در این حالت کلید جدیدی ایجاد می‌شود که شبیه ‌یک پوشه بوده و نامی نظیر New Key # دارد. این نام به سادگی قابل تغییر است.



    awww.beytoote.com_images_stories_computer_co4731.jpg



    پس از ایجاد کلید جدید، برای ایجاد مقدار یا مقادیر مورد نیاز آن، بر روی پنل سمت راست کلیک راست کنید و مقدار مورد نظر را ـ بر اساس هدف و نیاز خود ـ انتخاب کنید. بعد از ایجاد مقدار، نام آن را مشخص کنید. توجه داشته باشید ‌اگر در پنل سمت راست به جای مقدار، گزینه Key را انتخاب کنید، ویندوز‌ خودکار یک Sub-Key را برای کلید فعلی ایجاد می‌کند.



    awww.beytoote.com_images_stories_computer_co4730.jpg



    وقتی مقدار جدید را ایجاد و نام‌گذاری کردید، باید داده مربوط به آن را نیز وارد کنید. بر روی مقدار ایجاد شده دو بار کلیک ‌و در قسمت Value Data داده مورد نظر را وارد کید. این داده بستگی به هدف شما و یا تنظیمات مورد نظر دارد.



    awww.beytoote.com_images_stories_computer_co4729.jpg



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



    اما درک کلیتی از کار رجیستری، به هر کاربر‌ این امکان را می‌دهد که در صورت نیاز و با کمی اطلاعات حاشیه‌ای و تکمیلی، بتواند مشکلات یا خطاهای ویندوز را بر‌طرف کرده یا خود اقدام به ایجاد تغییرات و تنظیمات جدید در سیستم عامل کند.