2013-03-05 91 views
0

我想將我的程序添加到自動運行。我知道有一個註冊表鍵,它不需要管理員權限來編輯它。將程序添加到沒有管理員權限的自動運行。 RegSetValueEx()返回5(ERROR_ACCESS_DENIED)

這是

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run. 

我使用Unicode畫報。我寫了一個用於將程序添加到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

以管理員身份運行.exe。

相關問題