BCB自启动程序实现

设置在C++builder中,使程序有自启动功能

 

  

void __fastcall   AutoRun(bool pRun)
{
  /**//******************************************************
  ** 函数名: AutoRun
  ** 输入: 是否设置自动运行
  ** 功能描述: 设置开机自动运行

  ******************************************************/

  TRegistry *Reg = new TRegistry();
  try
  {
    Reg->RootKey = HKEY_LOCAL_MACHINE;
    Reg->OpenKey("//SOFTWARE//Microsoft//Windows//CurrentVersion//Run//",false);

    if(!Reg->ValueExists("SndMonitor") && !pRun)
    { 
      return;
    }


    if(Reg->ValueExists("SndMonitor") && !pRun)
    {
      Reg->DeleteValue("SndMonitor");
    }
    else
    {
      if(!Reg->ValueExists("SndMonitor") )
      {
        Reg->WriteString("SndMonitor",ExpandFileName(Application->ExeName));
      }
      else
      {
        if(Reg->ReadString("SndMonitor")!=ExpandFileName(Application->ExeName))
        {
          Reg->WriteString("SndMonitor",ExpandFileName(Application->ExeName));
        }
      }
    }

  }
  __finally
  {
    delete Reg;
  }
}
posted @ 2015-12-29 09:56  風行  阅读(229)  评论(0编辑  收藏  举报