확실히 존재하는 키에 대해 레지스트리 함수가 "찾을 수 없음"을 반환합니다. 올바른 문자셋을 사용하고 이중 백 슬래시를 사용하므로 문제가되지 않습니다.RegOpenKeyEx/RegGetValue 존재하는 키에 대해 ERROR_FILE_NOT_FOUND를 반환합니다.
여기[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Netmon3]
"NetmonVersion"="3.4.2350.0"
"NPLVersion"="03.02"
"InstallDir"="C:\\prog\\netmon3\\"
"NetmonEdition"="Capture and Parser Engine"
함수 호출이다 :
x = RegOpenKeyExA(
HKEY_LOCAL_MACHINE,
"SOFTWARE\\Microsoft\\Netmon3",
0,
KEY_READ, &hKey);
리턴 값 X가 ERROR_FILE_NOT_FOUND
의미 2 여기
SOFTWARE\\Microsoft
"문자열을 사용하여 잘 작동합니다. 내가 찾을 수 없습니다 의미하는 결과로 2를 얻고, 다시
x = RegGetValueA(
HKEY_LOCAL_MACHINE,
"SOFTWARE\\Microsoft\\Netmon3",
"InstallDir",
RRF_RT_ANY,
NULL,
(PVOID)install_directory,
&BufferSize
);
: RegGetValue()를 호출
같은 문제가있다.
모든 권한은 "읽기"권한이 있습니다.
내가 무엇을 놓치고 있더라도, 그것은 명백한 무엇인가보아야한다. 그러나 나의 두뇌를 긁어 모으고, 나는 그것을 볼 수 없다. -
마쉬 레이는 아래의 답이있다 : 나는 64 비트 시스템에서 32 비트를 컴파일되었다, 그리고 Netmon3 설치했다 64 비트. 빌드 설정을 64 비트로 변경하면 문제가 해결됩니다.
이 32 비트 코드가 64 비트 운영 체제에서 실행되고 있습니까? –
가상 키를 확인하십시오 (Wow6432Node 검색). –