var
reg:Tregistry;
begin
reg:=Tregistry.Create;
reg.rootkey:=HKEY_CURRENT_USER;
if reg.Savekey('Software\test','d:\test.reg') then
showmessage('true')
else
showmessage('false');
reg.CloseKey;
reg.Free;
end;为什么Savekey方法执行后的文件里是空的呢?什么都没有,返回结果是false。
reg:Tregistry;
begin
reg:=Tregistry.Create;
reg.rootkey:=HKEY_CURRENT_USER;
if reg.Savekey('Software\test','d:\test.reg') then
showmessage('true')
else
showmessage('false');
reg.CloseKey;
reg.Free;
end;为什么Savekey方法执行后的文件里是空的呢?什么都没有,返回结果是false。
解决方案 »
- richview 文字保护
- imageEN 安装方法
- 关于Intraweb中WebApplication.ShowMessage()的问题,知道的请进来看看!
- 经典sql查询求助,有案例,帮忙解决一下!
- 反安装的制作
- Delphi内存操作,在内存中搜索并替换内存中的字符串
- 请问,怎样使窗体最小化后隐藏,也就是最小化后的小图表不在出现在下面的状态栏中!谢谢,请给出代码!
- 请问:怎样固定图象的长宽比,将image控件适应屏幕显示?
- 怎样将函数或过程作为参数???
- 如何遍历目录...
- 使用函数问题
- 程序调试出现access violation at 0x7c957a50:write of address 0x00030d24错误
1. 注册表访问权限不够。
2. 目标文件 'd:\test.reg' 已经存在。
function AddPrivilege(AProcID: THandle; const SecuName: PChar): Boolean;
var
hToken: Thandle;
tp: Token_Privileges;
rl: Cardinal;
begin
Result := false;
if not (OpenProcessToken(AProcID, Token_Adjust_Privileges or Token_Query, hToken)) then exit;
try
if not LookupPrivilegeValue(nil, SecuName, tp.Privileges[0].Luid) then exit;
tp.PrivilegeCount := 1;
tp.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
if AdjustTokenPrivileges(hToken, False, tp, Sizeof(TOKEN_PRIVILEGES), Nil, rl) then Result := True;
finally
CloseHandle(hToken);
end;
end;......var
RegFile: String;
reg:Tregistry;
begin
AddPrivilege(GetCurrentProcess(), 'SeBackupPrivilege');
RegFile := 'd:\test.reg';
if FileExists(RegFile) then DeleteFile(RegFile);
reg.rootkey:=HKEY_CURRENT_USER;
if reg.Savekey('Software\test', RegFile) then
showmessage('true')
else
showmessage('false');
reg.CloseKey;
reg.Free;
end;