程序设置开机启动

test 程序名称

HKEY hKey;
	CString strRegPath =_T("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run");//找到系统的启动项  if(IsAutoStart){if(RegOpenKeyEx(HKEY_CURRENT_USER, strRegPath,0, KEY_ALL_ACCESS,&hKey)== ERROR_SUCCESS)//打开启动项       {
			TCHAR szModule[MAX_PATH];GetModuleFileName(NULL, szModule, MAX_PATH);RegSetValueEx(hKey,_T("test"),0, REG_SZ,(LPBYTE)szModule,(lstrlen(szModule)+1)*sizeof(TCHAR));RegCloseKey(hKey);}else{AfxMessageBox(_T("设置开机启动失败!请检查!"));return;}}else{if(RegOpenKeyEx(HKEY_CURRENT_USER, strRegPath,0, KEY_ALL_ACCESS,&hKey)== ERROR_SUCCESS){RegDeleteValue(hKey,_T("test"));RegCloseKey(hKey);}}

取消开机启动

HKEY hKey;
	CString strRegPath =_T("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run");if(RegOpenKeyEx(HKEY_CURRENT_USER, strRegPath,0, KEY_ALL_ACCESS,&hKey)== ERROR_SUCCESS)//打开启动项       {
		TCHAR pFileName[MAX_PATH]={};GetModuleFileName(NULL, pFileName, MAX_PATH);
		TCHAR szModule[MAX_PATH];
		DWORD nLongth = MAX_PATH;long result =RegGetValue(hKey,NULL,_T("test"), RRF_RT_REG_SZ,0, szModule,&nLongth);if(result == ERROR_SUCCESS){
			CString cstrRegFileName = szModule;
			CString cstrNewFileName = pFileName;if(cstrRegFileName != cstrNewFileName){return FALSE;}return TRUE;}else{return FALSE;}}else{return FALSE;}