Чтение значений реестра с помощью MQL
Я пытаюсь прочитать ключ реестра, но я получаю различные ошибки (2 или 87).
string pvData = "";
Print(
"RegLoadKeyW=",
RegLoadKeyW(HKEY_CURRENT_USER, "Control Panel\\MenuShowDelay", pvData),
" pvData=",pvData
);
возвращается
... RegLoadKeyA=87 pvData=
Этот код не имеет ошибки для открытия ключа
uint lResult = RegOpenKeyW( HKEY_CURRENT_USER, KeyName, hkey);
Но я не могу использовать RegQueryValueW
Print("RegGetValueA=",
RegGetValueA(
HKEY_CURRENT_USER,
inKeyName,
"MaxMonitorDimension",
0x000f003f | 0x0200 | 0x00020019,//flags: all | 32bit | read
4, // REG_DWORD
pvData,
pcbData
),
" pvData=",pvData
);
...RegGetValueA=2 pvData=
У меня есть эти коды импорта
#import "Advapi32.dll"
int RegLoadKeyW(
int hKey,
string lpSubKey,
string& lpFile
);
int RegOpenKeyW(
uint hKey,
string lpSubKey,
int& phkResult
);
uint RegCloseKey(int hKey);
int RegGetValueA(
/*HKEY*/ int hkey,
/*LPCSTR*/ string lpSubKey,
/*LPCSTR*/ string lpValue,
/*DWORD*/ int dwFlags,
/*LPDWORD*/ int pdwType,
/*PVOID*/ string& pvData,
/*LPDWORD*/ int& pcbData
);
#import
- Я пытаюсь прочитать различные ключи в "HKEY_CURRENT_USER\Control Panel\Desktop".
- Моя система x64 с Windows 8.1, и я использую mql4 для чтения значений реестра.