Win32 API 日本語リファレンス
ホーム › Networking.Clustering › PCLUSAPI_CLUSTER_REG_QUERY_VALUE

PCLUSAPI_CLUSTER_REG_QUERY_VALUE

コールバック

シグネチャ

INT PCLUSAPI_CLUSTER_REG_QUERY_VALUE(
    HKEY hKey,
    LPWSTR lpszValueName,
    DWORD* lpdwValueType,
    BYTE* lpData,
    DWORD* lpcbData
);

パラメーター

フィールド型説明
hKeyHKEY照会するクラスターデータベースキーのハンドルです。
lpszValueNameLPWSTR照会する値の名前を格納した、null で終わる Unicode 文字列へのポインターです。
lpdwValueTypeDWORD*

キーの値の型へのポインターです。型が必要でない場合、このパラメーターは NULL でもかまいません。 それ以外の場合、このパラメーターを通じて返される値は次のいずれかです。

REG_BINARY (3)

任意の形式のバイナリデータです。

REG_DWORD (4)

32 ビットの数値です。

REG_DWORD_BIG_ENDIAN (5)

ビッグエンディアン形式で格納された 32 ビットの数値です。

REG_EXPAND_SZ (2)

環境変数への未展開の参照 (たとえば "%PATH%") を含む、null で終わる Unicode 文字列です。

REG_MULTI_SZ (6)

null で終わる文字列が連続したもので、空の文字列 (\0) で終端されます。

次に例を示します。

String1\0String2\0String3\0LastString\0\0

最初の \0 は 1 番目の文字列を終端し、最後から 2 番目の \0 は最後の文字列を終端し、 最終の \0 は並び全体を終端します。最後の終端文字も文字列の長さに 含める必要があることに注意してください。

REG_NONE (0)

定義された値の型はありません。

REG_QWORD (11)

64 ビットの数値です。

REG_SZ (1)

null で終わる Unicode 文字列です。

lpDataBYTE*値のデータへのポインターです。データが必要でない場合、このパラメーターは NULL でも かまいません。
lpcbDataDWORD*

入力時は、lpbData パラメーターが指すバッファーのバイト数へのポインターです。 出力時は、値のデータのバイト数へのポインターであり、呼び出し元が有効なポインターを渡した場合、そのデータは lpbData の内容に格納されます。

lpbData パラメーターを NULL にできるのは、 lpbData も NULL の場合だけです。

公式ドキュメント

オープンされている クラスターデータベースキーの値に関連付けられた名前、型、データの各コンポーネントを返します。

戻り値

この関数は次のいずれかの値を返します。

リターンコード/値 説明
ERROR_SUCCESS
0 (0x0)
操作は成功しました。
ERROR_MORE_DATA
234 (0xEA)
lpbData が指すバッファーは、その値のデータを保持するのに十分な大きさではありません。ClusterRegQueryValue は 必要なサイズを lpbData の内容に格納します。

解説(Remarks)

lpbData が NULL の場合、 ClusterRegQueryValue 関数は ERROR_SUCCESS を返し、 その値のデータのサイズを lpbData の内容に格納します。この情報によって、 呼び出し元はデータを保持するバッファーを正しく割り当てられます。

lpdwValueType に REG_SZ、 REG_MULTI_SZ、または REG_EXPAND_SZ が設定されている場合、 lpbData には NULL 終端文字も含まれます。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)