Форум: "Основная";
Текущий архив: 2002.09.02;
Скачать: [xml.tar.bz2];
ВнизРаздел HKEY_LOCAL_MACHINE в реестре Найти похожие ветки
← →
Lamer86 (2002-08-20 21:27) [0]Подскажите как работать с разделом реестра HKEY_LOCAL_MACHINE. Если писать просто FIniFile := TRegIniFile.Create("SOFTWARE") (FIniFile: TRegIniFile)то имеется ввиду раздел HKEY_CURRENT_USER\SOFTWARE
← →
Lamer86 (2002-08-20 22:20) [1]Неужели никто не знает?
← →
_Александр_ (2002-08-20 22:26) [2]
unit MyReg;
interface
Uses Windows;
function RegSetKeyStr(Root:DWORD;Path:string;KeyName:string;KeyValue:string):boolean;
function RegGetKeyStr(Root:DWORD;Path:string;KeyName:PChar;Var KeyValue:string):boolean;
function RegCreateDir(Root:DWORD;Path:string):boolean;
function RegDelKey(Root:DWORD;Path:string;KeyName:string):boolean;
implementation
//***************************************************************************************************************
{procedure TForm1.SETVALUEClick(Sender: TObject);
begin
RegSetKeyStr(HKEY_LOCAL_MACHINE,"SOFTWARE\Microsoft\Windows\CurrentVersion\Run","MY TEST 00044",Edit1.text);
end;
//***************************************************************************************************************
procedure TForm1.GETVALUEClick(Sender: TObject);
var
s:string;
begin
RegGetKeyStr(HKEY_LOCAL_MACHINE,"SOFTWARE\Microsoft\Windows\CurrentVersion\Run","MY TEST 00044",s);
panel1.Caption:=s;
end;
}
//***************************************************************************************************************
{
procedure TForm1.CreateBtClick(Sender: TObject);
begin
RegCreateDir(HKEY_LOCAL_MACHINE,"SOFTWARE\000");
end;
}
//***************************************************************************************************************
function RegSetKeyStr(Root:DWORD;Path:string;KeyName:string;KeyValue:string):boolean;
var
rg:HKEY;
begin
Result:=false;
if RegOpenKey(Root,pchar(Path),Rg) = ERROR_SUCCESS then
if RegSetValueEx(Rg,PChar(KeyName),0,REG_SZ,PChar(KeyValue),Length(KeyValue)+1) = ERROR_SUCCESS
then Result:=true;
RegCloseKey(Rg);
end;
//***************************************************************************************************************
function RegDelKey(Root:DWORD;Path:string;KeyName:string):boolean;
var
rg:HKEY;
begin
Result:=False;
if RegOpenKey(Root,pchar(Path),Rg) = ERROR_SUCCESS then
if RegDeleteKey(Rg,PChar(KeyName)) = ERROR_SUCCESS
then Result:=true;
RegCloseKey(Rg);
end;
//***************************************************************************************************************
function RegGetKeyStr(Root:DWORD;Path:string;KeyName:PChar;Var KeyValue:string):boolean;
Var
Rg: HKey;
StrLen: Integer;
Buffer: array[0..255] of Char;
begin
Result:=false;
KeyValue:="";
if RegOpenKey(Root,pchar(Path),Rg) = ERROR_SUCCESS then
begin
StrLen := SizeOf(Buffer);
if (RegQueryValueEx(rg, KeyName, nil, nil, @Buffer, @StrLen) = ERROR_SUCCESS) then
begin
KeyValue:=Buffer;
Result:=true;
end;
RegCloseKey(Rg);
end;
end;
//***************************************************************************************************************
function RegCreateDir(Root:DWORD;Path:string):boolean;
Var
Rg: HKey;
begin
Result:=false;
if RegCreateKey(Root,pchar(Path),Rg) = ERROR_SUCCESS then Result:=True;
RegCloseKey(Rg);
end;
//***************************************************************************************************************
end.
← →
Anatoly Podgoretsky (2002-08-20 22:28) [3]Первое выкинуть TRegIniFile и использовать TRegistry
← →
ULTRIX (2002-08-20 22:46) [4]Блин, что за примитивщина, Александр? Это бы для первого Делфи сгодилось! А ламеру так и не объяснил... Думаешь он из твоего что-нибудь поймёт? Хе-хе :)))
Ламер, а что за идиотское Finifile? Такое даже и на первом страшно применить. Рассказывать долго - покопайся в help-е, прочти там о TRegistry :) Желаю удачи ;)
Best Regards, ULTRIX
ultrix@tut.by ICQ:166456655
← →
Lamer86 (2002-08-21 10:56) [5]Всем спасибо
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.09.02;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.007 c