CryptMsgSignCTL 関数は、符号化された CTL を含む署名済みメッセージを作成する。
CryptMsgSignCTL dwMsgEncodingType, pbCtlContent, cbCtlContent, pSignInfo, dwFlags, pbEncoded, pcbEncoded
dwMsgEncodingType : [int] 使用するエンコーディングの型を指定する。証明書とメッセージのエンコーディング型の両方をビットごとの OR 演算で組み合わせて指定することも常に許容される。例: X509_ASN_ENCODING | PKCS_7_ASN_ENCODING。現在定義されているエンコーディング型は次のとおり。 pbCtlContent : [var] 符号化された CTL_INFO。CTL_CONTEXT 構造体のメンバであるか、CryptEncodeObject 関数を使用して作成されたものでもよい。 cbCtlContent : [int] pbCtlContent が指すコンテンツのサイズ (バイト単位)。 pSignInfo : [var] CMSG_SIGNER_ENCODE_INFO 構造体の配列を含む CMSG_SIGNED_ENCODE_INFO 構造体へのポインタ。構造体の cbSize メンバを構造体のサイズに設定し、他のすべてのメンバを 0 に設定すると、署名者なしでメッセージを符号化することができる。 dwFlags : [int] CMS_PKCS7 が定義されている場合、CMSG_CMS_ENCAPSULATED_CTL_FLAG に設定して、CMS 互換の V3 SignedData メッセージを符号化することができる。 pbEncoded : [var] 符号化されたメッセージを受け取るバッファへのポインタ。メモリ割り当て目的でこの情報のサイズを取得するには、このパラメータを NULL にできる。詳細は Retrieving Data of Unknown Length を参照。 pcbEncoded : [var] pbEncoded バッファのサイズ (バイト単位) を指定する DWORD へのポインタ。関数が戻ると、DWORD にはバッファに格納された、または格納されるバイト数が含まれる。
(プラグイン / モジュール : crypt32.dll)
CryptMsgSignCTL 関数は、符号化された CTL を含む署名済みメッセージを作成する。 [戻り値] 関数が成功した場合、戻り値は 0 以外 (TRUE)。関数が失敗した場合は 0 (FALSE) を返す。拡張エラー情報を取得するには GetLastError を呼び出す。この関数は CryptMsgOpenToEncode および CryptMsgUpdate の呼び出しから伝播したエラーを返すことがある。
| プラグイン / モジュール | crypt32.dll |
| バージョン | 1.0 |
| 作成日 | 2026/04/16 |
| 著作者 | IronHSP / CsWin32 bridge |
| URL | https://github.com/inovia/IronHSP |
| 備考 | Win32 API の crypt32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。 |
| タイプ | 拡張命令 |
| グループ | Win32API |
| 対応環境 |
|
| hs ファイル | hsphelp\win32_crypt32_gen2.hs |