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

来源:百度文库 编辑:神马文学网 时间:2024/04/27 23:36:19

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

  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;