VC MFC 写注册表 开机自启 开机自动运行 RegSetValueEx

2014-11-23 20:26:24 · 作者: · 浏览: 66

//获取可执行文件路径

CString sPath;

GetModuleFileName(NULL,sPath.GetBufferSetLength(MAX_PATH+1),MAX_PATH);

sPath.ReleaseBuffer ();

/*

int nPos;

nPos=sPath.ReverseFind(\);

sPath=sPath.Left(nPos);

*/

// AfxMessageBox(sPath);

LPSTR lpPath = (LPSTR)(LPCTSTR)sPath;

//开机自启----

HKEY hkey;

DWORD cbData =MAX_PATH; /*strlen(lpstr)*/;

if( ERROR_SUCCESS!=RegOpenKeyEx(HKEY_LOCAL_MACHINE,

_T("SOFTWARE\Microsoft\Windows\CurrentVersion\Run\"),

0,

KEY_WRITE,

&hkey) )

{AfxMessageBox("RegOpenKeyEx failed");}

else

{//

RegSetValueEx(hkey,

_T("ZhongWeiSoft"),

0,

REG_SZ,

(CONST BYTE *)lpPath,

cbData);

}

RegCloseKey(hkey);