Windows システムを使用する場合、多くの場合、レジストリにアクセスしてデータを取得することが必要になります。レジストリには、重要な構成設定、ユーザー設定、およびソフトウェア関連の情報が保存されます。この記事では、レジストリ キーが存在するかどうかを安全に確認し、 C を使用してその値をプログラムで取得する方法について説明します。
レジストリ キーが存在するかどうかを確認するには、RegOpenKeyExW を呼び出します。キーパスと優先権限を使用して機能します。関数が ERROR_SUCCESS を返した場合、キーは存在します。 ERROR_FILE_NOT_FOUND が返された場合、そのキーは存在しません。それ以外の場合、キーの存在を判断できません。
レジストリ キーの存在を確認したら、プログラムでその値を取得できます。使用する特定の関数は、値のデータ型によって異なります。一般的なタイプには、文字列、DWORD、およびブール値が含まれます。各タイプを取得する方法は次のとおりです。
文字列値:
<code class="c++">std::wstring strValueOfBinDir; GetStringRegKey(hKey, L"BinDir", strValueOfBinDir, L"bad");</code>
DWORD 値:
<code class="c++">DWORD nValue; LONG nError = GetDWORDRegKey(hKey, L"MyDWORD", nValue, 0);</code>
ブール値:
<code class="c++">bool bValue; LONG nError = GetBoolRegKey(hKey, L"MyBool", bValue, false);</code>
コードに必ず Advapi32.lib ライブラリの依存関係を含めてください。
以上がC を使用して Windows レジストリから値を取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。