在注册表的key_local_machine/software/microsoft/windows/Currentversions下有如下子键 run:每次系统启动时就运行一次,即使是注销系统 runonce:系统启动时只运行一次 runservices:做为服务进程启动 runservicesonce:作为服务进程启动一次 我们只要把文件路径和文件名加入到相应的子键下就可以。 在打开注册表时用RegOpenKey函数,写入注册表时用RegSetValueEx函数,另外在对路径进行分解时,用到_splitpath函数,这个函数是第一个参数解析成驱动名,路径名,文件名,后缀名。 HKEY hRegKey = NULL; CString str; if(m_bOnce) str = _T("Software//Microsoft//Windows//CurrentVersion//RunOne"); else str = _T("Software//Microsoft//Windows//CurrentVersion//Run"); if(RegOpenKey(HKEY_LOCAL_MACHINE,str,&hRegKey) != ERROR_SUCCESS) bResult = FALSE; else{ _splitpath(m_strFileName.GetBuffer(0),NULL,NULL, str.GetBufferSetLength(MAX_PATH+1),NULL); m_strFileName.ReleaseBuffer(); str.ReleaseBuffer(); if(::RegSetValueEx(hRegKey,str,0,REG_SZ,(CONST BYTE*) m_strFileName.GetBuffer(0), m_strFileName.GetLength()) != ERROR_SUCCESS) bResult = FALSE; else bResult = TRUE; m_strFileName.ReleaseBuffer(); }
开机启动程序
最新推荐文章于 2024-01-26 10:19:41 发布