PCLUSAPI_CLUSTER_REG_QUERY_VALUE
コールバックシグネチャ
INT PCLUSAPI_CLUSTER_REG_QUERY_VALUE(
HKEY hKey,
LPWSTR lpszValueName,
DWORD* lpdwValueType,
BYTE* lpData,
DWORD* lpcbData
);パラメーター
| フィールド | 型 | 説明 |
|---|---|---|
| hKey | HKEY | 照会するクラスターデータベースキーのハンドルです。 |
| lpszValueName | LPWSTR | 照会する値の名前を格納した、null で終わる Unicode 文字列へのポインターです。 |
| lpdwValueType | DWORD* | キーの値の型へのポインターです。型が必要でない場合、このパラメーターは 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 文字列です。 |
| lpData | BYTE* | 値のデータへのポインターです。データが必要でない場合、このパラメーターは NULL でも かまいません。 |
| lpcbData | DWORD* | 入力時は、lpbData パラメーターが指すバッファーのバイト数へのポインターです。 出力時は、値のデータのバイト数へのポインターであり、呼び出し元が有効なポインターを渡した場合、そのデータは lpbData の内容に格納されます。 lpbData パラメーターを NULL にできるのは、 lpbData も NULL の場合だけです。 |
公式ドキュメント
オープンされている クラスターデータベースキーの値に関連付けられた名前、型、データの各コンポーネントを返します。
戻り値
この関数は次のいずれかの値を返します。
| リターンコード/値 | 説明 |
|---|---|
|
操作は成功しました。 |
|
lpbData が指すバッファーは、その値のデータを保持するのに十分な大きさではありません。ClusterRegQueryValue は 必要なサイズを lpbData の内容に格納します。 |
解説(Remarks)
lpbData が NULL の場合、 ClusterRegQueryValue 関数は ERROR_SUCCESS を返し、 その値のデータのサイズを lpbData の内容に格納します。この情報によって、 呼び出し元はデータを保持するバッファーを正しく割り当てられます。
lpdwValueType に REG_SZ、 REG_MULTI_SZ、または REG_EXPAND_SZ が設定されている場合、 lpbData には NULL 終端文字も含まれます。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)