|
권한이 모자라서 그런 것 같군요. 스크린샷을 보니 윈도우7 혹은 비스타인데요.
윈도우 비스타 이상에서는 레지스트리의 HKEY_LOCAL_MACHINE 하위 키는 관리자권한으로 승격하지 않으면 읽을 수 없습니다.
확인해보시려면, 컴파일하신 프로그램 exe를 탐색기에서 오른쪽 클릭해서 "관리자 권한으로 실행"을 선택해서 실행시켜보세요.
압9정 님이 쓰신 글 :
: 안녕하세요.
:
: 제가 Regedit에서 위와 그림에 있는 경로에 ModuleId 라는 값을 가져오려고 합니다.
:
: 포럼에서 QA를 참고하여 소스를 짜봤는데요. 값이 안넘어 오네요.ㄷ
:
: #include <Registry.hpp>
:
: void TMain::GetBiosRegistry()
: {
: TRegistry *reg = new TRegistry();
: String Str;
:
: reg->RootKey = HKEY_LOCAL_MACHINE;
: reg->OpenKey("SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SoftwareProtectionPlatform\\Plugins\\Objects\\msft:rm/algorithm/bios/4.0",false);
: Str = reg->ReadString("ModuleId");
: Memo1->Lines->Add(Str);
:
: reg->CloseKey();
: delete reg;
: }
: //---------------------------------------------------------------------------
: void __fastcall TMain::Button1Click(TObject *Sender)
: {
: GetBiosRegistry();
: }
: //---------------------------------------------------------------------------
:
: 어디가 잘못된 건가요?ㅠ
|