如何解决无法使用 TRegistry 在 HKLM 中写入/更新密钥
我正在尝试使用 TRegistry
在 HKLM 中写入/更新值,但是当我使用 OpenKey()
打开注册表时从未成功(它总是返回 false)。
我的应用程序是 32 位的。我用 C++Builder 10.3 编写代码。我的操作系统是 Windows 10。
这是我的代码:
BOOL bIsWow64 = FALSE;
BOOL result=FALSE;
IsWow64Process(GetCurrentProcess(),&bIsWow64);
long flags = KEY_WRITE;
if (bIsWow64) flags |= KEY_WOW64_64KEY;
TRegistry *sfReg = new TRegistry(flags);
sfReg->RootKey = HKEY_LOCAL_MACHINE;
UnicodeString mykey="software\\MyName\\MyAppName\\";
sfReg->Access=flags;
result=sfReg->OpenKey(mykey,true);
if(result)
{
if(MainForm->usermode==USER_TEACHER)
{
sfReg->WriteString("tPswd",Edit2->Text);
}
else
{
sfReg->WriteString("fPswd",Edit2->Text);
}
}
delete sfReg;
p->CommaText=MainForm->pLang->Strings[LANG_START+134];
MessageDlg(p->Strings[1],mtinformation,TMsgDlgButtons() << mbOK,0);
Close();
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。