CertAdm.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:37k
源码类别:

模拟服务器

开发平台:

C/C++

  1. #pragma warning( disable: 4049 )  /* more than 64k source lines */
  2. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  3.  /* File created by MIDL compiler version 6.00.0347 */
  4. /* Compiler settings for certadm.idl:
  5.     Oicf, W1, Zp8, env=Win32 (32b run)
  6.     protocol : dce , ms_ext, c_ext, robust
  7.     error checks: allocation ref bounds_check enum stub_data 
  8.     VC __declspec() decoration level: 
  9.          __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  10.          DECLSPEC_UUID(), MIDL_INTERFACE()
  11. */
  12. //@@MIDL_FILE_HEADING(  )
  13. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  14. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  15. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  16. #endif
  17. #include "rpc.h"
  18. #include "rpcndr.h"
  19. #ifndef __RPCNDR_H_VERSION__
  20. #error this stub requires an updated version of <rpcndr.h>
  21. #endif // __RPCNDR_H_VERSION__
  22. #ifndef COM_NO_WINDOWS_H
  23. #include "windows.h"
  24. #include "ole2.h"
  25. #endif /*COM_NO_WINDOWS_H*/
  26. #ifndef __certadm_h__
  27. #define __certadm_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */ 
  32. #ifndef __ICertAdmin_FWD_DEFINED__
  33. #define __ICertAdmin_FWD_DEFINED__
  34. typedef interface ICertAdmin ICertAdmin;
  35. #endif  /* __ICertAdmin_FWD_DEFINED__ */
  36. #ifndef __ICertAdmin2_FWD_DEFINED__
  37. #define __ICertAdmin2_FWD_DEFINED__
  38. typedef interface ICertAdmin2 ICertAdmin2;
  39. #endif  /* __ICertAdmin2_FWD_DEFINED__ */
  40. #ifndef __CCertAdmin_FWD_DEFINED__
  41. #define __CCertAdmin_FWD_DEFINED__
  42. #ifdef __cplusplus
  43. typedef class CCertAdmin CCertAdmin;
  44. #else
  45. typedef struct CCertAdmin CCertAdmin;
  46. #endif /* __cplusplus */
  47. #endif  /* __CCertAdmin_FWD_DEFINED__ */
  48. #ifndef __CCertView_FWD_DEFINED__
  49. #define __CCertView_FWD_DEFINED__
  50. #ifdef __cplusplus
  51. typedef class CCertView CCertView;
  52. #else
  53. typedef struct CCertView CCertView;
  54. #endif /* __cplusplus */
  55. #endif  /* __CCertView_FWD_DEFINED__ */
  56. /* header files for imported files */
  57. #include "wtypes.h"
  58. #include "certview.h"
  59. #ifdef __cplusplus
  60. extern "C"{
  61. #endif 
  62. void * __RPC_USER MIDL_user_allocate(size_t);
  63. void __RPC_USER MIDL_user_free( void * ); 
  64. /* interface __MIDL_itf_certadm_0000 */
  65. /* [local] */ 
  66. #define CA_DISP_INCOMPLETE ( 0 )
  67. #define CA_DISP_ERROR ( 0x1 )
  68. #define CA_DISP_REVOKED ( 0x2 )
  69. #define CA_DISP_VALID ( 0x3 )
  70. #define CA_DISP_INVALID ( 0x4 )
  71. #define CA_DISP_UNDER_SUBMISSION ( 0x5 )
  72. #define KRA_DISP_EXPIRED ( 0 )
  73. #define KRA_DISP_NOTFOUND ( 0x1 )
  74. #define KRA_DISP_REVOKED ( 0x2 )
  75. #define KRA_DISP_VALID ( 0x3 )
  76. #define KRA_DISP_INVALID ( 0x4 )
  77. #define KRA_DISP_UNTRUSTED ( 0x5 )
  78. #define KRA_DISP_NOTLOADED ( 0x6 )
  79. #define CA_ACCESS_ADMIN ( 0x1 )
  80. #define CA_ACCESS_OFFICER ( 0x2 )
  81. #define CA_ACCESS_AUDITOR ( 0x4 )
  82. #define CA_ACCESS_OPERATOR ( 0x8 )
  83. #define CA_ACCESS_MASKROLES ( 0xff )
  84. #define CA_ACCESS_READ ( 0x100 )
  85. #define CA_ACCESS_ENROLL ( 0x200 )
  86. extern RPC_IF_HANDLE __MIDL_itf_certadm_0000_v0_0_c_ifspec;
  87. extern RPC_IF_HANDLE __MIDL_itf_certadm_0000_v0_0_s_ifspec;
  88. #ifndef __ICertAdmin_INTERFACE_DEFINED__
  89. #define __ICertAdmin_INTERFACE_DEFINED__
  90. /* interface ICertAdmin */
  91. /* [unique][helpstring][dual][uuid][object] */ 
  92. EXTERN_C const IID IID_ICertAdmin;
  93. #if defined(__cplusplus) && !defined(CINTERFACE)
  94.     
  95.     MIDL_INTERFACE("34df6950-7fb6-11d0-8817-00a0c903b83c")
  96.     ICertAdmin : public IDispatch
  97.     {
  98.     public:
  99.         virtual HRESULT STDMETHODCALLTYPE IsValidCertificate( 
  100.             /* [in] */ const BSTR strConfig,
  101.             /* [in] */ const BSTR strSerialNumber,
  102.             /* [retval][out] */ LONG *pDisposition) = 0;
  103.         
  104.         virtual HRESULT STDMETHODCALLTYPE GetRevocationReason( 
  105.             /* [retval][out] */ LONG *pReason) = 0;
  106.         
  107.         virtual HRESULT STDMETHODCALLTYPE RevokeCertificate( 
  108.             /* [in] */ const BSTR strConfig,
  109.             /* [in] */ const BSTR strSerialNumber,
  110.             /* [in] */ LONG Reason,
  111.             /* [in] */ DATE Date) = 0;
  112.         
  113.         virtual HRESULT STDMETHODCALLTYPE SetRequestAttributes( 
  114.             /* [in] */ const BSTR strConfig,
  115.             /* [in] */ LONG RequestId,
  116.             /* [in] */ const BSTR strAttributes) = 0;
  117.         
  118.         virtual HRESULT STDMETHODCALLTYPE SetCertificateExtension( 
  119.             /* [in] */ const BSTR strConfig,
  120.             /* [in] */ LONG RequestId,
  121.             /* [in] */ const BSTR strExtensionName,
  122.             /* [in] */ LONG Type,
  123.             /* [in] */ LONG Flags,
  124.             /* [in] */ const VARIANT *pvarValue) = 0;
  125.         
  126.         virtual HRESULT STDMETHODCALLTYPE DenyRequest( 
  127.             /* [in] */ const BSTR strConfig,
  128.             /* [in] */ LONG RequestId) = 0;
  129.         
  130.         virtual HRESULT STDMETHODCALLTYPE ResubmitRequest( 
  131.             /* [in] */ const BSTR strConfig,
  132.             /* [in] */ LONG RequestId,
  133.             /* [retval][out] */ LONG *pDisposition) = 0;
  134.         
  135.         virtual HRESULT STDMETHODCALLTYPE PublishCRL( 
  136.             /* [in] */ const BSTR strConfig,
  137.             /* [in] */ DATE Date) = 0;
  138.         
  139.         virtual HRESULT STDMETHODCALLTYPE GetCRL( 
  140.             /* [in] */ const BSTR strConfig,
  141.             /* [in] */ LONG Flags,
  142.             /* [retval][out] */ BSTR *pstrCRL) = 0;
  143.         
  144.         virtual HRESULT STDMETHODCALLTYPE ImportCertificate( 
  145.             /* [in] */ const BSTR strConfig,
  146.             /* [in] */ const BSTR strCertificate,
  147.             /* [in] */ LONG Flags,
  148.             /* [retval][out] */ LONG *pRequestId) = 0;
  149.         
  150.     };
  151.     
  152. #else  /* C style interface */
  153.     typedef struct ICertAdminVtbl
  154.     {
  155.         BEGIN_INTERFACE
  156.         
  157.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  158.             ICertAdmin * This,
  159.             /* [in] */ REFIID riid,
  160.             /* [iid_is][out] */ void **ppvObject);
  161.         
  162.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  163.             ICertAdmin * This);
  164.         
  165.         ULONG ( STDMETHODCALLTYPE *Release )( 
  166.             ICertAdmin * This);
  167.         
  168.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  169.             ICertAdmin * This,
  170.             /* [out] */ UINT *pctinfo);
  171.         
  172.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  173.             ICertAdmin * This,
  174.             /* [in] */ UINT iTInfo,
  175.             /* [in] */ LCID lcid,
  176.             /* [out] */ ITypeInfo **ppTInfo);
  177.         
  178.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  179.             ICertAdmin * This,
  180.             /* [in] */ REFIID riid,
  181.             /* [size_is][in] */ LPOLESTR *rgszNames,
  182.             /* [in] */ UINT cNames,
  183.             /* [in] */ LCID lcid,
  184.             /* [size_is][out] */ DISPID *rgDispId);
  185.         
  186.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  187.             ICertAdmin * This,
  188.             /* [in] */ DISPID dispIdMember,
  189.             /* [in] */ REFIID riid,
  190.             /* [in] */ LCID lcid,
  191.             /* [in] */ WORD wFlags,
  192.             /* [out][in] */ DISPPARAMS *pDispParams,
  193.             /* [out] */ VARIANT *pVarResult,
  194.             /* [out] */ EXCEPINFO *pExcepInfo,
  195.             /* [out] */ UINT *puArgErr);
  196.         
  197.         HRESULT ( STDMETHODCALLTYPE *IsValidCertificate )( 
  198.             ICertAdmin * This,
  199.             /* [in] */ const BSTR strConfig,
  200.             /* [in] */ const BSTR strSerialNumber,
  201.             /* [retval][out] */ LONG *pDisposition);
  202.         
  203.         HRESULT ( STDMETHODCALLTYPE *GetRevocationReason )( 
  204.             ICertAdmin * This,
  205.             /* [retval][out] */ LONG *pReason);
  206.         
  207.         HRESULT ( STDMETHODCALLTYPE *RevokeCertificate )( 
  208.             ICertAdmin * This,
  209.             /* [in] */ const BSTR strConfig,
  210.             /* [in] */ const BSTR strSerialNumber,
  211.             /* [in] */ LONG Reason,
  212.             /* [in] */ DATE Date);
  213.         
  214.         HRESULT ( STDMETHODCALLTYPE *SetRequestAttributes )( 
  215.             ICertAdmin * This,
  216.             /* [in] */ const BSTR strConfig,
  217.             /* [in] */ LONG RequestId,
  218.             /* [in] */ const BSTR strAttributes);
  219.         
  220.         HRESULT ( STDMETHODCALLTYPE *SetCertificateExtension )( 
  221.             ICertAdmin * This,
  222.             /* [in] */ const BSTR strConfig,
  223.             /* [in] */ LONG RequestId,
  224.             /* [in] */ const BSTR strExtensionName,
  225.             /* [in] */ LONG Type,
  226.             /* [in] */ LONG Flags,
  227.             /* [in] */ const VARIANT *pvarValue);
  228.         
  229.         HRESULT ( STDMETHODCALLTYPE *DenyRequest )( 
  230.             ICertAdmin * This,
  231.             /* [in] */ const BSTR strConfig,
  232.             /* [in] */ LONG RequestId);
  233.         
  234.         HRESULT ( STDMETHODCALLTYPE *ResubmitRequest )( 
  235.             ICertAdmin * This,
  236.             /* [in] */ const BSTR strConfig,
  237.             /* [in] */ LONG RequestId,
  238.             /* [retval][out] */ LONG *pDisposition);
  239.         
  240.         HRESULT ( STDMETHODCALLTYPE *PublishCRL )( 
  241.             ICertAdmin * This,
  242.             /* [in] */ const BSTR strConfig,
  243.             /* [in] */ DATE Date);
  244.         
  245.         HRESULT ( STDMETHODCALLTYPE *GetCRL )( 
  246.             ICertAdmin * This,
  247.             /* [in] */ const BSTR strConfig,
  248.             /* [in] */ LONG Flags,
  249.             /* [retval][out] */ BSTR *pstrCRL);
  250.         
  251.         HRESULT ( STDMETHODCALLTYPE *ImportCertificate )( 
  252.             ICertAdmin * This,
  253.             /* [in] */ const BSTR strConfig,
  254.             /* [in] */ const BSTR strCertificate,
  255.             /* [in] */ LONG Flags,
  256.             /* [retval][out] */ LONG *pRequestId);
  257.         
  258.         END_INTERFACE
  259.     } ICertAdminVtbl;
  260.     interface ICertAdmin
  261.     {
  262.         CONST_VTBL struct ICertAdminVtbl *lpVtbl;
  263.     };
  264.     
  265. #ifdef COBJMACROS
  266. #define ICertAdmin_QueryInterface(This,riid,ppvObject)
  267.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  268. #define ICertAdmin_AddRef(This)
  269.     (This)->lpVtbl -> AddRef(This)
  270. #define ICertAdmin_Release(This)
  271.     (This)->lpVtbl -> Release(This)
  272. #define ICertAdmin_GetTypeInfoCount(This,pctinfo)
  273.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  274. #define ICertAdmin_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  275.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  276. #define ICertAdmin_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  277.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  278. #define ICertAdmin_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  279.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  280. #define ICertAdmin_IsValidCertificate(This,strConfig,strSerialNumber,pDisposition)
  281.     (This)->lpVtbl -> IsValidCertificate(This,strConfig,strSerialNumber,pDisposition)
  282. #define ICertAdmin_GetRevocationReason(This,pReason)
  283.     (This)->lpVtbl -> GetRevocationReason(This,pReason)
  284. #define ICertAdmin_RevokeCertificate(This,strConfig,strSerialNumber,Reason,Date)
  285.     (This)->lpVtbl -> RevokeCertificate(This,strConfig,strSerialNumber,Reason,Date)
  286. #define ICertAdmin_SetRequestAttributes(This,strConfig,RequestId,strAttributes)
  287.     (This)->lpVtbl -> SetRequestAttributes(This,strConfig,RequestId,strAttributes)
  288. #define ICertAdmin_SetCertificateExtension(This,strConfig,RequestId,strExtensionName,Type,Flags,pvarValue)
  289.     (This)->lpVtbl -> SetCertificateExtension(This,strConfig,RequestId,strExtensionName,Type,Flags,pvarValue)
  290. #define ICertAdmin_DenyRequest(This,strConfig,RequestId)
  291.     (This)->lpVtbl -> DenyRequest(This,strConfig,RequestId)
  292. #define ICertAdmin_ResubmitRequest(This,strConfig,RequestId,pDisposition)
  293.     (This)->lpVtbl -> ResubmitRequest(This,strConfig,RequestId,pDisposition)
  294. #define ICertAdmin_PublishCRL(This,strConfig,Date)
  295.     (This)->lpVtbl -> PublishCRL(This,strConfig,Date)
  296. #define ICertAdmin_GetCRL(This,strConfig,Flags,pstrCRL)
  297.     (This)->lpVtbl -> GetCRL(This,strConfig,Flags,pstrCRL)
  298. #define ICertAdmin_ImportCertificate(This,strConfig,strCertificate,Flags,pRequestId)
  299.     (This)->lpVtbl -> ImportCertificate(This,strConfig,strCertificate,Flags,pRequestId)
  300. #endif /* COBJMACROS */
  301. #endif  /* C style interface */
  302. HRESULT STDMETHODCALLTYPE ICertAdmin_IsValidCertificate_Proxy( 
  303.     ICertAdmin * This,
  304.     /* [in] */ const BSTR strConfig,
  305.     /* [in] */ const BSTR strSerialNumber,
  306.     /* [retval][out] */ LONG *pDisposition);
  307. void __RPC_STUB ICertAdmin_IsValidCertificate_Stub(
  308.     IRpcStubBuffer *This,
  309.     IRpcChannelBuffer *_pRpcChannelBuffer,
  310.     PRPC_MESSAGE _pRpcMessage,
  311.     DWORD *_pdwStubPhase);
  312. HRESULT STDMETHODCALLTYPE ICertAdmin_GetRevocationReason_Proxy( 
  313.     ICertAdmin * This,
  314.     /* [retval][out] */ LONG *pReason);
  315. void __RPC_STUB ICertAdmin_GetRevocationReason_Stub(
  316.     IRpcStubBuffer *This,
  317.     IRpcChannelBuffer *_pRpcChannelBuffer,
  318.     PRPC_MESSAGE _pRpcMessage,
  319.     DWORD *_pdwStubPhase);
  320. HRESULT STDMETHODCALLTYPE ICertAdmin_RevokeCertificate_Proxy( 
  321.     ICertAdmin * This,
  322.     /* [in] */ const BSTR strConfig,
  323.     /* [in] */ const BSTR strSerialNumber,
  324.     /* [in] */ LONG Reason,
  325.     /* [in] */ DATE Date);
  326. void __RPC_STUB ICertAdmin_RevokeCertificate_Stub(
  327.     IRpcStubBuffer *This,
  328.     IRpcChannelBuffer *_pRpcChannelBuffer,
  329.     PRPC_MESSAGE _pRpcMessage,
  330.     DWORD *_pdwStubPhase);
  331. HRESULT STDMETHODCALLTYPE ICertAdmin_SetRequestAttributes_Proxy( 
  332.     ICertAdmin * This,
  333.     /* [in] */ const BSTR strConfig,
  334.     /* [in] */ LONG RequestId,
  335.     /* [in] */ const BSTR strAttributes);
  336. void __RPC_STUB ICertAdmin_SetRequestAttributes_Stub(
  337.     IRpcStubBuffer *This,
  338.     IRpcChannelBuffer *_pRpcChannelBuffer,
  339.     PRPC_MESSAGE _pRpcMessage,
  340.     DWORD *_pdwStubPhase);
  341. HRESULT STDMETHODCALLTYPE ICertAdmin_SetCertificateExtension_Proxy( 
  342.     ICertAdmin * This,
  343.     /* [in] */ const BSTR strConfig,
  344.     /* [in] */ LONG RequestId,
  345.     /* [in] */ const BSTR strExtensionName,
  346.     /* [in] */ LONG Type,
  347.     /* [in] */ LONG Flags,
  348.     /* [in] */ const VARIANT *pvarValue);
  349. void __RPC_STUB ICertAdmin_SetCertificateExtension_Stub(
  350.     IRpcStubBuffer *This,
  351.     IRpcChannelBuffer *_pRpcChannelBuffer,
  352.     PRPC_MESSAGE _pRpcMessage,
  353.     DWORD *_pdwStubPhase);
  354. HRESULT STDMETHODCALLTYPE ICertAdmin_DenyRequest_Proxy( 
  355.     ICertAdmin * This,
  356.     /* [in] */ const BSTR strConfig,
  357.     /* [in] */ LONG RequestId);
  358. void __RPC_STUB ICertAdmin_DenyRequest_Stub(
  359.     IRpcStubBuffer *This,
  360.     IRpcChannelBuffer *_pRpcChannelBuffer,
  361.     PRPC_MESSAGE _pRpcMessage,
  362.     DWORD *_pdwStubPhase);
  363. HRESULT STDMETHODCALLTYPE ICertAdmin_ResubmitRequest_Proxy( 
  364.     ICertAdmin * This,
  365.     /* [in] */ const BSTR strConfig,
  366.     /* [in] */ LONG RequestId,
  367.     /* [retval][out] */ LONG *pDisposition);
  368. void __RPC_STUB ICertAdmin_ResubmitRequest_Stub(
  369.     IRpcStubBuffer *This,
  370.     IRpcChannelBuffer *_pRpcChannelBuffer,
  371.     PRPC_MESSAGE _pRpcMessage,
  372.     DWORD *_pdwStubPhase);
  373. HRESULT STDMETHODCALLTYPE ICertAdmin_PublishCRL_Proxy( 
  374.     ICertAdmin * This,
  375.     /* [in] */ const BSTR strConfig,
  376.     /* [in] */ DATE Date);
  377. void __RPC_STUB ICertAdmin_PublishCRL_Stub(
  378.     IRpcStubBuffer *This,
  379.     IRpcChannelBuffer *_pRpcChannelBuffer,
  380.     PRPC_MESSAGE _pRpcMessage,
  381.     DWORD *_pdwStubPhase);
  382. HRESULT STDMETHODCALLTYPE ICertAdmin_GetCRL_Proxy( 
  383.     ICertAdmin * This,
  384.     /* [in] */ const BSTR strConfig,
  385.     /* [in] */ LONG Flags,
  386.     /* [retval][out] */ BSTR *pstrCRL);
  387. void __RPC_STUB ICertAdmin_GetCRL_Stub(
  388.     IRpcStubBuffer *This,
  389.     IRpcChannelBuffer *_pRpcChannelBuffer,
  390.     PRPC_MESSAGE _pRpcMessage,
  391.     DWORD *_pdwStubPhase);
  392. HRESULT STDMETHODCALLTYPE ICertAdmin_ImportCertificate_Proxy( 
  393.     ICertAdmin * This,
  394.     /* [in] */ const BSTR strConfig,
  395.     /* [in] */ const BSTR strCertificate,
  396.     /* [in] */ LONG Flags,
  397.     /* [retval][out] */ LONG *pRequestId);
  398. void __RPC_STUB ICertAdmin_ImportCertificate_Stub(
  399.     IRpcStubBuffer *This,
  400.     IRpcChannelBuffer *_pRpcChannelBuffer,
  401.     PRPC_MESSAGE _pRpcMessage,
  402.     DWORD *_pdwStubPhase);
  403. #endif  /* __ICertAdmin_INTERFACE_DEFINED__ */
  404. /* interface __MIDL_itf_certadm_0124 */
  405. /* [local] */ 
  406. #define CA_CRL_BASE ( 0x1 )
  407. #define CA_CRL_DELTA ( 0x2 )
  408. #define CA_CRL_REPUBLISH ( 0x10 )
  409. #define ICF_ALLOWFOREIGN ( 0x10000 )
  410. #define IKF_OVERWRITE ( 0x10000 )
  411. #define CDR_EXPIRED ( 1 )
  412. #define CDR_REQUEST_LAST_CHANGED ( 2 )
  413. extern RPC_IF_HANDLE __MIDL_itf_certadm_0124_v0_0_c_ifspec;
  414. extern RPC_IF_HANDLE __MIDL_itf_certadm_0124_v0_0_s_ifspec;
  415. #ifndef __ICertAdmin2_INTERFACE_DEFINED__
  416. #define __ICertAdmin2_INTERFACE_DEFINED__
  417. /* interface ICertAdmin2 */
  418. /* [unique][helpstring][dual][uuid][object] */ 
  419. EXTERN_C const IID IID_ICertAdmin2;
  420. #if defined(__cplusplus) && !defined(CINTERFACE)
  421.     
  422.     MIDL_INTERFACE("f7c3ac41-b8ce-4fb4-aa58-3d1dc0e36b39")
  423.     ICertAdmin2 : public ICertAdmin
  424.     {
  425.     public:
  426.         virtual HRESULT STDMETHODCALLTYPE PublishCRLs( 
  427.             /* [in] */ const BSTR strConfig,
  428.             /* [in] */ DATE Date,
  429.             /* [in] */ LONG CRLFlags) = 0;
  430.         
  431.         virtual HRESULT STDMETHODCALLTYPE GetCAProperty( 
  432.             /* [in] */ const BSTR strConfig,
  433.             /* [in] */ LONG PropId,
  434.             /* [in] */ LONG PropIndex,
  435.             /* [in] */ LONG PropType,
  436.             /* [in] */ LONG Flags,
  437.             /* [retval][out] */ VARIANT *pvarPropertyValue) = 0;
  438.         
  439.         virtual HRESULT STDMETHODCALLTYPE SetCAProperty( 
  440.             /* [in] */ const BSTR strConfig,
  441.             /* [in] */ LONG PropId,
  442.             /* [in] */ LONG PropIndex,
  443.             /* [in] */ LONG PropType,
  444.             /* [in] */ VARIANT *pvarPropertyValue) = 0;
  445.         
  446.         virtual HRESULT STDMETHODCALLTYPE GetCAPropertyFlags( 
  447.             /* [in] */ const BSTR strConfig,
  448.             /* [in] */ LONG PropId,
  449.             /* [retval][out] */ LONG *pPropFlags) = 0;
  450.         
  451.         virtual HRESULT STDMETHODCALLTYPE GetCAPropertyDisplayName( 
  452.             /* [in] */ const BSTR strConfig,
  453.             /* [in] */ LONG PropId,
  454.             /* [retval][out] */ BSTR *pstrDisplayName) = 0;
  455.         
  456.         virtual HRESULT STDMETHODCALLTYPE GetArchivedKey( 
  457.             /* [in] */ const BSTR strConfig,
  458.             /* [in] */ LONG RequestId,
  459.             /* [in] */ LONG Flags,
  460.             /* [retval][out] */ BSTR *pstrArchivedKey) = 0;
  461.         
  462.         virtual HRESULT STDMETHODCALLTYPE GetConfigEntry( 
  463.             /* [in] */ const BSTR strConfig,
  464.             /* [in] */ const BSTR strNodePath,
  465.             /* [in] */ const BSTR strEntryName,
  466.             /* [retval][out] */ VARIANT *pvarEntry) = 0;
  467.         
  468.         virtual HRESULT STDMETHODCALLTYPE SetConfigEntry( 
  469.             /* [in] */ const BSTR strConfig,
  470.             /* [in] */ const BSTR strNodePath,
  471.             /* [in] */ const BSTR strEntryName,
  472.             /* [in] */ VARIANT *pvarEntry) = 0;
  473.         
  474.         virtual HRESULT STDMETHODCALLTYPE ImportKey( 
  475.             /* [in] */ const BSTR strConfig,
  476.             /* [in] */ LONG RequestId,
  477.             /* [in] */ const BSTR strCertHash,
  478.             /* [in] */ LONG Flags,
  479.             /* [in] */ const BSTR strKey) = 0;
  480.         
  481.         virtual HRESULT STDMETHODCALLTYPE GetMyRoles( 
  482.             /* [in] */ const BSTR strConfig,
  483.             /* [retval][out] */ LONG *pRoles) = 0;
  484.         
  485.         virtual HRESULT STDMETHODCALLTYPE DeleteRow( 
  486.             /* [in] */ const BSTR strConfig,
  487.             /* [in] */ LONG Flags,
  488.             /* [in] */ DATE Date,
  489.             /* [in] */ LONG Table,
  490.             /* [in] */ LONG RowId,
  491.             /* [retval][out] */ LONG *pcDeleted) = 0;
  492.         
  493.     };
  494.     
  495. #else  /* C style interface */
  496.     typedef struct ICertAdmin2Vtbl
  497.     {
  498.         BEGIN_INTERFACE
  499.         
  500.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  501.             ICertAdmin2 * This,
  502.             /* [in] */ REFIID riid,
  503.             /* [iid_is][out] */ void **ppvObject);
  504.         
  505.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  506.             ICertAdmin2 * This);
  507.         
  508.         ULONG ( STDMETHODCALLTYPE *Release )( 
  509.             ICertAdmin2 * This);
  510.         
  511.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  512.             ICertAdmin2 * This,
  513.             /* [out] */ UINT *pctinfo);
  514.         
  515.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  516.             ICertAdmin2 * This,
  517.             /* [in] */ UINT iTInfo,
  518.             /* [in] */ LCID lcid,
  519.             /* [out] */ ITypeInfo **ppTInfo);
  520.         
  521.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  522.             ICertAdmin2 * This,
  523.             /* [in] */ REFIID riid,
  524.             /* [size_is][in] */ LPOLESTR *rgszNames,
  525.             /* [in] */ UINT cNames,
  526.             /* [in] */ LCID lcid,
  527.             /* [size_is][out] */ DISPID *rgDispId);
  528.         
  529.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  530.             ICertAdmin2 * This,
  531.             /* [in] */ DISPID dispIdMember,
  532.             /* [in] */ REFIID riid,
  533.             /* [in] */ LCID lcid,
  534.             /* [in] */ WORD wFlags,
  535.             /* [out][in] */ DISPPARAMS *pDispParams,
  536.             /* [out] */ VARIANT *pVarResult,
  537.             /* [out] */ EXCEPINFO *pExcepInfo,
  538.             /* [out] */ UINT *puArgErr);
  539.         
  540.         HRESULT ( STDMETHODCALLTYPE *IsValidCertificate )( 
  541.             ICertAdmin2 * This,
  542.             /* [in] */ const BSTR strConfig,
  543.             /* [in] */ const BSTR strSerialNumber,
  544.             /* [retval][out] */ LONG *pDisposition);
  545.         
  546.         HRESULT ( STDMETHODCALLTYPE *GetRevocationReason )( 
  547.             ICertAdmin2 * This,
  548.             /* [retval][out] */ LONG *pReason);
  549.         
  550.         HRESULT ( STDMETHODCALLTYPE *RevokeCertificate )( 
  551.             ICertAdmin2 * This,
  552.             /* [in] */ const BSTR strConfig,
  553.             /* [in] */ const BSTR strSerialNumber,
  554.             /* [in] */ LONG Reason,
  555.             /* [in] */ DATE Date);
  556.         
  557.         HRESULT ( STDMETHODCALLTYPE *SetRequestAttributes )( 
  558.             ICertAdmin2 * This,
  559.             /* [in] */ const BSTR strConfig,
  560.             /* [in] */ LONG RequestId,
  561.             /* [in] */ const BSTR strAttributes);
  562.         
  563.         HRESULT ( STDMETHODCALLTYPE *SetCertificateExtension )( 
  564.             ICertAdmin2 * This,
  565.             /* [in] */ const BSTR strConfig,
  566.             /* [in] */ LONG RequestId,
  567.             /* [in] */ const BSTR strExtensionName,
  568.             /* [in] */ LONG Type,
  569.             /* [in] */ LONG Flags,
  570.             /* [in] */ const VARIANT *pvarValue);
  571.         
  572.         HRESULT ( STDMETHODCALLTYPE *DenyRequest )( 
  573.             ICertAdmin2 * This,
  574.             /* [in] */ const BSTR strConfig,
  575.             /* [in] */ LONG RequestId);
  576.         
  577.         HRESULT ( STDMETHODCALLTYPE *ResubmitRequest )( 
  578.             ICertAdmin2 * This,
  579.             /* [in] */ const BSTR strConfig,
  580.             /* [in] */ LONG RequestId,
  581.             /* [retval][out] */ LONG *pDisposition);
  582.         
  583.         HRESULT ( STDMETHODCALLTYPE *PublishCRL )( 
  584.             ICertAdmin2 * This,
  585.             /* [in] */ const BSTR strConfig,
  586.             /* [in] */ DATE Date);
  587.         
  588.         HRESULT ( STDMETHODCALLTYPE *GetCRL )( 
  589.             ICertAdmin2 * This,
  590.             /* [in] */ const BSTR strConfig,
  591.             /* [in] */ LONG Flags,
  592.             /* [retval][out] */ BSTR *pstrCRL);
  593.         
  594.         HRESULT ( STDMETHODCALLTYPE *ImportCertificate )( 
  595.             ICertAdmin2 * This,
  596.             /* [in] */ const BSTR strConfig,
  597.             /* [in] */ const BSTR strCertificate,
  598.             /* [in] */ LONG Flags,
  599.             /* [retval][out] */ LONG *pRequestId);
  600.         
  601.         HRESULT ( STDMETHODCALLTYPE *PublishCRLs )( 
  602.             ICertAdmin2 * This,
  603.             /* [in] */ const BSTR strConfig,
  604.             /* [in] */ DATE Date,
  605.             /* [in] */ LONG CRLFlags);
  606.         
  607.         HRESULT ( STDMETHODCALLTYPE *GetCAProperty )( 
  608.             ICertAdmin2 * This,
  609.             /* [in] */ const BSTR strConfig,
  610.             /* [in] */ LONG PropId,
  611.             /* [in] */ LONG PropIndex,
  612.             /* [in] */ LONG PropType,
  613.             /* [in] */ LONG Flags,
  614.             /* [retval][out] */ VARIANT *pvarPropertyValue);
  615.         
  616.         HRESULT ( STDMETHODCALLTYPE *SetCAProperty )( 
  617.             ICertAdmin2 * This,
  618.             /* [in] */ const BSTR strConfig,
  619.             /* [in] */ LONG PropId,
  620.             /* [in] */ LONG PropIndex,
  621.             /* [in] */ LONG PropType,
  622.             /* [in] */ VARIANT *pvarPropertyValue);
  623.         
  624.         HRESULT ( STDMETHODCALLTYPE *GetCAPropertyFlags )( 
  625.             ICertAdmin2 * This,
  626.             /* [in] */ const BSTR strConfig,
  627.             /* [in] */ LONG PropId,
  628.             /* [retval][out] */ LONG *pPropFlags);
  629.         
  630.         HRESULT ( STDMETHODCALLTYPE *GetCAPropertyDisplayName )( 
  631.             ICertAdmin2 * This,
  632.             /* [in] */ const BSTR strConfig,
  633.             /* [in] */ LONG PropId,
  634.             /* [retval][out] */ BSTR *pstrDisplayName);
  635.         
  636.         HRESULT ( STDMETHODCALLTYPE *GetArchivedKey )( 
  637.             ICertAdmin2 * This,
  638.             /* [in] */ const BSTR strConfig,
  639.             /* [in] */ LONG RequestId,
  640.             /* [in] */ LONG Flags,
  641.             /* [retval][out] */ BSTR *pstrArchivedKey);
  642.         
  643.         HRESULT ( STDMETHODCALLTYPE *GetConfigEntry )( 
  644.             ICertAdmin2 * This,
  645.             /* [in] */ const BSTR strConfig,
  646.             /* [in] */ const BSTR strNodePath,
  647.             /* [in] */ const BSTR strEntryName,
  648.             /* [retval][out] */ VARIANT *pvarEntry);
  649.         
  650.         HRESULT ( STDMETHODCALLTYPE *SetConfigEntry )( 
  651.             ICertAdmin2 * This,
  652.             /* [in] */ const BSTR strConfig,
  653.             /* [in] */ const BSTR strNodePath,
  654.             /* [in] */ const BSTR strEntryName,
  655.             /* [in] */ VARIANT *pvarEntry);
  656.         
  657.         HRESULT ( STDMETHODCALLTYPE *ImportKey )( 
  658.             ICertAdmin2 * This,
  659.             /* [in] */ const BSTR strConfig,
  660.             /* [in] */ LONG RequestId,
  661.             /* [in] */ const BSTR strCertHash,
  662.             /* [in] */ LONG Flags,
  663.             /* [in] */ const BSTR strKey);
  664.         
  665.         HRESULT ( STDMETHODCALLTYPE *GetMyRoles )( 
  666.             ICertAdmin2 * This,
  667.             /* [in] */ const BSTR strConfig,
  668.             /* [retval][out] */ LONG *pRoles);
  669.         
  670.         HRESULT ( STDMETHODCALLTYPE *DeleteRow )( 
  671.             ICertAdmin2 * This,
  672.             /* [in] */ const BSTR strConfig,
  673.             /* [in] */ LONG Flags,
  674.             /* [in] */ DATE Date,
  675.             /* [in] */ LONG Table,
  676.             /* [in] */ LONG RowId,
  677.             /* [retval][out] */ LONG *pcDeleted);
  678.         
  679.         END_INTERFACE
  680.     } ICertAdmin2Vtbl;
  681.     interface ICertAdmin2
  682.     {
  683.         CONST_VTBL struct ICertAdmin2Vtbl *lpVtbl;
  684.     };
  685.     
  686. #ifdef COBJMACROS
  687. #define ICertAdmin2_QueryInterface(This,riid,ppvObject)
  688.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  689. #define ICertAdmin2_AddRef(This)
  690.     (This)->lpVtbl -> AddRef(This)
  691. #define ICertAdmin2_Release(This)
  692.     (This)->lpVtbl -> Release(This)
  693. #define ICertAdmin2_GetTypeInfoCount(This,pctinfo)
  694.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  695. #define ICertAdmin2_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  696.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  697. #define ICertAdmin2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  698.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  699. #define ICertAdmin2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  700.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  701. #define ICertAdmin2_IsValidCertificate(This,strConfig,strSerialNumber,pDisposition)
  702.     (This)->lpVtbl -> IsValidCertificate(This,strConfig,strSerialNumber,pDisposition)
  703. #define ICertAdmin2_GetRevocationReason(This,pReason)
  704.     (This)->lpVtbl -> GetRevocationReason(This,pReason)
  705. #define ICertAdmin2_RevokeCertificate(This,strConfig,strSerialNumber,Reason,Date)
  706.     (This)->lpVtbl -> RevokeCertificate(This,strConfig,strSerialNumber,Reason,Date)
  707. #define ICertAdmin2_SetRequestAttributes(This,strConfig,RequestId,strAttributes)
  708.     (This)->lpVtbl -> SetRequestAttributes(This,strConfig,RequestId,strAttributes)
  709. #define ICertAdmin2_SetCertificateExtension(This,strConfig,RequestId,strExtensionName,Type,Flags,pvarValue)
  710.     (This)->lpVtbl -> SetCertificateExtension(This,strConfig,RequestId,strExtensionName,Type,Flags,pvarValue)
  711. #define ICertAdmin2_DenyRequest(This,strConfig,RequestId)
  712.     (This)->lpVtbl -> DenyRequest(This,strConfig,RequestId)
  713. #define ICertAdmin2_ResubmitRequest(This,strConfig,RequestId,pDisposition)
  714.     (This)->lpVtbl -> ResubmitRequest(This,strConfig,RequestId,pDisposition)
  715. #define ICertAdmin2_PublishCRL(This,strConfig,Date)
  716.     (This)->lpVtbl -> PublishCRL(This,strConfig,Date)
  717. #define ICertAdmin2_GetCRL(This,strConfig,Flags,pstrCRL)
  718.     (This)->lpVtbl -> GetCRL(This,strConfig,Flags,pstrCRL)
  719. #define ICertAdmin2_ImportCertificate(This,strConfig,strCertificate,Flags,pRequestId)
  720.     (This)->lpVtbl -> ImportCertificate(This,strConfig,strCertificate,Flags,pRequestId)
  721. #define ICertAdmin2_PublishCRLs(This,strConfig,Date,CRLFlags)
  722.     (This)->lpVtbl -> PublishCRLs(This,strConfig,Date,CRLFlags)
  723. #define ICertAdmin2_GetCAProperty(This,strConfig,PropId,PropIndex,PropType,Flags,pvarPropertyValue)
  724.     (This)->lpVtbl -> GetCAProperty(This,strConfig,PropId,PropIndex,PropType,Flags,pvarPropertyValue)
  725. #define ICertAdmin2_SetCAProperty(This,strConfig,PropId,PropIndex,PropType,pvarPropertyValue)
  726.     (This)->lpVtbl -> SetCAProperty(This,strConfig,PropId,PropIndex,PropType,pvarPropertyValue)
  727. #define ICertAdmin2_GetCAPropertyFlags(This,strConfig,PropId,pPropFlags)
  728.     (This)->lpVtbl -> GetCAPropertyFlags(This,strConfig,PropId,pPropFlags)
  729. #define ICertAdmin2_GetCAPropertyDisplayName(This,strConfig,PropId,pstrDisplayName)
  730.     (This)->lpVtbl -> GetCAPropertyDisplayName(This,strConfig,PropId,pstrDisplayName)
  731. #define ICertAdmin2_GetArchivedKey(This,strConfig,RequestId,Flags,pstrArchivedKey)
  732.     (This)->lpVtbl -> GetArchivedKey(This,strConfig,RequestId,Flags,pstrArchivedKey)
  733. #define ICertAdmin2_GetConfigEntry(This,strConfig,strNodePath,strEntryName,pvarEntry)
  734.     (This)->lpVtbl -> GetConfigEntry(This,strConfig,strNodePath,strEntryName,pvarEntry)
  735. #define ICertAdmin2_SetConfigEntry(This,strConfig,strNodePath,strEntryName,pvarEntry)
  736.     (This)->lpVtbl -> SetConfigEntry(This,strConfig,strNodePath,strEntryName,pvarEntry)
  737. #define ICertAdmin2_ImportKey(This,strConfig,RequestId,strCertHash,Flags,strKey)
  738.     (This)->lpVtbl -> ImportKey(This,strConfig,RequestId,strCertHash,Flags,strKey)
  739. #define ICertAdmin2_GetMyRoles(This,strConfig,pRoles)
  740.     (This)->lpVtbl -> GetMyRoles(This,strConfig,pRoles)
  741. #define ICertAdmin2_DeleteRow(This,strConfig,Flags,Date,Table,RowId,pcDeleted)
  742.     (This)->lpVtbl -> DeleteRow(This,strConfig,Flags,Date,Table,RowId,pcDeleted)
  743. #endif /* COBJMACROS */
  744. #endif  /* C style interface */
  745. HRESULT STDMETHODCALLTYPE ICertAdmin2_PublishCRLs_Proxy( 
  746.     ICertAdmin2 * This,
  747.     /* [in] */ const BSTR strConfig,
  748.     /* [in] */ DATE Date,
  749.     /* [in] */ LONG CRLFlags);
  750. void __RPC_STUB ICertAdmin2_PublishCRLs_Stub(
  751.     IRpcStubBuffer *This,
  752.     IRpcChannelBuffer *_pRpcChannelBuffer,
  753.     PRPC_MESSAGE _pRpcMessage,
  754.     DWORD *_pdwStubPhase);
  755. HRESULT STDMETHODCALLTYPE ICertAdmin2_GetCAProperty_Proxy( 
  756.     ICertAdmin2 * This,
  757.     /* [in] */ const BSTR strConfig,
  758.     /* [in] */ LONG PropId,
  759.     /* [in] */ LONG PropIndex,
  760.     /* [in] */ LONG PropType,
  761.     /* [in] */ LONG Flags,
  762.     /* [retval][out] */ VARIANT *pvarPropertyValue);
  763. void __RPC_STUB ICertAdmin2_GetCAProperty_Stub(
  764.     IRpcStubBuffer *This,
  765.     IRpcChannelBuffer *_pRpcChannelBuffer,
  766.     PRPC_MESSAGE _pRpcMessage,
  767.     DWORD *_pdwStubPhase);
  768. HRESULT STDMETHODCALLTYPE ICertAdmin2_SetCAProperty_Proxy( 
  769.     ICertAdmin2 * This,
  770.     /* [in] */ const BSTR strConfig,
  771.     /* [in] */ LONG PropId,
  772.     /* [in] */ LONG PropIndex,
  773.     /* [in] */ LONG PropType,
  774.     /* [in] */ VARIANT *pvarPropertyValue);
  775. void __RPC_STUB ICertAdmin2_SetCAProperty_Stub(
  776.     IRpcStubBuffer *This,
  777.     IRpcChannelBuffer *_pRpcChannelBuffer,
  778.     PRPC_MESSAGE _pRpcMessage,
  779.     DWORD *_pdwStubPhase);
  780. HRESULT STDMETHODCALLTYPE ICertAdmin2_GetCAPropertyFlags_Proxy( 
  781.     ICertAdmin2 * This,
  782.     /* [in] */ const BSTR strConfig,
  783.     /* [in] */ LONG PropId,
  784.     /* [retval][out] */ LONG *pPropFlags);
  785. void __RPC_STUB ICertAdmin2_GetCAPropertyFlags_Stub(
  786.     IRpcStubBuffer *This,
  787.     IRpcChannelBuffer *_pRpcChannelBuffer,
  788.     PRPC_MESSAGE _pRpcMessage,
  789.     DWORD *_pdwStubPhase);
  790. HRESULT STDMETHODCALLTYPE ICertAdmin2_GetCAPropertyDisplayName_Proxy( 
  791.     ICertAdmin2 * This,
  792.     /* [in] */ const BSTR strConfig,
  793.     /* [in] */ LONG PropId,
  794.     /* [retval][out] */ BSTR *pstrDisplayName);
  795. void __RPC_STUB ICertAdmin2_GetCAPropertyDisplayName_Stub(
  796.     IRpcStubBuffer *This,
  797.     IRpcChannelBuffer *_pRpcChannelBuffer,
  798.     PRPC_MESSAGE _pRpcMessage,
  799.     DWORD *_pdwStubPhase);
  800. HRESULT STDMETHODCALLTYPE ICertAdmin2_GetArchivedKey_Proxy( 
  801.     ICertAdmin2 * This,
  802.     /* [in] */ const BSTR strConfig,
  803.     /* [in] */ LONG RequestId,
  804.     /* [in] */ LONG Flags,
  805.     /* [retval][out] */ BSTR *pstrArchivedKey);
  806. void __RPC_STUB ICertAdmin2_GetArchivedKey_Stub(
  807.     IRpcStubBuffer *This,
  808.     IRpcChannelBuffer *_pRpcChannelBuffer,
  809.     PRPC_MESSAGE _pRpcMessage,
  810.     DWORD *_pdwStubPhase);
  811. HRESULT STDMETHODCALLTYPE ICertAdmin2_GetConfigEntry_Proxy( 
  812.     ICertAdmin2 * This,
  813.     /* [in] */ const BSTR strConfig,
  814.     /* [in] */ const BSTR strNodePath,
  815.     /* [in] */ const BSTR strEntryName,
  816.     /* [retval][out] */ VARIANT *pvarEntry);
  817. void __RPC_STUB ICertAdmin2_GetConfigEntry_Stub(
  818.     IRpcStubBuffer *This,
  819.     IRpcChannelBuffer *_pRpcChannelBuffer,
  820.     PRPC_MESSAGE _pRpcMessage,
  821.     DWORD *_pdwStubPhase);
  822. HRESULT STDMETHODCALLTYPE ICertAdmin2_SetConfigEntry_Proxy( 
  823.     ICertAdmin2 * This,
  824.     /* [in] */ const BSTR strConfig,
  825.     /* [in] */ const BSTR strNodePath,
  826.     /* [in] */ const BSTR strEntryName,
  827.     /* [in] */ VARIANT *pvarEntry);
  828. void __RPC_STUB ICertAdmin2_SetConfigEntry_Stub(
  829.     IRpcStubBuffer *This,
  830.     IRpcChannelBuffer *_pRpcChannelBuffer,
  831.     PRPC_MESSAGE _pRpcMessage,
  832.     DWORD *_pdwStubPhase);
  833. HRESULT STDMETHODCALLTYPE ICertAdmin2_ImportKey_Proxy( 
  834.     ICertAdmin2 * This,
  835.     /* [in] */ const BSTR strConfig,
  836.     /* [in] */ LONG RequestId,
  837.     /* [in] */ const BSTR strCertHash,
  838.     /* [in] */ LONG Flags,
  839.     /* [in] */ const BSTR strKey);
  840. void __RPC_STUB ICertAdmin2_ImportKey_Stub(
  841.     IRpcStubBuffer *This,
  842.     IRpcChannelBuffer *_pRpcChannelBuffer,
  843.     PRPC_MESSAGE _pRpcMessage,
  844.     DWORD *_pdwStubPhase);
  845. HRESULT STDMETHODCALLTYPE ICertAdmin2_GetMyRoles_Proxy( 
  846.     ICertAdmin2 * This,
  847.     /* [in] */ const BSTR strConfig,
  848.     /* [retval][out] */ LONG *pRoles);
  849. void __RPC_STUB ICertAdmin2_GetMyRoles_Stub(
  850.     IRpcStubBuffer *This,
  851.     IRpcChannelBuffer *_pRpcChannelBuffer,
  852.     PRPC_MESSAGE _pRpcMessage,
  853.     DWORD *_pdwStubPhase);
  854. HRESULT STDMETHODCALLTYPE ICertAdmin2_DeleteRow_Proxy( 
  855.     ICertAdmin2 * This,
  856.     /* [in] */ const BSTR strConfig,
  857.     /* [in] */ LONG Flags,
  858.     /* [in] */ DATE Date,
  859.     /* [in] */ LONG Table,
  860.     /* [in] */ LONG RowId,
  861.     /* [retval][out] */ LONG *pcDeleted);
  862. void __RPC_STUB ICertAdmin2_DeleteRow_Stub(
  863.     IRpcStubBuffer *This,
  864.     IRpcChannelBuffer *_pRpcChannelBuffer,
  865.     PRPC_MESSAGE _pRpcMessage,
  866.     DWORD *_pdwStubPhase);
  867. #endif  /* __ICertAdmin2_INTERFACE_DEFINED__ */
  868. #ifndef __CERTADMINLib_LIBRARY_DEFINED__
  869. #define __CERTADMINLib_LIBRARY_DEFINED__
  870. /* library CERTADMINLib */
  871. /* [helpstring][version][uuid] */ 
  872. EXTERN_C const IID LIBID_CERTADMINLib;
  873. EXTERN_C const CLSID CLSID_CCertAdmin;
  874. #ifdef __cplusplus
  875. class DECLSPEC_UUID("37eabaf0-7fb6-11d0-8817-00a0c903b83c")
  876. CCertAdmin;
  877. #endif
  878. EXTERN_C const CLSID CLSID_CCertView;
  879. #ifdef __cplusplus
  880. class DECLSPEC_UUID("a12d0f7a-1e84-11d1-9bd6-00c04fb683fa")
  881. CCertView;
  882. #endif
  883. #endif /* __CERTADMINLib_LIBRARY_DEFINED__ */
  884. /* Additional Prototypes for ALL interfaces */
  885. unsigned long             __RPC_USER  BSTR_UserSize(     unsigned long *, unsigned long            , BSTR * ); 
  886. unsigned char * __RPC_USER  BSTR_UserMarshal(  unsigned long *, unsigned char *, BSTR * ); 
  887. unsigned char * __RPC_USER  BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * ); 
  888. void                      __RPC_USER  BSTR_UserFree(     unsigned long *, BSTR * ); 
  889. unsigned long             __RPC_USER  VARIANT_UserSize(     unsigned long *, unsigned long            , VARIANT * ); 
  890. unsigned char * __RPC_USER  VARIANT_UserMarshal(  unsigned long *, unsigned char *, VARIANT * ); 
  891. unsigned char * __RPC_USER  VARIANT_UserUnmarshal(unsigned long *, unsigned char *, VARIANT * ); 
  892. void                      __RPC_USER  VARIANT_UserFree(     unsigned long *, VARIANT * ); 
  893. /* end of Additional Prototypes */
  894. #ifdef __cplusplus
  895. }
  896. #endif
  897. #endif