CryptGetOIDFunctionValue 関数 (wincrypt.h)
CryptGetOIDFunctionValue 関数は、OID に関連付けられている値を照会します。 クエリは、OID、関数名、およびエンコード型に関連付けられている特定の名前付き値に対して行われます。 関数は、クエリされた値の型、値、それ自体、またはその両方を返すことができます。
構文
BOOL CryptGetOIDFunctionValue(
[in] DWORD dwEncodingType,
[in] LPCSTR pszFuncName,
[in] LPCSTR pszOID,
[in] LPCWSTR pwszValueName,
[out] DWORD *pdwValueType,
[out] BYTE *pbValueData,
[in, out] DWORD *pcbValueData
);
パラメーター
[in] dwEncodingType
照合するエンコードの種類を指定します。 現在、X509_ASN_ENCODINGとPKCS_7_ASN_ENCODINGのみが使用されています。ただし、今後、エンコードの種類が追加される可能性があります。 両方の現在のエンコードの種類を照合するには、X509_ASN_ENCODING |PKCS_7_ASN_ENCODING。
[in] pszFuncName
OID 関数セットの名前を含む null で終わる文字列へのポインター。
[in] pszOID
OID の上位ワードが 0 以外の場合、 pszOID は null で終わる OID 文字列 ("2.5.29.1" など) または null で終わる ASCII 文字列 ("file" など) へのポインターです。OID の上位ワードが 0 の場合、下位ワードはオブジェクト識別子として使用される数値識別子を指定します。
[in] pwszValueName
クエリ対象の値の名前を含む null で終わる Unicode 文字列へのポインター。
[out] pdwValueType
値の型を受け取る変数へのポインター。 このパラメーターから返される型は、次のいずれかになります。
値 | 説明 |
---|---|
|
32 ビット数値。 |
|
"%PATH%" などの環境変数への展開されていない参照を含む Unicode 文字列。 アプリケーションでは、使用する前に、文字列に終端の null 文字があることを確認する必要があります。 文字列に終端の null 文字がない場合の詳細については、「 RegQueryValueEx」を参照してください。 |
|
null で終わる Unicode 文字列の配列。 アプリケーションでは、配列を使用する前に、配列が 2 つの null 文字で正しく終了していることを確認する必要があります。 配列が 2 つの null 文字で終了しない場合の詳細については、「 RegQueryValueEx」を参照してください。 |
|
Unicode 文字列。 アプリケーションでは、使用する前に、文字列に終端の null 文字があることを確認する必要があります。 文字列に終端の null 文字がない場合の詳細については、「 RegQueryValueEx」を参照してください。 |
返される型が不要な場合、 pdwValueType パラメーターは NULL にすることができます。
[out] pbValueData
pwszValueName パラメーターに関連付けられている値を受け取るバッファーへのポインター。 バッファーは、終端 の NULL 文字を格納するのに十分な大きさである必要があります。 返されるデータが不要な場合、このパラメーターは NULL にすることができます。
このパラメーターは、メモリ割り当てのためにバッファーのサイズを見つけるために NULL にすることもできます。 詳細については、「 不明な長さのデータの取得」を参照してください。
[in, out] pcbValueData
pbValueData が指すバッファーのサイズをバイト単位で指定する DWORD へのポインター。
ほとんどの場合、*pcbValueData で返される値には、文字列内の終端 の NULL 文字のサイズが含まれます。 NULL 文字が含まれていない状況については、「RegQueryValueEx」の「解説」セクションを参照してください。
戻り値
関数が成功した場合、関数は 0 以外 (TRUE) を返します。
関数が失敗した場合は、0 (FALSE) を返します。 拡張エラー情報については、 GetLastError を呼び出します。
この関数には、次のエラー コードがあります。
値 | 説明 |
---|---|
|
pbValueData パラメーターで指定されたバッファーが、返されるデータを保持するのに十分な大きさでない場合、関数はERROR_MORE_DATA コードを設定し、必要なバッファー サイズをバイト単位で pcbValueData が指す変数に格納します。 |
要件
サポートされている最小のクライアント | Windows XP [デスクトップ アプリ | UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2003 [デスクトップ アプリのみ | UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | wincrypt.h |
Library | Crypt32.lib |
[DLL] | Crypt32.dll |