• ¡Welcome to Square Theme!
  • This news are in header template.
  • Please ignore this message.
مهمان عزیز خوش‌آمدید. ورود عضــویت


امتیاز موضوع:
  • 10 رای - 2.8 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
Title: دلفی و رجیستری
حالت خطی
#2
شما برای کار با رجیستری در دلفی نیاز به تعریف و نوشتن هیچ کلاس و متد و آبجکت ندارید شرکت برای کار با رجیستر یه یونیت با همین نام Registry ارائه داده است برای کار با رجیستر شامل کلاس TRegistry که دارای روال ها و تابع های خاصی مثل

CreateKey یا WriteString یا DeleteKey یا MoveKey یا ReadFloat و....میباشد. نحو اصلی کار با رجیستری و ثبت کردن مقدار ایجاد یک کلید و.... به این صورت می باشد که :

ابتدا یونیت رجیستری رو به لیست Uses یونیتمون اضافه می کنیم به شکل زیر :
کد:
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,Registry;
متغیر باید از نوع کلاس TRegistry تعریف کنیم تا بتوانیم از توابع آن ها استفاده کنیم. به شکل زیر
کد:
Var
B:TRegistry;
سپس باید یک نوع از کلاس را بوجود بیاوریم که طبق معمول باید از constructorایجاد کنیم مربوط به اکثر کلاس ها استفاده کنیم به شکل زیر
کد:
b:=TRegistry.Create;
برای کار با رجیستری باید به یکی از کلیدهای زیر اشاره کنیم که عبارتند از :
کد پی‌اچ‌پی:
HKEY_CLASSES_ROOT
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS
HKEY_PERFORMANCE_DATA
HKEY_CURRENT_CONFIG
HKEY_DYN_DATA 
برای این که یکی از این مقدار ها را انتخاب کنیم باید از پراپرتی RootKey به شکل زیر استفاده کنید :

B.RootKey:=HKEY_LOCAL_MACHINE;

سپس باید آدرس مربوط به کلیدی که می خواهیم در آن اعمال انجام دهیم رو با استفاده از تابع OpenKey مشخص کنیم به شکل زیر :

B.OpenKey(آدرس کلید مربوطه , اجازه بوجود آوردن کلید )

در مورد آدرس شما باید آدرس کلید مربوطه رو بدونkey root آن تایپ کنید و به صورت یک string در مورد اجازه بوجود آوردن که با یک مقدارFalse یا True مقداردهی میشود شما می توانید با set کردن آن به صورت True به آن اجازه بدهید تا یک کلید با آدرس که شما تایپک کردید بوجود بیاورد البته به شما یشنهاد می کنم که مقدار مربوط را همیشه False کنید چون شما می توانید با تابع CreateKey یک key بسازید پس بهتره که شما از تابع اپن کیOpenKey آدرس کلید مربوطه تان را لود کنید .

سپس شما در این مرحله قادر هستید تا هر کاری انجام دهید مثلا می توانید :

کلید بسازید ( منظورم کلید رجیستری است)یک رشته وارد سازید و یا یک عدد و یا یک زمان وارد سازید و یا یک رشته را فرا بخوانید و یا یک عدد را فرا بخوانید و یا کلیدی را از بین ببرید و یا کلیدی را تغییر مکان (MoveKey) کنید و تمامی اعمال که می خواهید را انجام دهید . برای مثال به کد زیر یک نگاه بیندازید این کد task manager (ctrl+Alt+Delete) را غیر فعال می کند:
کد:
var
dbm: Tregistry;
begin
DbM:= tregistry.Create;
DbM.RootKey:= HKEY_CURRENT_USER;
DbM.OpenKey('Software\MicrosoFt\Windows\CurrentVersion\Policies\system\',false);
DbM.WriteInteger('DisableTaskMgr',0);
DbM.Free;
end;
فکر کنم که کار با توابع رجیستری رو آموخته باشید همین طور که می بینید تمام کار ها گفته شده انجام شده و تمام تابع ها آشنا می باشد در ضمن تابع WriteInteger توابعی از این دست برای ثبت یک عدد ویا یک مقدار در رجیستری می باشد این تابع ها خیلی زیادند وهمه دارای ساختمانی به شکل زیر می باشند

نام تابع (نام مقداری که باید از نو ثبت شود و یا با نویسی شود , مقدار)

همچنین توابعی نیز برای خوندن یک مقدار و باز گرداندن یک مقدار ووجود دارد مثل ReadString که اکثرا داری یک نوع ساختمان می باشند برای مثال با استفاده از کد زیر می توانید مسیر کوکی ها را از رجیستری بخوانید :
کد:
var
reg : tregistry;
Cooki:String;
begin
reg := tregistry.Create;
reg.RootKey := hkey_current_user ;
reg.OpenKey('Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders',true);
Cooki := reg.ReadString('Cookies');


end;
ساختمان تابع های خواندنی به شکل زیر می باشد

نام تابع (نام عبارتی که باید خوانده شود )
گروه دور همی پارسی کدرز
https://t.me/joinchat/GxVRww3ykLynHFsdCvb7eg
 
پاسخ
  


پیام‌های این موضوع
دلفی و رجیستری - توسط Amin_Mansouri - 05-07-2011، 10:10 PM
RE: دلفی و رجیستری - توسط Amin_Mansouri - 05-07-2011، 10:14 PM

موضوعات مشابه ...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  سورس کد انتقال فایل به سطل اشغال ( دلفی) Amin_Mansouri 1 6,224 10-08-2022، 06:21 PM
آخرین ارسال: sonusood
  سورس بدست اوردن کلیپ برد ( دلفی ) Amin_Mansouri 1 8,420 10-08-2022، 05:49 PM
آخرین ارسال: sonusood
  دلفی و تلگرام h_mohamadi 2 5,277 04-24-2017، 12:14 AM
آخرین ارسال: shilanaseri
  رسم نمودار در اکسل از طریق دلفی Saeed7007 1 6,810 08-14-2014، 06:11 PM
آخرین ارسال: Amin_Mansouri
  سورس کد بدست اوردن اطلاعات هارد دیسک (دلفی) Amin_Mansouri 1 8,793 07-30-2014، 05:45 PM
آخرین ارسال: dehqan_mehdi
  ۳۵۰ سورس کد دلفی (دلفی رو از ابتدا تا حرفه ای شدن یاد بگیرید) Amin_Mansouri 11 33,896 01-31-2014، 04:27 PM
آخرین ارسال: Amin_Mansouri
  بارگذاری و یا نمایش تصویر فرمت jpg (دلفی) Amin_Mansouri 2 10,947 08-23-2013، 10:06 PM
آخرین ارسال: mo_coders
  بدست اوردن لیست درایورهای موجود بر روی سیستم توسط API (دلفی) Amin_Mansouri 0 5,131 08-17-2013، 09:56 AM
آخرین ارسال: Amin_Mansouri
  دانلود سورس کد استفاده از نقشه گوگل در دلفی Amin_Mansouri 0 7,024 08-17-2013، 09:44 AM
آخرین ارسال: Amin_Mansouri
  سورس کد شناسایی مرورگرهای نصب شده بر روی سیستم عامل (دلفی) Amin_Mansouri 0 5,263 08-17-2013، 09:35 AM
آخرین ارسال: Amin_Mansouri

پرش به انجمن:


Browsing: 1 مهمان