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

ICertAdmin2

COMIDispatch (デュアル)
IDispatch を実装(デュアルインターフェース)。HSP では comobj 経由でメソッド名による遅延バインド呼び出しができます(vtableインデックス不要)。
IIDf7c3ac41-b8ce-4fb4-aa58-3d1dc0e36b39継承元ICertAdmin呼び出し名前(IDispatch) または vtbl自前メソッド開始 vtbl17

メソッド 11

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

vtbl 17 HRESULT PublishCRLs(LPWSTR strConfig, DOUBLE Date, INT CRLFlags)
strConfigLPWSTRin対象の証明機関(CA)の構成文字列をBSTRで指定する。
DateDOUBLEin発行するCRLの次回更新予定日時を表すOLEオートメーション日付(DOUBLE)で指定する。
CRLFlagsINTin発行するCRLの種類や動作を制御するフラグを指定する。
vtbl 18 HRESULT GetCAProperty(LPWSTR strConfig, INT PropId, INT PropIndex, INT PropType, INT Flags, VARIANT* pvarPropertyValue)
strConfigLPWSTRin対象の証明機関(CA)の構成文字列をBSTRで指定する。
PropIdINTin取得するCAプロパティを識別するプロパティIDを指定する。
PropIndexINTin複数値プロパティの場合に取得する項目のインデックスを指定する。
PropTypeINTin取得するプロパティのデータ型を指定する。
FlagsINTinプロパティの取得形式を制御するフラグを指定する。
pvarPropertyValueVARIANT*out取得したCAプロパティの値を格納したVARIANTを受け取るポインタである。
vtbl 19 HRESULT SetCAProperty(LPWSTR strConfig, INT PropId, INT PropIndex, CERT_PROPERTY_TYPE PropType, VARIANT* pvarPropertyValue)
strConfigLPWSTRin対象の証明機関(CA)の構成文字列をBSTRで指定する。
PropIdINTin設定するCAプロパティを識別するプロパティIDを指定する。
PropIndexINTin複数値プロパティの場合に設定する項目のインデックスを指定する。
PropTypeCERT_PROPERTY_TYPEin設定するプロパティのデータ型(CERT_PROPERTY_TYPE)を指定する。
pvarPropertyValueVARIANT*inCAプロパティに設定する値を格納したVARIANTへのポインタである。
vtbl 20 HRESULT GetCAPropertyFlags(LPWSTR strConfig, INT PropId, INT* pPropFlags)
strConfigLPWSTRin対象の証明機関(CA)の構成文字列をBSTRで指定する。
PropIdINTinフラグを取得するCAプロパティのプロパティIDを指定する。
pPropFlagsINT*out指定したプロパティの属性を表すフラグを受け取るポインタである。
vtbl 21 HRESULT GetCAPropertyDisplayName(LPWSTR strConfig, INT PropId, LPWSTR* pstrDisplayName)
strConfigLPWSTRin対象の証明機関(CA)の構成文字列をBSTRで指定する。
PropIdINTin表示名を取得するCAプロパティのプロパティIDを指定する。
pstrDisplayNameLPWSTR*out指定したプロパティの表示名を格納した文字列を受け取るポインタである。
vtbl 22 HRESULT GetArchivedKey(LPWSTR strConfig, INT RequestId, INT Flags, LPWSTR* pstrArchivedKey)
strConfigLPWSTRin対象の証明機関(CA)の構成文字列をBSTRで指定する。
RequestIdINTinアーカイブ済み秘密鍵を取得する対象の要求IDを指定する。
FlagsINTin鍵の取得形式を制御するフラグを指定する。
pstrArchivedKeyLPWSTR*out取得したアーカイブ済み秘密鍵(PKCS#7エンベロープ)を格納した文字列を受け取るポインタである。
vtbl 23 HRESULT GetConfigEntry(LPWSTR strConfig, LPWSTR strNodePath, LPWSTR strEntryName, VARIANT* pvarEntry)
strConfigLPWSTRin対象の証明機関(CA)の構成文字列をBSTRで指定する。
strNodePathLPWSTRin構成エントリが格納されているノードのパスをBSTRで指定する。
strEntryNameLPWSTRin取得する構成エントリの名前をBSTRで指定する。
pvarEntryVARIANT*out取得した構成エントリの値を格納したVARIANTを受け取るポインタである。
vtbl 24 HRESULT SetConfigEntry(LPWSTR strConfig, LPWSTR strNodePath, LPWSTR strEntryName, VARIANT* pvarEntry)
strConfigLPWSTRin対象の証明機関(CA)の構成文字列をBSTRで指定する。
strNodePathLPWSTRin構成エントリを格納するノードのパスをBSTRで指定する。
strEntryNameLPWSTRin設定する構成エントリの名前をBSTRで指定する。
pvarEntryVARIANT*in構成エントリに設定する値を格納したVARIANTへのポインタである。
vtbl 25 HRESULT ImportKey(LPWSTR strConfig, INT RequestId, LPWSTR strCertHash, CERT_IMPORT_FLAGS Flags, LPWSTR strKey)
strConfigLPWSTRin対象の証明機関(CA)の構成文字列をBSTRで指定する。
RequestIdINTin鍵を関連付ける対象の要求IDを指定する。
strCertHashLPWSTRin鍵をアーカイブする証明書のハッシュをBSTRで指定する。
FlagsCERT_IMPORT_FLAGSin鍵のインポート動作を制御するフラグ(CERT_IMPORT_FLAGS)を指定する。
strKeyLPWSTRinインポートする秘密鍵(エンコード済み)をBSTRで指定する。
vtbl 26 HRESULT GetMyRoles(LPWSTR strConfig, CERTADMIN_GET_ROLES_FLAGS* pRoles)
strConfigLPWSTRin対象の証明機関(CA)の構成文字列をBSTRで指定する。
pRolesCERTADMIN_GET_ROLES_FLAGS*out呼び出し元に付与されているCA管理ロール(CERTADMIN_GET_ROLES_FLAGS)を受け取るポインタである。
vtbl 27 HRESULT DeleteRow(LPWSTR strConfig, CERT_DELETE_ROW_FLAGS Flags, DOUBLE Date, CVRC_TABLE Table, INT RowId, INT* pcDeleted)
strConfigLPWSTRin対象の証明機関(CA)の構成文字列をBSTRで指定する。
FlagsCERT_DELETE_ROW_FLAGSin行の削除条件を制御するフラグ(CERT_DELETE_ROW_FLAGS)を指定する。
DateDOUBLEin削除対象を絞り込む基準日時を表すOLEオートメーション日付(DOUBLE)で指定する。
TableCVRC_TABLEin行を削除する対象のデータベーステーブル(CVRC_TABLE)を指定する。
RowIdINTin削除する特定の行のIDを指定する。0の場合は日付条件で削除する。
pcDeletedINT*out実際に削除された行の数を受け取るポインタである。

HSP用 COM定義

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

出力引数:
#define global IID_ICertAdmin2 "{F7C3AC41-B8CE-4FB4-AA58-3D1DC0E36B39}"
#usecom global ICertAdmin2 IID_ICertAdmin2 "{}"
#comfunc global ICertAdmin2_PublishCRLs               17 wstr,double,int
#comfunc global ICertAdmin2_GetCAProperty             18 wstr,int,int,int,int,var
#comfunc global ICertAdmin2_SetCAProperty             19 wstr,int,int,int,var
#comfunc global ICertAdmin2_GetCAPropertyFlags        20 wstr,int,var
#comfunc global ICertAdmin2_GetCAPropertyDisplayName  21 wstr,int,var
#comfunc global ICertAdmin2_GetArchivedKey            22 wstr,int,int,var
#comfunc global ICertAdmin2_GetConfigEntry            23 wstr,wstr,wstr,var
#comfunc global ICertAdmin2_SetConfigEntry            24 wstr,wstr,wstr,var
#comfunc global ICertAdmin2_ImportKey                 25 wstr,int,wstr,int,wstr
#comfunc global ICertAdmin2_GetMyRoles                26 wstr,var
#comfunc global ICertAdmin2_DeleteRow                 27 wstr,int,double,int,int,var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。