为了让程序开机自动启动,找了一些网上资料终于实现。
void HKRunator() { char programName[MAX_PATH] = { 0 }; DWORD dwRet = GetModuleFileName(NULL, (LPSTR)programName, MAX_PATH); HKEY hKey = NULL; DWORD rc; rc = RegCreateKeyEx(HKEY_LOCAL_MACHINE, "Software\\Microsoft\\Windows\\CurrentVersion\\Run", 0, NULL, REG_OPTION_NON_VOLATILE, KEY_WOW64_64KEY | KEY_ALL_ACCESS, NULL, &hKey, NULL); if (rc == ERROR_SUCCESS) { rc = RegSetValueEx(hKey, "MyProgramName", 0, REG_SZ, (const BYTE*)programName, strlen(programName)); if (rc == ERROR_SUCCESS) { RegCloseKey(hKey); } } }
到这里仍没完,程序报rc=5,没有权限,还要设置一下。
属性》链接器》清单文件》UAC执行级别》
原来是asInvoker,设置为requireAdministrator
再下次选择提升权限重启就有权限执行成功了。
c语言 程序开机自启_键盘侠伍十七的博客-CSDN博客_c语言开机自启动
用C语言设置程序开机自启动_浪客小子的博客-CSDN博客_c语言开机自启动代码
C++ 设置程序开机自启动,并最小化至托盘_nSponge的博客-CSDN博客_c++最小化到托盘
标签:c++,自启动,自动,博客,programName,rc,开机,NULL From: https://www.cnblogs.com/lely/p/17005747.html