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

时间:2008-10-05 03:37:00   来源:无忧考网     [字体: ]
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\\Current\Version\\Run",true)) //打开主键
   //这样双引号里面的东西就变成了CurrentKey
   {
     Application->MessageBox("注册表内容无效", "读取注册表出错",MB_ICONERROR);
     MyRegistry->CloseKey();
     delete MyRegistry;
     return;
    }
  MyRegistry->WriteString("myrun","c:\\sthvcd\\sthvcd.exe");
  MyRegistry->CloseKey();
  delete MyRegistry;