我想将我的程序添加到自动运行中。我知道有一个注册表项,它不需要管理员来编辑它。
这是
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run.
我正在使用unicode bild。我写了一个函数,用于将程序添加到autorn。
void AddToRegAutorun(const std::wstring& _valueName, const std::wstring& _path)
{
HKEY hkey;
if (RegOpenKeyEx(HKEY_CURRENT_USER, TEXT("Software\\Microsoft\\Windows\\CurrentVersion\\Run"), 0, /*KEY_SET_VALUE*//*MAXIMUM_ALLOWED*/KEY_ALL_ACCESS, &hkey) == ERROR_SUCCESS)
RegSetValueEx(hkey, _valueName.c_str(), 0, REG_SZ, (LPBYTE)_path.c_str(), ((DWORD)wcslen(_path.c_str()) + 1)* sizeof(wchar_t));
RegCloseKey(hkey);
}
RegOpenKeyEx()
返回ERROR_SUCCESS.
但RegSetValueEx()
返回5
(ERROR_ACCESS_DENIED).
有什么建议吗?
答案 0 :(得分:0)
以管理员身份运行.exe。