CertSetCertificateContextProperty

指定した証明書コンテキストに拡張プロパティを設定する。

CertSetCertificateContextProperty pCertContext, dwPropId, dwFlags, pvData

pCertContext : [var] CERT_CONTEXT 構造体へのポインター。
dwPropId : [int] 設定するプロパティ。dwPropId の値により pvData パラメーターの型と内容が決まる。現在定義されている識別子と関連する pvData の型は次のとおり。注意: CRYPT_HASH_BLOB と CRYPT_DATA_BLOB は CRYPT_INTEGER_BLOB の項で説明されている。
dwFlags : [int] CERT_KEY_PROV_HANDLE_PROP_ID または CERT_KEY_CONTEXT_PROP_ID の dwPropId プロパティに対しては CERT_STORE_NO_CRYPT_RELEASE_FLAG を設定できる。CERT_SET_PROPERTY_IGNORE_PERSIST_ERROR_FLAG を設定した場合、プロバイダー側の書き込みエラーは無視され、キャッシュされたコンテキストのプロパティは常に設定される。CERT_SET_PROPERTY_INHIBIT_PERSIST_FLAG を設定した場合、設定したコンテキストプロパティは永続化されない。
pvData : [intptr] dwPropId の値によって決まる型のデータへのポインター。注意: いずれの dwPropId についても、pvData を NULL に設定するとそのプロパティは削除される。

(プラグイン / モジュール : crypt32.dll)

解説

指定した証明書コンテキストに拡張プロパティを設定する。

[戻り値]
関数が成功した場合、戻り値は TRUE となる。関数が失敗した場合、戻り値は FALSE となる。拡張エラー情報を取得するには
GetLastError を呼び出す。考えられるエラーコードの一つを以下に示す。
(以下省略)

[備考]

プロパティが既に存在する場合、その古い値は置き換えられる。コードはマクロを用いて証明書コンテキストのハッシュクラスを評価できる。Wincrypt.h
ヘッダーはこの目的のため次のマクロを定義している。これらは CertSetCertificateContextProperty
関数の内部で使用される。IS_CERT_HASH_PROP_ID(X) IS_PUBKEY_HASH_PROP_ID(X)
IS_CHAIN_HASH_PROP_ID(X) 各マクロは dwPropId の値 (X)
を入力として受け取り、真偽値として評価される。各マクロに対して TRUE と評価される dwPropId の値を次の表に示す。
(以下省略)

情報

プラグイン / モジュールcrypt32.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の crypt32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_crypt32_gen2.hs