C++builder编程修改注册表的问题

来源:百度文库 编辑:神马文学网 时间:2024/06/13 13:23:12

RootKey是注册表的根键值,比如运行regedit后看到的HKEY_USERS,HKEY_LOCAL_MACHINE就是RootKey,在TRegIniFile中缺省的RootKey是HKEY_USERS.
下面的例子是TRegistry的,TRegIniFile也差不多
void __fastcall TfrmMainForm::WriteToMyRegistry(int table_count)
{
//TODO: Add your source code here
TRegistry *MyRegistry=new TRegistry;
MyRegistry->RootKey=HKEY_LOCAL_MACHINE;  //改变缺省Rootkey
if(!MyRegistry->OpenKey("Software\Microsoft\Windows\CurrentVersion\Run",true)) //打开主键
//这样双引号里面的东西就变成了CurrentKey
{
Application->MessageBox("注册表内容无效", "读取注册表出错",MB_ICONERROR);
MyRegistry->CloseKey();
delete MyRegistry;
return;
}
MyRegistry->WriteString("myrun","c:\sthvcd\sthvcd.exe");
MyRegistry->CloseKey();
delete MyRegistry;