我閱讀了一些文檔並查看了代碼示例,但我找不到任何我的代碼無法工作的原因。RegSetValueEx不會創建字符串值
#include <iostream>
#include <string>
#include <Windows.h>
using namespace std;
void AddSubKeyWithValue(HKEY hRootKey, LPWSTR strSubKey, LPCTSTR StringVal, LPCTSTR data)
{
HKEY hKey;
RegOpenKeyEx(hRootKey, strSubKey, NULL, KEY_ALL_ACCESS, &hKey);
RegSetValueEx(hRootKey, StringVal, NULL, REG_SZ, (LPBYTE)&data, sizeof(REG_SZ));
RegCloseKey(hKey);
return;
}
void main() {
AddSubKeyWithValue(HKEY_LOCAL_MACHINE, L"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",L"Slayer Tool", L"c:\\Slayer\\Update.exe");
system("pause");
return;
}
我對Windows編程一無所知,但我敢打賭,這些函數返回一個錯誤代碼。而且,'sizeof(REG_SZ)'看起來很可疑。 – melpomene