|
همانطور که در قسمت های قبلی اشاره
شد عملیات اساسی در رجیستری به وسیله کدنویسی،
عبارت از خواندن اطلاعات از رجیستری و نوشتن
اطلاعات در رجیستری است.
قطعه کدی که در زیر مشاهده می گردد
تصویر دسک تاپ ویندوز را تغییر داده و
Screensaver را با
استفاده از کلاس TRegistry
غیرفعال می نماید. قیل از اینکه بتوانیم از کلاس
TRegistry استفاده کنیم
باید یونیت مربوط به آنرا که
Registry نام دارد، وارد یا اصطلاحا
uses نماییم. برای این
منظور جلوی کلمه uses
در ابتدای برنامه نام یونیت
Registry را می نویسیم.
uses registry;
procedure TForm1.FormCreate(Sender: TObject) ;
var
reg:TRegistry;
begin
reg:=TRegistry.Create;
with reg do begin
try
if OpenKey('\Control Panel\desktop', False) then begin
//change wallpaper and tile it
reg.WriteString ('Wallpaper','c:\windows\CIRCLES.bmp') ;
reg.WriteString ('TileWallpaper','1') ;
//disable screen saver//('0'=disable, '1'=enable)
reg.WriteString('ScreenSaveActive','0') ;
//update changes immediately
SystemParametersInfo (SPI_SETDESKWALLPAPER,0, nil,SPIF_SENDWININICHANGE) ;
SystemParametersInfo (SPI_SETSCREENSAVEACTIVE,0, nil,SPIF_SENDWININICHANGE) ;
end
finally
reg.Free;
end;
end;
end;
|
|
|
|
در این تکه کد دو خطی که با
SystemParameterInfo
شروع شده اند، ویندوز را مجبور به
update کردن عکس پس
زمینه و همچنین تغییر سریع اطلاعات
Screensaver می نمایند.
وقتی شما برنامه خود [که
حاوی این تکه کد است- م]
را اجرا نمایید، مشاهده خواهید کرد که عکس پس
زمینه ویندوز به تصویر
circles.bmp (در صورت وجود در پوشه
Windows) تغییر یافته و
Screensaver غیر فعال
شده است.
برای کسب اطلاعات بیشتر و دیدن
برنامه های نمونه اضافی در مورد رجیستری می توانید
به مقالات زیر در سایت
delphi.about.com مراجعه نمایید :
|