Win32 API 日本語リファレンス
ホームSecurity.Cryptography.Certificates › IX509Enrollment

IX509Enrollment

COMIDispatch (デュアル)
IDispatch を実装(デュアルインターフェース)。HSP では comobj 経由でメソッド名による遅延バインド呼び出しができます(vtableインデックス不要)。
IID728ab346-217d-11da-b2a4-000e7bbb2b09継承元IDispatch呼び出し名前(IDispatch) または vtbl自前メソッド開始 vtbl7

メソッド 23

vtbl = vtable インデックス(0始まり)。IDispatch 実装のため HSP ではメソッド名でも呼べます(上記)。低レベルの index 呼び出し用に vtbl も掲載。0〜2 は IUnknown。

vtbl 7 HRESULT Initialize(X509CertificateEnrollmentContext Context)
ContextX509CertificateEnrollmentContextin登録処理を行う登録コンテキスト(ユーザー/マシン/管理者)を指定する X509CertificateEnrollmentContext 列挙値である。
vtbl 8 HRESULT InitializeFromTemplateName(X509CertificateEnrollmentContext Context, LPWSTR strTemplateName)
ContextX509CertificateEnrollmentContextin登録処理を行う登録コンテキストを指定する X509CertificateEnrollmentContext 列挙値である。
strTemplateNameLPWSTRin登録に使用する証明書テンプレートの名前を文字列で指定する。
vtbl 9 HRESULT InitializeFromRequest(IX509CertificateRequest* pRequest)
pRequestIX509CertificateRequest*inoptional登録の基にする既存の証明書要求 IX509CertificateRequest オブジェクトを渡す。
vtbl 10 HRESULT CreateRequest(EncodingType Encoding, LPWSTR* pValue)
EncodingEncodingTypein生成する要求文字列のエンコーディング種別を指定する EncodingType 列挙値である。
pValueLPWSTR*out生成された証明書要求を指定エンコーディングの文字列として受け取るポインタである。
vtbl 11 HRESULT Enroll()
vtbl 12 HRESULT InstallResponse(InstallResponseRestrictionFlags Restrictions, LPWSTR strResponse, EncodingType Encoding, LPWSTR strPassword)
RestrictionsInstallResponseRestrictionFlagsin応答のインストール時に適用する制限を指定する InstallResponseRestrictionFlags 列挙値である。
strResponseLPWSTRinCA から受け取った証明書応答を指定エンコーディングの文字列として渡す。
EncodingEncodingTypeinstrResponse のエンコーディング種別を指定する EncodingType 列挙値である。
strPasswordLPWSTRin応答に含まれる保護された情報(PFX 等)を復号するためのパスワードを文字列で指定する。
vtbl 13 HRESULT CreatePFX(LPWSTR strPassword, PFXExportOptions ExportOptions, EncodingType Encoding, LPWSTR* pValue)
strPasswordLPWSTRin生成する PFX を保護するためのパスワードを文字列で指定する。
ExportOptionsPFXExportOptionsinPFX に含める情報の範囲を指定する PFXExportOptions 列挙値である。
EncodingEncodingTypein生成する PFX 文字列のエンコーディング種別を指定する EncodingType 列挙値である。
pValueLPWSTR*out生成された PFX を指定エンコーディングの文字列として受け取るポインタである。
vtbl 14 HRESULT get_Request(IX509CertificateRequest** pValue)
pValueIX509CertificateRequest**outこの登録に関連付けられた証明書要求 IX509CertificateRequest オブジェクトを受け取るポインタである。
vtbl 15 HRESULT get_Silent(VARIANT_BOOL* pValue)
pValueVARIANT_BOOL*outサイレント(UI を抑制する)モードが有効かどうかを表す VARIANT_BOOL を受け取るポインタである。
vtbl 16 HRESULT put_Silent(VARIANT_BOOL Value)
ValueVARIANT_BOOLinUI を表示しないサイレントモードの有効・無効を VARIANT_BOOL で指定する。
vtbl 17 HRESULT get_ParentWindow(INT* pValue)
pValueINT*outUI 表示時の親ウィンドウハンドル(INT として扱う)を受け取るポインタである。
vtbl 18 HRESULT put_ParentWindow(INT Value)
ValueINTinUI 表示時の親ウィンドウハンドルを INT として指定する。
vtbl 19 HRESULT get_NameValuePairs(IX509NameValuePairs** ppValue)
ppValueIX509NameValuePairs**out登録に関連付けられた名前と値のペアのコレクション IX509NameValuePairs を受け取るポインタである。
vtbl 20 HRESULT get_EnrollmentContext(X509CertificateEnrollmentContext* pValue)
pValueX509CertificateEnrollmentContext*outこの登録の登録コンテキストを表す X509CertificateEnrollmentContext 値を受け取るポインタである。
vtbl 21 HRESULT get_Status(IX509EnrollmentStatus** ppValue)
ppValueIX509EnrollmentStatus**out登録要求の処理状態を表す IX509EnrollmentStatus オブジェクトを受け取るポインタである。
vtbl 22 HRESULT get_Certificate(EncodingType Encoding, LPWSTR* pValue)
EncodingEncodingTypein取得する証明書文字列のエンコーディング種別を指定する EncodingType 列挙値である。
pValueLPWSTR*out登録で発行された証明書を指定エンコーディングの文字列として受け取るポインタである。
vtbl 23 HRESULT get_Response(EncodingType Encoding, LPWSTR* pValue)
EncodingEncodingTypein取得する応答文字列のエンコーディング種別を指定する EncodingType 列挙値である。
pValueLPWSTR*outCA から受け取った証明書応答を指定エンコーディングの文字列として受け取るポインタである。
vtbl 24 HRESULT get_CertificateFriendlyName(LPWSTR* pValue)
pValueLPWSTR*out発行された証明書の表示名(フレンドリ名)を文字列として受け取るポインタである。
vtbl 25 HRESULT put_CertificateFriendlyName(LPWSTR strValue)
strValueLPWSTRin発行された証明書に設定する表示名(フレンドリ名)を文字列で指定する。
vtbl 26 HRESULT get_CertificateDescription(LPWSTR* pValue)
pValueLPWSTR*out発行された証明書の説明文を文字列として受け取るポインタである。
vtbl 27 HRESULT put_CertificateDescription(LPWSTR strValue)
strValueLPWSTRin発行された証明書に設定する説明文を文字列で指定する。
vtbl 28 HRESULT get_RequestId(INT* pValue)
pValueINT*outCA 上での要求 ID を表す INT を受け取るポインタである。
vtbl 29 HRESULT get_CAConfigString(LPWSTR* pValue)
pValueLPWSTR*out対象の CA を識別する構成文字列(サーバー名と CA 名)を受け取るポインタである。

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_IX509Enrollment "{728AB346-217D-11DA-B2A4-000E7BBB2B09}"
#usecom global IX509Enrollment IID_IX509Enrollment "{}"
#comfunc global IX509Enrollment_Initialize                   7 int
#comfunc global IX509Enrollment_InitializeFromTemplateName   8 int,wstr
#comfunc global IX509Enrollment_InitializeFromRequest        9 sptr
#comfunc global IX509Enrollment_CreateRequest                10 int,var
#comfunc global IX509Enrollment_Enroll                       11
#comfunc global IX509Enrollment_InstallResponse              12 int,wstr,int,wstr
#comfunc global IX509Enrollment_CreatePFX                    13 wstr,int,int,var
#comfunc global IX509Enrollment_get_Request                  14 sptr
#comfunc global IX509Enrollment_get_Silent                   15 var
#comfunc global IX509Enrollment_put_Silent                   16 int
#comfunc global IX509Enrollment_get_ParentWindow             17 var
#comfunc global IX509Enrollment_put_ParentWindow             18 int
#comfunc global IX509Enrollment_get_NameValuePairs           19 sptr
#comfunc global IX509Enrollment_get_EnrollmentContext        20 var
#comfunc global IX509Enrollment_get_Status                   21 sptr
#comfunc global IX509Enrollment_get_Certificate              22 int,var
#comfunc global IX509Enrollment_get_Response                 23 int,var
#comfunc global IX509Enrollment_get_CertificateFriendlyName  24 var
#comfunc global IX509Enrollment_put_CertificateFriendlyName  25 wstr
#comfunc global IX509Enrollment_get_CertificateDescription   26 var
#comfunc global IX509Enrollment_put_CertificateDescription   27 wstr
#comfunc global IX509Enrollment_get_RequestId                28 var
#comfunc global IX509Enrollment_get_CAConfigString           29 var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。
; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。