|
'비스타'가 문제가 아니라 64bit 가 문제였네요.
64bit OS 를 사용 중인데, 여기서는 64bit 레지스트리와 32bit 레지스트리가 구분이 되어 있습니다.
"HKLM\Software\Microsoft\Windows NT\CurrentVersion\Type 1 Installer"
는 64bit 레지스트리에만 존재하고 있고..일반적으로 사용하듯 RegOpenKeyEx 를 사용하면 키가 존재하지 않는다고 나옵니다. (이 키에 접근하는 프로그램은 32bit 프로그램..)
64bit 레지스트리에 접근하기 위해서는 RegOpenKeyEx 에서 Access Right 에
KEY_WOW64_64KEY 를 같이 지정해줘야합니다.
64bit 를 처음 쓰다보니 새로운 문제로 고생을 좀 했네요..
xiles 님이 쓰신 글 :
: 비스타에서
: "HKLM\Software\Microsoft\Windows NT\CurrentVersion\Type 1 Installer" 키에 접근하려 하는데..
: 키가 존재하지 않는다고 접근이 안됩니다.
:
: regedit 에서는 제대로 보이고 권한 부분에도 특별한게 없는거 같은데..
: RegOpenKeyEx API를 써서 접근하려고 하면 키가 존재하지 않는다고 합니다.
:
: 비스타에는 Administrator 로 로그인되어있고.. 프로그램을 Run as Administrator 로 실행해봐도 접근이 안됩니다.
:
: HKLM\Software\Microsoft\Windows NT\CurrentVersion
: 의 SubKeys 들을 RegEnumKey API 로 얻어보니 Type 1 Installer 키는 나오지 않네요..
:
: regedit 에서는 멀쩡히 잘 나오는데 API 로 접근이 안되는 이유는 뭘까요??
: 혹시 무언가 방법을 알고 계신분 있으신가요?
:
: XP에서도 해보니 멀쩡히 접근이 잘 되네요.
|