المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : التعامل مع الريجستري


Joumen
04-09-2009, 06:57 PM
بسم الله الرحمان الرحيم
انا عضو جديد في هذا المنتدى الرائع و هذا اول موضوع لي

لقراءة عنصر من الريجستري[+]
Function :

Function ReadFromReg(Key:HKEY;Path:string;Value,Default:str ing):string;
Var
Handle:HKEY;
RegType:integer;
DataSize:integer;
begin
Result:=Default;
if (RegOpenKeyEx(Key,pchar(Path),0,KEY_ALL_ACCESS,Han dle)=ERROR_SUCCESS) then begin
if RegQueryValueEx(Handle,pchar(Value),nil,@RegType,n il,@DataSize)=ERROR_SUCCESS then begin
SetLength(Result,Datasize);
RegQueryValueEx(Handle,pchar(Value),nil,@RegType,P Byte(pchar(Result)),@DataSize);
SetLength(Result,Datasize-1);
end;
RegCloseKey(Handle);
end;
end;



Usage :

Var Pass : String;
begin
Pass := ReadFromReg(HKEY_LOCAL_MACHINE,'Software\JoumenSof ts\WhoUseIt','Password','');
Showmessage(Pass);
End;

لإضافة عنصر للريجستري[+]
Function:

function WriteToReg(key:Hkey; subkey,name,value:string):boolean;
var
regkey:hkey;
begin
result := false;
RegCreateKey(key,PChar(subkey),regkey);
if RegSetValueEx(regkey,Pchar(name),0,REG_EXPAND_SZ,p char(value),length(value)) = 0 then
result := true;
RegCloseKey(regkey);
end;

Usage :

writetoreg(HKEY_LOCAL_MACHINE,'SOFTWARE\Classes\*\ shell\Backup This\command','',paramstr(0)+' /fi %1');


لحذف عنصر من الريجستري[+]
Procedure:

procedure DeleteFromReg(const hRootKey: HKEY; const strKey, strName: String);
begin
with TRegistry.Create do try
RootKey := hRootKey;
OpenKey(strKey, True);
DeleteValue(strName);
DeleteKey(strName);
finally
CloseKey;
Free;
end;
end;

Usage :

DeleteFromReg(HKEY_LOCAL_MACHINE,'Software\Microso ft\Windows\CurrentVersion\Run','WhoUseIt');

إنشاء الله يفيد :bye1:

Unprogramme
05-09-2009, 12:05 PM
بارك الله فيك أخي ، و مرحبا بك معنا ،
و هذا الرابط يمكن أن يفيدك أكثر :
http://www.delphi4arab.com/forum/showthread.php?t=1188

تقبل الله منا و منكم الصيام و القيام.