要安全地确定注册表项是否存在,请使用 RegOpenKeyExW带有 KEY_READ 标志的函数。如果函数返回ERROR_SUCCESS,则该键存在;如果返回 ERROR_FILE_NOT_FOUND,则该密钥不存在。
要以编程方式获取注册表密钥的值,请使用以下 API:
这些函数采用键句柄和要检索的值的名称作为参数。它们返回提供的引用参数中的值。
以下示例代码演示了这些函数的用法:
<code class="cpp">#include <Windows.h> int main() { HKEY hKey; LONG lRes = RegOpenKeyExW(HKEY_LOCAL_MACHINE, L"SOFTWARE\Perl", 0, KEY_READ, &hKey); if (lRes == ERROR_SUCCESS) { std::wstring strBinDir; GetStringRegKey(hKey, L"BinDir", strBinDir, L"bad"); DWORD dwValue; GetDWORDRegKey(hKey, L"PerlVersion", dwValue, 0); bool bEnabled; GetBoolRegKey(hKey, L"Enabled", bEnabled, false); } RegCloseKey(hKey); return 0; }</code>
在此示例中,GetStringRegKey函数检索“BinDir”字符串键的值,GetDWORDRegKey 检索“PerlVersion”DWORD 键的值,GetBoolRegKey 检索“Enabled”布尔键的值。
以上是如何检索并确定 Windows 中注册表项是否存在?的详细内容。更多信息请关注PHP中文网其他相关文章!