/* this ALWAYS GENERATED file contains the definitions for the interfaces */ /* File created by MIDL compiler version 7.00.0555 */ /* Compiler settings for xpsdigitalsignature.idl: Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 7.00.0555 protocol : dce , ms_ext, c_ext, robust error checks: allocation ref bounds_check enum stub_data VC __declspec() decoration level: __declspec(uuid()), __declspec(selectany), __declspec(novtable) DECLSPEC_UUID(), MIDL_INTERFACE() */ /* @@MIDL_FILE_HEADING( ) */ #pragma warning( disable: 4049 ) /* more than 64k source lines */ /* verify that the version is high enough to compile this file*/ #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 500 #endif /* verify that the version is high enough to compile this file*/ #ifndef __REQUIRED_RPCSAL_H_VERSION__ #define __REQUIRED_RPCSAL_H_VERSION__ 100 #endif #include "rpc.h" #include "rpcndr.h" #ifndef __RPCNDR_H_VERSION__ #error this stub requires an updated version of #endif // __RPCNDR_H_VERSION__ #ifndef __xpsdigitalsignature_h__ #define __xpsdigitalsignature_h__ #if defined(_MSC_VER) && (_MSC_VER >= 1020) #pragma once #endif /* Forward Declarations */ #ifndef __IXpsSigningOptions_FWD_DEFINED__ #define __IXpsSigningOptions_FWD_DEFINED__ typedef interface IXpsSigningOptions IXpsSigningOptions; #endif /* __IXpsSigningOptions_FWD_DEFINED__ */ #ifndef __IXpsSignatureCollection_FWD_DEFINED__ #define __IXpsSignatureCollection_FWD_DEFINED__ typedef interface IXpsSignatureCollection IXpsSignatureCollection; #endif /* __IXpsSignatureCollection_FWD_DEFINED__ */ #ifndef __IXpsSignature_FWD_DEFINED__ #define __IXpsSignature_FWD_DEFINED__ typedef interface IXpsSignature IXpsSignature; #endif /* __IXpsSignature_FWD_DEFINED__ */ #ifndef __IXpsSignatureBlockCollection_FWD_DEFINED__ #define __IXpsSignatureBlockCollection_FWD_DEFINED__ typedef interface IXpsSignatureBlockCollection IXpsSignatureBlockCollection; #endif /* __IXpsSignatureBlockCollection_FWD_DEFINED__ */ #ifndef __IXpsSignatureBlock_FWD_DEFINED__ #define __IXpsSignatureBlock_FWD_DEFINED__ typedef interface IXpsSignatureBlock IXpsSignatureBlock; #endif /* __IXpsSignatureBlock_FWD_DEFINED__ */ #ifndef __IXpsSignatureRequestCollection_FWD_DEFINED__ #define __IXpsSignatureRequestCollection_FWD_DEFINED__ typedef interface IXpsSignatureRequestCollection IXpsSignatureRequestCollection; #endif /* __IXpsSignatureRequestCollection_FWD_DEFINED__ */ #ifndef __IXpsSignatureRequest_FWD_DEFINED__ #define __IXpsSignatureRequest_FWD_DEFINED__ typedef interface IXpsSignatureRequest IXpsSignatureRequest; #endif /* __IXpsSignatureRequest_FWD_DEFINED__ */ #ifndef __IXpsSignatureManager_FWD_DEFINED__ #define __IXpsSignatureManager_FWD_DEFINED__ typedef interface IXpsSignatureManager IXpsSignatureManager; #endif /* __IXpsSignatureManager_FWD_DEFINED__ */ #ifndef __XpsSignatureManager_FWD_DEFINED__ #define __XpsSignatureManager_FWD_DEFINED__ #ifdef __cplusplus typedef class XpsSignatureManager XpsSignatureManager; #else typedef struct XpsSignatureManager XpsSignatureManager; #endif /* __cplusplus */ #endif /* __XpsSignatureManager_FWD_DEFINED__ */ /* header files for imported files */ #include "oaidl.h" #include "wincrypt.h" #include "msopc.h" #ifdef __cplusplus extern "C"{ #endif /* interface __MIDL_itf_xpsdigitalsignature_0000_0000 */ /* [local] */ //+------------------------------------------------------------------------- // // Microsoft Windows // Copyright (c) Microsoft Corporation. All rights reserved. // //-------------------------------------------------------------------------- #if (NTDDI_VERSION >= NTDDI_WIN7) extern RPC_IF_HANDLE __MIDL_itf_xpsdigitalsignature_0000_0000_v0_0_c_ifspec; extern RPC_IF_HANDLE __MIDL_itf_xpsdigitalsignature_0000_0000_v0_0_s_ifspec; #ifndef __MSXPSSIG_LIBRARY_DEFINED__ #define __MSXPSSIG_LIBRARY_DEFINED__ /* library MSXPSSIG */ /* [uuid] */ typedef /* [public][public] */ enum __MIDL___MIDL_itf_xpsdigitalsignature_0000_0000_0001 { XPS_SIGNATURE_STATUS_INCOMPLIANT = 1, XPS_SIGNATURE_STATUS_INCOMPLETE = 2, XPS_SIGNATURE_STATUS_BROKEN = 3, XPS_SIGNATURE_STATUS_QUESTIONABLE = 4, XPS_SIGNATURE_STATUS_VALID = 5 } XPS_SIGNATURE_STATUS; typedef /* [public][public][public][public][v1_enum] */ enum __MIDL___MIDL_itf_xpsdigitalsignature_0000_0000_0002 { XPS_SIGN_POLICY_NONE = 0, XPS_SIGN_POLICY_CORE_PROPERTIES = 0x1, XPS_SIGN_POLICY_SIGNATURE_RELATIONSHIPS = 0x2, XPS_SIGN_POLICY_PRINT_TICKET = 0x4, XPS_SIGN_POLICY_DISCARD_CONTROL = 0x8, XPS_SIGN_POLICY_ALL = 0xf } XPS_SIGN_POLICY; DEFINE_ENUM_FLAG_OPERATORS(XPS_SIGN_POLICY) typedef /* [public][public][public][v1_enum] */ enum __MIDL___MIDL_itf_xpsdigitalsignature_0000_0000_0003 { XPS_SIGN_FLAGS_NONE = 0, XPS_SIGN_FLAGS_IGNORE_MARKUP_COMPATIBILITY = 0x1 } XPS_SIGN_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(XPS_SIGN_FLAGS) EXTERN_C const IID LIBID_MSXPSSIG; #ifndef __IXpsSigningOptions_INTERFACE_DEFINED__ #define __IXpsSigningOptions_INTERFACE_DEFINED__ /* interface IXpsSigningOptions */ /* [uuid][object] */ EXTERN_C const IID IID_IXpsSigningOptions; #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("7718eae4-3215-49be-af5b-594fef7fcfa6") IXpsSigningOptions : public IUnknown { public: virtual HRESULT STDMETHODCALLTYPE GetSignatureId( /* [retval][string][out] */ __RPC__deref_out_opt_string LPWSTR *signatureId) = 0; virtual HRESULT STDMETHODCALLTYPE SetSignatureId( /* [string][in] */ __RPC__in_string LPCWSTR signatureId) = 0; virtual HRESULT STDMETHODCALLTYPE GetSignatureMethod( /* [retval][string][out] */ __RPC__deref_out_opt_string LPWSTR *signatureMethod) = 0; virtual HRESULT STDMETHODCALLTYPE SetSignatureMethod( /* [string][in] */ __RPC__in_string LPCWSTR signatureMethod) = 0; virtual HRESULT STDMETHODCALLTYPE GetDigestMethod( /* [retval][string][out] */ __RPC__deref_out_opt_string LPWSTR *digestMethod) = 0; virtual HRESULT STDMETHODCALLTYPE SetDigestMethod( /* [string][in] */ __RPC__in_string LPCWSTR digestMethod) = 0; virtual HRESULT STDMETHODCALLTYPE GetSignaturePartName( /* [retval][out] */ __RPC__deref_out_opt IOpcPartUri **signaturePartName) = 0; virtual HRESULT STDMETHODCALLTYPE SetSignaturePartName( /* [in] */ __RPC__in_opt IOpcPartUri *signaturePartName) = 0; virtual HRESULT STDMETHODCALLTYPE GetPolicy( /* [retval][out] */ __RPC__out XPS_SIGN_POLICY *policy) = 0; virtual HRESULT STDMETHODCALLTYPE SetPolicy( /* [in] */ XPS_SIGN_POLICY policy) = 0; virtual HRESULT STDMETHODCALLTYPE GetSigningTimeFormat( /* [retval][out] */ __RPC__out OPC_SIGNATURE_TIME_FORMAT *timeFormat) = 0; virtual HRESULT STDMETHODCALLTYPE SetSigningTimeFormat( /* [in] */ OPC_SIGNATURE_TIME_FORMAT timeFormat) = 0; virtual HRESULT STDMETHODCALLTYPE GetCustomObjects( /* [retval][out] */ __RPC__deref_out_opt IOpcSignatureCustomObjectSet **customObjectSet) = 0; virtual HRESULT STDMETHODCALLTYPE GetCustomReferences( /* [retval][out] */ __RPC__deref_out_opt IOpcSignatureReferenceSet **customReferenceSet) = 0; virtual HRESULT STDMETHODCALLTYPE GetCertificateSet( /* [retval][out] */ __RPC__deref_out_opt IOpcCertificateSet **certificateSet) = 0; virtual HRESULT STDMETHODCALLTYPE GetFlags( /* [retval][out] */ __RPC__out XPS_SIGN_FLAGS *flags) = 0; virtual HRESULT STDMETHODCALLTYPE SetFlags( /* [in] */ XPS_SIGN_FLAGS flags) = 0; }; #else /* C style interface */ typedef struct IXpsSigningOptionsVtbl { BEGIN_INTERFACE HRESULT ( STDMETHODCALLTYPE *QueryInterface )( __RPC__in IXpsSigningOptions * This, /* [in] */ __RPC__in REFIID riid, /* [annotation][iid_is][out] */ __RPC__deref_out void **ppvObject); ULONG ( STDMETHODCALLTYPE *AddRef )( __RPC__in IXpsSigningOptions * This); ULONG ( STDMETHODCALLTYPE *Release )( __RPC__in IXpsSigningOptions * This); HRESULT ( STDMETHODCALLTYPE *GetSignatureId )( __RPC__in IXpsSigningOptions * This, /* [retval][string][out] */ __RPC__deref_out_opt_string LPWSTR *signatureId); HRESULT ( STDMETHODCALLTYPE *SetSignatureId )( __RPC__in IXpsSigningOptions * This, /* [string][in] */ __RPC__in_string LPCWSTR signatureId); HRESULT ( STDMETHODCALLTYPE *GetSignatureMethod )( __RPC__in IXpsSigningOptions * This, /* [retval][string][out] */ __RPC__deref_out_opt_string LPWSTR *signatureMethod); HRESULT ( STDMETHODCALLTYPE *SetSignatureMethod )( __RPC__in IXpsSigningOptions * This, /* [string][in] */ __RPC__in_string LPCWSTR signatureMethod); HRESULT ( STDMETHODCALLTYPE *GetDigestMethod )( __RPC__in IXpsSigningOptions * This, /* [retval][string][out] */ __RPC__deref_out_opt_string LPWSTR *digestMethod); HRESULT ( STDMETHODCALLTYPE *SetDigestMethod )( __RPC__in IXpsSigningOptions * This, /* [string][in] */ __RPC__in_string LPCWSTR digestMethod); HRESULT ( STDMETHODCALLTYPE *GetSignaturePartName )( __RPC__in IXpsSigningOptions * This, /* [retval][out] */ __RPC__deref_out_opt IOpcPartUri **signaturePartName); HRESULT ( STDMETHODCALLTYPE *SetSignaturePartName )( __RPC__in IXpsSigningOptions * This, /* [in] */ __RPC__in_opt IOpcPartUri *signaturePartName); HRESULT ( STDMETHODCALLTYPE *GetPolicy )( __RPC__in IXpsSigningOptions * This, /* [retval][out] */ __RPC__out XPS_SIGN_POLICY *policy); HRESULT ( STDMETHODCALLTYPE *SetPolicy )( __RPC__in IXpsSigningOptions * This, /* [in] */ XPS_SIGN_POLICY policy); HRESULT ( STDMETHODCALLTYPE *GetSigningTimeFormat )( __RPC__in IXpsSigningOptions * This, /* [retval][out] */ __RPC__out OPC_SIGNATURE_TIME_FORMAT *timeFormat); HRESULT ( STDMETHODCALLTYPE *SetSigningTimeFormat )( __RPC__in IXpsSigningOptions * This, /* [in] */ OPC_SIGNATURE_TIME_FORMAT timeFormat); HRESULT ( STDMETHODCALLTYPE *GetCustomObjects )( __RPC__in IXpsSigningOptions * This, /* [retval][out] */ __RPC__deref_out_opt IOpcSignatureCustomObjectSet **customObjectSet); HRESULT ( STDMETHODCALLTYPE *GetCustomReferences )( __RPC__in IXpsSigningOptions * This, /* [retval][out] */ __RPC__deref_out_opt IOpcSignatureReferenceSet **customReferenceSet); HRESULT ( STDMETHODCALLTYPE *GetCertificateSet )( __RPC__in IXpsSigningOptions * This, /* [retval][out] */ __RPC__deref_out_opt IOpcCertificateSet **certificateSet); HRESULT ( STDMETHODCALLTYPE *GetFlags )( __RPC__in IXpsSigningOptions * This, /* [retval][out] */ __RPC__out XPS_SIGN_FLAGS *flags); HRESULT ( STDMETHODCALLTYPE *SetFlags )( __RPC__in IXpsSigningOptions * This, /* [in] */ XPS_SIGN_FLAGS flags); END_INTERFACE } IXpsSigningOptionsVtbl; interface IXpsSigningOptions { CONST_VTBL struct IXpsSigningOptionsVtbl *lpVtbl; }; #ifdef COBJMACROS #define IXpsSigningOptions_QueryInterface(This,riid,ppvObject) \ ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) #define IXpsSigningOptions_AddRef(This) \ ( (This)->lpVtbl -> AddRef(This) ) #define IXpsSigningOptions_Release(This) \ ( (This)->lpVtbl -> Release(This) ) #define IXpsSigningOptions_GetSignatureId(This,signatureId) \ ( (This)->lpVtbl -> GetSignatureId(This,signatureId) ) #define IXpsSigningOptions_SetSignatureId(This,signatureId) \ ( (This)->lpVtbl -> SetSignatureId(This,signatureId) ) #define IXpsSigningOptions_GetSignatureMethod(This,signatureMethod) \ ( (This)->lpVtbl -> GetSignatureMethod(This,signatureMethod) ) #define IXpsSigningOptions_SetSignatureMethod(This,signatureMethod) \ ( (This)->lpVtbl -> SetSignatureMethod(This,signatureMethod) ) #define IXpsSigningOptions_GetDigestMethod(This,digestMethod) \ ( (This)->lpVtbl -> GetDigestMethod(This,digestMethod) ) #define IXpsSigningOptions_SetDigestMethod(This,digestMethod) \ ( (This)->lpVtbl -> SetDigestMethod(This,digestMethod) ) #define IXpsSigningOptions_GetSignaturePartName(This,signaturePartName) \ ( (This)->lpVtbl -> GetSignaturePartName(This,signaturePartName) ) #define IXpsSigningOptions_SetSignaturePartName(This,signaturePartName) \ ( (This)->lpVtbl -> SetSignaturePartName(This,signaturePartName) ) #define IXpsSigningOptions_GetPolicy(This,policy) \ ( (This)->lpVtbl -> GetPolicy(This,policy) ) #define IXpsSigningOptions_SetPolicy(This,policy) \ ( (This)->lpVtbl -> SetPolicy(This,policy) ) #define IXpsSigningOptions_GetSigningTimeFormat(This,timeFormat) \ ( (This)->lpVtbl -> GetSigningTimeFormat(This,timeFormat) ) #define IXpsSigningOptions_SetSigningTimeFormat(This,timeFormat) \ ( (This)->lpVtbl -> SetSigningTimeFormat(This,timeFormat) ) #define IXpsSigningOptions_GetCustomObjects(This,customObjectSet) \ ( (This)->lpVtbl -> GetCustomObjects(This,customObjectSet) ) #define IXpsSigningOptions_GetCustomReferences(This,customReferenceSet) \ ( (This)->lpVtbl -> GetCustomReferences(This,customReferenceSet) ) #define IXpsSigningOptions_GetCertificateSet(This,certificateSet) \ ( (This)->lpVtbl -> GetCertificateSet(This,certificateSet) ) #define IXpsSigningOptions_GetFlags(This,flags) \ ( (This)->lpVtbl -> GetFlags(This,flags) ) #define IXpsSigningOptions_SetFlags(This,flags) \ ( (This)->lpVtbl -> SetFlags(This,flags) ) #endif /* COBJMACROS */ #endif /* C style interface */ #endif /* __IXpsSigningOptions_INTERFACE_DEFINED__ */ #ifndef __IXpsSignatureCollection_INTERFACE_DEFINED__ #define __IXpsSignatureCollection_INTERFACE_DEFINED__ /* interface IXpsSignatureCollection */ /* [uuid][object] */ EXTERN_C const IID IID_IXpsSignatureCollection; #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("A2D1D95D-ADD2-4DFF-AB27-6B9C645FF322") IXpsSignatureCollection : public IUnknown { public: virtual HRESULT STDMETHODCALLTYPE GetCount( /* [retval][out] */ __RPC__out UINT32 *count) = 0; virtual HRESULT STDMETHODCALLTYPE GetAt( /* [in] */ UINT32 index, /* [retval][out] */ __RPC__deref_out_opt IXpsSignature **signature) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveAt( UINT32 index) = 0; }; #else /* C style interface */ typedef struct IXpsSignatureCollectionVtbl { BEGIN_INTERFACE HRESULT ( STDMETHODCALLTYPE *QueryInterface )( __RPC__in IXpsSignatureCollection * This, /* [in] */ __RPC__in REFIID riid, /* [annotation][iid_is][out] */ __RPC__deref_out void **ppvObject); ULONG ( STDMETHODCALLTYPE *AddRef )( __RPC__in IXpsSignatureCollection * This); ULONG ( STDMETHODCALLTYPE *Release )( __RPC__in IXpsSignatureCollection * This); HRESULT ( STDMETHODCALLTYPE *GetCount )( __RPC__in IXpsSignatureCollection * This, /* [retval][out] */ __RPC__out UINT32 *count); HRESULT ( STDMETHODCALLTYPE *GetAt )( __RPC__in IXpsSignatureCollection * This, /* [in] */ UINT32 index, /* [retval][out] */ __RPC__deref_out_opt IXpsSignature **signature); HRESULT ( STDMETHODCALLTYPE *RemoveAt )( __RPC__in IXpsSignatureCollection * This, UINT32 index); END_INTERFACE } IXpsSignatureCollectionVtbl; interface IXpsSignatureCollection { CONST_VTBL struct IXpsSignatureCollectionVtbl *lpVtbl; }; #ifdef COBJMACROS #define IXpsSignatureCollection_QueryInterface(This,riid,ppvObject) \ ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) #define IXpsSignatureCollection_AddRef(This) \ ( (This)->lpVtbl -> AddRef(This) ) #define IXpsSignatureCollection_Release(This) \ ( (This)->lpVtbl -> Release(This) ) #define IXpsSignatureCollection_GetCount(This,count) \ ( (This)->lpVtbl -> GetCount(This,count) ) #define IXpsSignatureCollection_GetAt(This,index,signature) \ ( (This)->lpVtbl -> GetAt(This,index,signature) ) #define IXpsSignatureCollection_RemoveAt(This,index) \ ( (This)->lpVtbl -> RemoveAt(This,index) ) #endif /* COBJMACROS */ #endif /* C style interface */ #endif /* __IXpsSignatureCollection_INTERFACE_DEFINED__ */ #ifndef __IXpsSignature_INTERFACE_DEFINED__ #define __IXpsSignature_INTERFACE_DEFINED__ /* interface IXpsSignature */ /* [local][uuid][object] */ EXTERN_C const IID IID_IXpsSignature; #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("6AE4C93E-1ADE-42FB-898B-3A5658284857") IXpsSignature : public IUnknown { public: virtual HRESULT STDMETHODCALLTYPE GetSignatureId( /* [retval][string][out] */ LPWSTR *sigId) = 0; virtual HRESULT STDMETHODCALLTYPE GetSignatureValue( /* [size_is][size_is][out] */ UINT8 **signatureHashValue, /* [out] */ UINT32 *count) = 0; virtual HRESULT STDMETHODCALLTYPE GetCertificateEnumerator( /* [retval][out] */ IOpcCertificateEnumerator **certificateEnumerator) = 0; virtual HRESULT STDMETHODCALLTYPE GetSigningTime( /* [retval][string][out] */ LPWSTR *sigDateTimeString) = 0; virtual HRESULT STDMETHODCALLTYPE GetSigningTimeFormat( /* [retval][out] */ OPC_SIGNATURE_TIME_FORMAT *timeFormat) = 0; virtual HRESULT STDMETHODCALLTYPE GetSignaturePartName( /* [retval][out] */ IOpcPartUri **signaturePartName) = 0; virtual HRESULT STDMETHODCALLTYPE Verify( /* [in] */ const CERT_CONTEXT *x509Certificate, /* [retval][out] */ XPS_SIGNATURE_STATUS *sigStatus) = 0; virtual HRESULT STDMETHODCALLTYPE GetPolicy( /* [retval][out] */ XPS_SIGN_POLICY *policy) = 0; virtual HRESULT STDMETHODCALLTYPE GetCustomObjectEnumerator( /* [retval][out] */ IOpcSignatureCustomObjectEnumerator **customObjectEnumerator) = 0; virtual HRESULT STDMETHODCALLTYPE GetCustomReferenceEnumerator( /* [retval][out] */ IOpcSignatureReferenceEnumerator **customReferenceEnumerator) = 0; virtual HRESULT STDMETHODCALLTYPE GetSignatureXml( /* [size_is][size_is][out] */ UINT8 **signatureXml, /* [out] */ UINT32 *count) = 0; virtual HRESULT STDMETHODCALLTYPE SetSignatureXml( /* [size_is][in] */ const UINT8 *signatureXml, /* [in] */ UINT32 count) = 0; }; #else /* C style interface */ typedef struct IXpsSignatureVtbl { BEGIN_INTERFACE HRESULT ( STDMETHODCALLTYPE *QueryInterface )( IXpsSignature * This, /* [in] */ REFIID riid, /* [annotation][iid_is][out] */ __RPC__deref_out void **ppvObject); ULONG ( STDMETHODCALLTYPE *AddRef )( IXpsSignature * This); ULONG ( STDMETHODCALLTYPE *Release )( IXpsSignature * This); HRESULT ( STDMETHODCALLTYPE *GetSignatureId )( IXpsSignature * This, /* [retval][string][out] */ LPWSTR *sigId); HRESULT ( STDMETHODCALLTYPE *GetSignatureValue )( IXpsSignature * This, /* [size_is][size_is][out] */ UINT8 **signatureHashValue, /* [out] */ UINT32 *count); HRESULT ( STDMETHODCALLTYPE *GetCertificateEnumerator )( IXpsSignature * This, /* [retval][out] */ IOpcCertificateEnumerator **certificateEnumerator); HRESULT ( STDMETHODCALLTYPE *GetSigningTime )( IXpsSignature * This, /* [retval][string][out] */ LPWSTR *sigDateTimeString); HRESULT ( STDMETHODCALLTYPE *GetSigningTimeFormat )( IXpsSignature * This, /* [retval][out] */ OPC_SIGNATURE_TIME_FORMAT *timeFormat); HRESULT ( STDMETHODCALLTYPE *GetSignaturePartName )( IXpsSignature * This, /* [retval][out] */ IOpcPartUri **signaturePartName); HRESULT ( STDMETHODCALLTYPE *Verify )( IXpsSignature * This, /* [in] */ const CERT_CONTEXT *x509Certificate, /* [retval][out] */ XPS_SIGNATURE_STATUS *sigStatus); HRESULT ( STDMETHODCALLTYPE *GetPolicy )( IXpsSignature * This, /* [retval][out] */ XPS_SIGN_POLICY *policy); HRESULT ( STDMETHODCALLTYPE *GetCustomObjectEnumerator )( IXpsSignature * This, /* [retval][out] */ IOpcSignatureCustomObjectEnumerator **customObjectEnumerator); HRESULT ( STDMETHODCALLTYPE *GetCustomReferenceEnumerator )( IXpsSignature * This, /* [retval][out] */ IOpcSignatureReferenceEnumerator **customReferenceEnumerator); HRESULT ( STDMETHODCALLTYPE *GetSignatureXml )( IXpsSignature * This, /* [size_is][size_is][out] */ UINT8 **signatureXml, /* [out] */ UINT32 *count); HRESULT ( STDMETHODCALLTYPE *SetSignatureXml )( IXpsSignature * This, /* [size_is][in] */ const UINT8 *signatureXml, /* [in] */ UINT32 count); END_INTERFACE } IXpsSignatureVtbl; interface IXpsSignature { CONST_VTBL struct IXpsSignatureVtbl *lpVtbl; }; #ifdef COBJMACROS #define IXpsSignature_QueryInterface(This,riid,ppvObject) \ ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) #define IXpsSignature_AddRef(This) \ ( (This)->lpVtbl -> AddRef(This) ) #define IXpsSignature_Release(This) \ ( (This)->lpVtbl -> Release(This) ) #define IXpsSignature_GetSignatureId(This,sigId) \ ( (This)->lpVtbl -> GetSignatureId(This,sigId) ) #define IXpsSignature_GetSignatureValue(This,signatureHashValue,count) \ ( (This)->lpVtbl -> GetSignatureValue(This,signatureHashValue,count) ) #define IXpsSignature_GetCertificateEnumerator(This,certificateEnumerator) \ ( (This)->lpVtbl -> GetCertificateEnumerator(This,certificateEnumerator) ) #define IXpsSignature_GetSigningTime(This,sigDateTimeString) \ ( (This)->lpVtbl -> GetSigningTime(This,sigDateTimeString) ) #define IXpsSignature_GetSigningTimeFormat(This,timeFormat) \ ( (This)->lpVtbl -> GetSigningTimeFormat(This,timeFormat) ) #define IXpsSignature_GetSignaturePartName(This,signaturePartName) \ ( (This)->lpVtbl -> GetSignaturePartName(This,signaturePartName) ) #define IXpsSignature_Verify(This,x509Certificate,sigStatus) \ ( (This)->lpVtbl -> Verify(This,x509Certificate,sigStatus) ) #define IXpsSignature_GetPolicy(This,policy) \ ( (This)->lpVtbl -> GetPolicy(This,policy) ) #define IXpsSignature_GetCustomObjectEnumerator(This,customObjectEnumerator) \ ( (This)->lpVtbl -> GetCustomObjectEnumerator(This,customObjectEnumerator) ) #define IXpsSignature_GetCustomReferenceEnumerator(This,customReferenceEnumerator) \ ( (This)->lpVtbl -> GetCustomReferenceEnumerator(This,customReferenceEnumerator) ) #define IXpsSignature_GetSignatureXml(This,signatureXml,count) \ ( (This)->lpVtbl -> GetSignatureXml(This,signatureXml,count) ) #define IXpsSignature_SetSignatureXml(This,signatureXml,count) \ ( (This)->lpVtbl -> SetSignatureXml(This,signatureXml,count) ) #endif /* COBJMACROS */ #endif /* C style interface */ #endif /* __IXpsSignature_INTERFACE_DEFINED__ */ #ifndef __IXpsSignatureBlockCollection_INTERFACE_DEFINED__ #define __IXpsSignatureBlockCollection_INTERFACE_DEFINED__ /* interface IXpsSignatureBlockCollection */ /* [uuid][object] */ EXTERN_C const IID IID_IXpsSignatureBlockCollection; #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("23397050-FE99-467A-8DCE-9237F074FFE4") IXpsSignatureBlockCollection : public IUnknown { public: virtual HRESULT STDMETHODCALLTYPE GetCount( /* [retval][out] */ __RPC__out UINT32 *count) = 0; virtual HRESULT STDMETHODCALLTYPE GetAt( /* [in] */ UINT32 index, /* [retval][out] */ __RPC__deref_out_opt IXpsSignatureBlock **signatureBlock) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveAt( UINT32 index) = 0; }; #else /* C style interface */ typedef struct IXpsSignatureBlockCollectionVtbl { BEGIN_INTERFACE HRESULT ( STDMETHODCALLTYPE *QueryInterface )( __RPC__in IXpsSignatureBlockCollection * This, /* [in] */ __RPC__in REFIID riid, /* [annotation][iid_is][out] */ __RPC__deref_out void **ppvObject); ULONG ( STDMETHODCALLTYPE *AddRef )( __RPC__in IXpsSignatureBlockCollection * This); ULONG ( STDMETHODCALLTYPE *Release )( __RPC__in IXpsSignatureBlockCollection * This); HRESULT ( STDMETHODCALLTYPE *GetCount )( __RPC__in IXpsSignatureBlockCollection * This, /* [retval][out] */ __RPC__out UINT32 *count); HRESULT ( STDMETHODCALLTYPE *GetAt )( __RPC__in IXpsSignatureBlockCollection * This, /* [in] */ UINT32 index, /* [retval][out] */ __RPC__deref_out_opt IXpsSignatureBlock **signatureBlock); HRESULT ( STDMETHODCALLTYPE *RemoveAt )( __RPC__in IXpsSignatureBlockCollection * This, UINT32 index); END_INTERFACE } IXpsSignatureBlockCollectionVtbl; interface IXpsSignatureBlockCollection { CONST_VTBL struct IXpsSignatureBlockCollectionVtbl *lpVtbl; }; #ifdef COBJMACROS #define IXpsSignatureBlockCollection_QueryInterface(This,riid,ppvObject) \ ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) #define IXpsSignatureBlockCollection_AddRef(This) \ ( (This)->lpVtbl -> AddRef(This) ) #define IXpsSignatureBlockCollection_Release(This) \ ( (This)->lpVtbl -> Release(This) ) #define IXpsSignatureBlockCollection_GetCount(This,count) \ ( (This)->lpVtbl -> GetCount(This,count) ) #define IXpsSignatureBlockCollection_GetAt(This,index,signatureBlock) \ ( (This)->lpVtbl -> GetAt(This,index,signatureBlock) ) #define IXpsSignatureBlockCollection_RemoveAt(This,index) \ ( (This)->lpVtbl -> RemoveAt(This,index) ) #endif /* COBJMACROS */ #endif /* C style interface */ #endif /* __IXpsSignatureBlockCollection_INTERFACE_DEFINED__ */ #ifndef __IXpsSignatureBlock_INTERFACE_DEFINED__ #define __IXpsSignatureBlock_INTERFACE_DEFINED__ /* interface IXpsSignatureBlock */ /* [uuid][object] */ EXTERN_C const IID IID_IXpsSignatureBlock; #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("151FAC09-0B97-4AC6-A323-5E4297D4322B") IXpsSignatureBlock : public IUnknown { public: virtual HRESULT STDMETHODCALLTYPE GetRequests( /* [retval][out] */ __RPC__deref_out_opt IXpsSignatureRequestCollection **requests) = 0; virtual HRESULT STDMETHODCALLTYPE GetPartName( /* [retval][out] */ __RPC__deref_out_opt IOpcPartUri **partName) = 0; virtual HRESULT STDMETHODCALLTYPE GetDocumentIndex( /* [retval][out] */ __RPC__out UINT32 *fixedDocumentIndex) = 0; virtual HRESULT STDMETHODCALLTYPE GetDocumentName( /* [retval][out] */ __RPC__deref_out_opt IOpcPartUri **fixedDocumentName) = 0; virtual HRESULT STDMETHODCALLTYPE CreateRequest( /* [string][in] */ __RPC__in_string LPCWSTR requestId, /* [retval][out] */ __RPC__deref_out_opt IXpsSignatureRequest **signatureRequest) = 0; }; #else /* C style interface */ typedef struct IXpsSignatureBlockVtbl { BEGIN_INTERFACE HRESULT ( STDMETHODCALLTYPE *QueryInterface )( __RPC__in IXpsSignatureBlock * This, /* [in] */ __RPC__in REFIID riid, /* [annotation][iid_is][out] */ __RPC__deref_out void **ppvObject); ULONG ( STDMETHODCALLTYPE *AddRef )( __RPC__in IXpsSignatureBlock * This); ULONG ( STDMETHODCALLTYPE *Release )( __RPC__in IXpsSignatureBlock * This); HRESULT ( STDMETHODCALLTYPE *GetRequests )( __RPC__in IXpsSignatureBlock * This, /* [retval][out] */ __RPC__deref_out_opt IXpsSignatureRequestCollection **requests); HRESULT ( STDMETHODCALLTYPE *GetPartName )( __RPC__in IXpsSignatureBlock * This, /* [retval][out] */ __RPC__deref_out_opt IOpcPartUri **partName); HRESULT ( STDMETHODCALLTYPE *GetDocumentIndex )( __RPC__in IXpsSignatureBlock * This, /* [retval][out] */ __RPC__out UINT32 *fixedDocumentIndex); HRESULT ( STDMETHODCALLTYPE *GetDocumentName )( __RPC__in IXpsSignatureBlock * This, /* [retval][out] */ __RPC__deref_out_opt IOpcPartUri **fixedDocumentName); HRESULT ( STDMETHODCALLTYPE *CreateRequest )( __RPC__in IXpsSignatureBlock * This, /* [string][in] */ __RPC__in_string LPCWSTR requestId, /* [retval][out] */ __RPC__deref_out_opt IXpsSignatureRequest **signatureRequest); END_INTERFACE } IXpsSignatureBlockVtbl; interface IXpsSignatureBlock { CONST_VTBL struct IXpsSignatureBlockVtbl *lpVtbl; }; #ifdef COBJMACROS #define IXpsSignatureBlock_QueryInterface(This,riid,ppvObject) \ ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) #define IXpsSignatureBlock_AddRef(This) \ ( (This)->lpVtbl -> AddRef(This) ) #define IXpsSignatureBlock_Release(This) \ ( (This)->lpVtbl -> Release(This) ) #define IXpsSignatureBlock_GetRequests(This,requests) \ ( (This)->lpVtbl -> GetRequests(This,requests) ) #define IXpsSignatureBlock_GetPartName(This,partName) \ ( (This)->lpVtbl -> GetPartName(This,partName) ) #define IXpsSignatureBlock_GetDocumentIndex(This,fixedDocumentIndex) \ ( (This)->lpVtbl -> GetDocumentIndex(This,fixedDocumentIndex) ) #define IXpsSignatureBlock_GetDocumentName(This,fixedDocumentName) \ ( (This)->lpVtbl -> GetDocumentName(This,fixedDocumentName) ) #define IXpsSignatureBlock_CreateRequest(This,requestId,signatureRequest) \ ( (This)->lpVtbl -> CreateRequest(This,requestId,signatureRequest) ) #endif /* COBJMACROS */ #endif /* C style interface */ #endif /* __IXpsSignatureBlock_INTERFACE_DEFINED__ */ #ifndef __IXpsSignatureRequestCollection_INTERFACE_DEFINED__ #define __IXpsSignatureRequestCollection_INTERFACE_DEFINED__ /* interface IXpsSignatureRequestCollection */ /* [uuid][object] */ EXTERN_C const IID IID_IXpsSignatureRequestCollection; #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("F0253E68-9F19-412E-9B4F-54D3B0AC6CD9") IXpsSignatureRequestCollection : public IUnknown { public: virtual HRESULT STDMETHODCALLTYPE GetCount( /* [retval][out] */ __RPC__out UINT32 *count) = 0; virtual HRESULT STDMETHODCALLTYPE GetAt( /* [in] */ UINT32 index, /* [retval][out] */ __RPC__deref_out_opt IXpsSignatureRequest **signatureRequest) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveAt( /* [in] */ UINT32 index) = 0; }; #else /* C style interface */ typedef struct IXpsSignatureRequestCollectionVtbl { BEGIN_INTERFACE HRESULT ( STDMETHODCALLTYPE *QueryInterface )( __RPC__in IXpsSignatureRequestCollection * This, /* [in] */ __RPC__in REFIID riid, /* [annotation][iid_is][out] */ __RPC__deref_out void **ppvObject); ULONG ( STDMETHODCALLTYPE *AddRef )( __RPC__in IXpsSignatureRequestCollection * This); ULONG ( STDMETHODCALLTYPE *Release )( __RPC__in IXpsSignatureRequestCollection * This); HRESULT ( STDMETHODCALLTYPE *GetCount )( __RPC__in IXpsSignatureRequestCollection * This, /* [retval][out] */ __RPC__out UINT32 *count); HRESULT ( STDMETHODCALLTYPE *GetAt )( __RPC__in IXpsSignatureRequestCollection * This, /* [in] */ UINT32 index, /* [retval][out] */ __RPC__deref_out_opt IXpsSignatureRequest **signatureRequest); HRESULT ( STDMETHODCALLTYPE *RemoveAt )( __RPC__in IXpsSignatureRequestCollection * This, /* [in] */ UINT32 index); END_INTERFACE } IXpsSignatureRequestCollectionVtbl; interface IXpsSignatureRequestCollection { CONST_VTBL struct IXpsSignatureRequestCollectionVtbl *lpVtbl; }; #ifdef COBJMACROS #define IXpsSignatureRequestCollection_QueryInterface(This,riid,ppvObject) \ ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) #define IXpsSignatureRequestCollection_AddRef(This) \ ( (This)->lpVtbl -> AddRef(This) ) #define IXpsSignatureRequestCollection_Release(This) \ ( (This)->lpVtbl -> Release(This) ) #define IXpsSignatureRequestCollection_GetCount(This,count) \ ( (This)->lpVtbl -> GetCount(This,count) ) #define IXpsSignatureRequestCollection_GetAt(This,index,signatureRequest) \ ( (This)->lpVtbl -> GetAt(This,index,signatureRequest) ) #define IXpsSignatureRequestCollection_RemoveAt(This,index) \ ( (This)->lpVtbl -> RemoveAt(This,index) ) #endif /* COBJMACROS */ #endif /* C style interface */ #endif /* __IXpsSignatureRequestCollection_INTERFACE_DEFINED__ */ #ifndef __IXpsSignatureRequest_INTERFACE_DEFINED__ #define __IXpsSignatureRequest_INTERFACE_DEFINED__ /* interface IXpsSignatureRequest */ /* [uuid][object] */ EXTERN_C const IID IID_IXpsSignatureRequest; #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("ac58950b-7208-4b2d-b2c4-951083d3b8eb") IXpsSignatureRequest : public IUnknown { public: virtual HRESULT STDMETHODCALLTYPE GetIntent( /* [retval][string][out] */ __RPC__deref_out_opt_string LPWSTR *intent) = 0; virtual HRESULT STDMETHODCALLTYPE SetIntent( /* [string][in] */ __RPC__in_string LPCWSTR intent) = 0; virtual HRESULT STDMETHODCALLTYPE GetRequestedSigner( /* [retval][string][out] */ __RPC__deref_out_opt_string LPWSTR *signerName) = 0; virtual HRESULT STDMETHODCALLTYPE SetRequestedSigner( /* [string][in] */ __RPC__in_string LPCWSTR signerName) = 0; virtual HRESULT STDMETHODCALLTYPE GetRequestSignByDate( /* [retval][string][out] */ __RPC__deref_out_opt_string LPWSTR *dateString) = 0; virtual HRESULT STDMETHODCALLTYPE SetRequestSignByDate( /* [string][in] */ __RPC__in_string LPCWSTR dateString) = 0; virtual HRESULT STDMETHODCALLTYPE GetSigningLocale( /* [retval][string][out] */ __RPC__deref_out_opt_string LPWSTR *place) = 0; virtual HRESULT STDMETHODCALLTYPE SetSigningLocale( /* [string][in] */ __RPC__in_string LPCWSTR place) = 0; virtual HRESULT STDMETHODCALLTYPE GetSpotLocation( /* [out] */ __RPC__out INT32 *pageIndex, /* [out] */ __RPC__deref_out_opt IOpcPartUri **pagePartName, /* [out] */ __RPC__out float *x, /* [out] */ __RPC__out float *y) = 0; virtual HRESULT STDMETHODCALLTYPE SetSpotLocation( /* [in] */ INT32 pageIndex, /* [in] */ float x, /* [in] */ float y) = 0; virtual HRESULT STDMETHODCALLTYPE GetRequestId( /* [retval][string][out] */ __RPC__deref_out_opt_string LPWSTR *requestId) = 0; virtual HRESULT STDMETHODCALLTYPE GetSignature( /* [retval][out] */ __RPC__deref_out_opt IXpsSignature **signature) = 0; }; #else /* C style interface */ typedef struct IXpsSignatureRequestVtbl { BEGIN_INTERFACE HRESULT ( STDMETHODCALLTYPE *QueryInterface )( __RPC__in IXpsSignatureRequest * This, /* [in] */ __RPC__in REFIID riid, /* [annotation][iid_is][out] */ __RPC__deref_out void **ppvObject); ULONG ( STDMETHODCALLTYPE *AddRef )( __RPC__in IXpsSignatureRequest * This); ULONG ( STDMETHODCALLTYPE *Release )( __RPC__in IXpsSignatureRequest * This); HRESULT ( STDMETHODCALLTYPE *GetIntent )( __RPC__in IXpsSignatureRequest * This, /* [retval][string][out] */ __RPC__deref_out_opt_string LPWSTR *intent); HRESULT ( STDMETHODCALLTYPE *SetIntent )( __RPC__in IXpsSignatureRequest * This, /* [string][in] */ __RPC__in_string LPCWSTR intent); HRESULT ( STDMETHODCALLTYPE *GetRequestedSigner )( __RPC__in IXpsSignatureRequest * This, /* [retval][string][out] */ __RPC__deref_out_opt_string LPWSTR *signerName); HRESULT ( STDMETHODCALLTYPE *SetRequestedSigner )( __RPC__in IXpsSignatureRequest * This, /* [string][in] */ __RPC__in_string LPCWSTR signerName); HRESULT ( STDMETHODCALLTYPE *GetRequestSignByDate )( __RPC__in IXpsSignatureRequest * This, /* [retval][string][out] */ __RPC__deref_out_opt_string LPWSTR *dateString); HRESULT ( STDMETHODCALLTYPE *SetRequestSignByDate )( __RPC__in IXpsSignatureRequest * This, /* [string][in] */ __RPC__in_string LPCWSTR dateString); HRESULT ( STDMETHODCALLTYPE *GetSigningLocale )( __RPC__in IXpsSignatureRequest * This, /* [retval][string][out] */ __RPC__deref_out_opt_string LPWSTR *place); HRESULT ( STDMETHODCALLTYPE *SetSigningLocale )( __RPC__in IXpsSignatureRequest * This, /* [string][in] */ __RPC__in_string LPCWSTR place); HRESULT ( STDMETHODCALLTYPE *GetSpotLocation )( __RPC__in IXpsSignatureRequest * This, /* [out] */ __RPC__out INT32 *pageIndex, /* [out] */ __RPC__deref_out_opt IOpcPartUri **pagePartName, /* [out] */ __RPC__out float *x, /* [out] */ __RPC__out float *y); HRESULT ( STDMETHODCALLTYPE *SetSpotLocation )( __RPC__in IXpsSignatureRequest * This, /* [in] */ INT32 pageIndex, /* [in] */ float x, /* [in] */ float y); HRESULT ( STDMETHODCALLTYPE *GetRequestId )( __RPC__in IXpsSignatureRequest * This, /* [retval][string][out] */ __RPC__deref_out_opt_string LPWSTR *requestId); HRESULT ( STDMETHODCALLTYPE *GetSignature )( __RPC__in IXpsSignatureRequest * This, /* [retval][out] */ __RPC__deref_out_opt IXpsSignature **signature); END_INTERFACE } IXpsSignatureRequestVtbl; interface IXpsSignatureRequest { CONST_VTBL struct IXpsSignatureRequestVtbl *lpVtbl; }; #ifdef COBJMACROS #define IXpsSignatureRequest_QueryInterface(This,riid,ppvObject) \ ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) #define IXpsSignatureRequest_AddRef(This) \ ( (This)->lpVtbl -> AddRef(This) ) #define IXpsSignatureRequest_Release(This) \ ( (This)->lpVtbl -> Release(This) ) #define IXpsSignatureRequest_GetIntent(This,intent) \ ( (This)->lpVtbl -> GetIntent(This,intent) ) #define IXpsSignatureRequest_SetIntent(This,intent) \ ( (This)->lpVtbl -> SetIntent(This,intent) ) #define IXpsSignatureRequest_GetRequestedSigner(This,signerName) \ ( (This)->lpVtbl -> GetRequestedSigner(This,signerName) ) #define IXpsSignatureRequest_SetRequestedSigner(This,signerName) \ ( (This)->lpVtbl -> SetRequestedSigner(This,signerName) ) #define IXpsSignatureRequest_GetRequestSignByDate(This,dateString) \ ( (This)->lpVtbl -> GetRequestSignByDate(This,dateString) ) #define IXpsSignatureRequest_SetRequestSignByDate(This,dateString) \ ( (This)->lpVtbl -> SetRequestSignByDate(This,dateString) ) #define IXpsSignatureRequest_GetSigningLocale(This,place) \ ( (This)->lpVtbl -> GetSigningLocale(This,place) ) #define IXpsSignatureRequest_SetSigningLocale(This,place) \ ( (This)->lpVtbl -> SetSigningLocale(This,place) ) #define IXpsSignatureRequest_GetSpotLocation(This,pageIndex,pagePartName,x,y) \ ( (This)->lpVtbl -> GetSpotLocation(This,pageIndex,pagePartName,x,y) ) #define IXpsSignatureRequest_SetSpotLocation(This,pageIndex,x,y) \ ( (This)->lpVtbl -> SetSpotLocation(This,pageIndex,x,y) ) #define IXpsSignatureRequest_GetRequestId(This,requestId) \ ( (This)->lpVtbl -> GetRequestId(This,requestId) ) #define IXpsSignatureRequest_GetSignature(This,signature) \ ( (This)->lpVtbl -> GetSignature(This,signature) ) #endif /* COBJMACROS */ #endif /* C style interface */ #endif /* __IXpsSignatureRequest_INTERFACE_DEFINED__ */ #ifndef __IXpsSignatureManager_INTERFACE_DEFINED__ #define __IXpsSignatureManager_INTERFACE_DEFINED__ /* interface IXpsSignatureManager */ /* [local][uuid][object] */ EXTERN_C const IID IID_IXpsSignatureManager; #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("d3e8d338-fdc4-4afc-80b5-d532a1782ee1") IXpsSignatureManager : public IUnknown { public: virtual HRESULT STDMETHODCALLTYPE LoadPackageFile( /* [string][in] */ LPCWSTR fileName) = 0; virtual HRESULT STDMETHODCALLTYPE LoadPackageStream( /* [in] */ IStream *stream) = 0; virtual HRESULT STDMETHODCALLTYPE Sign( /* [in] */ IXpsSigningOptions *signOptions, /* [in] */ const CERT_CONTEXT *x509Certificate, /* [retval][out] */ IXpsSignature **signature) = 0; virtual HRESULT STDMETHODCALLTYPE GetSignatureOriginPartName( /* [retval][out] */ IOpcPartUri **signatureOriginPartName) = 0; virtual HRESULT STDMETHODCALLTYPE SetSignatureOriginPartName( /* [in] */ IOpcPartUri *signatureOriginPartName) = 0; virtual HRESULT STDMETHODCALLTYPE GetSignatures( /* [retval][out] */ IXpsSignatureCollection **signatures) = 0; virtual HRESULT STDMETHODCALLTYPE AddSignatureBlock( /* [in] */ IOpcPartUri *partName, /* [in] */ UINT32 fixedDocumentIndex, /* [retval][out] */ IXpsSignatureBlock **signatureBlock) = 0; virtual HRESULT STDMETHODCALLTYPE GetSignatureBlocks( /* [retval][out] */ IXpsSignatureBlockCollection **signatureBlocks) = 0; virtual HRESULT STDMETHODCALLTYPE CreateSigningOptions( /* [retval][out] */ IXpsSigningOptions **signingOptions) = 0; virtual HRESULT STDMETHODCALLTYPE SavePackageToFile( /* [string][in] */ LPCWSTR fileName, /* [unique][in] */ LPSECURITY_ATTRIBUTES securityAttributes, /* [in] */ DWORD flagsAndAttributes) = 0; virtual HRESULT STDMETHODCALLTYPE SavePackageToStream( /* [in] */ IStream *stream) = 0; }; #else /* C style interface */ typedef struct IXpsSignatureManagerVtbl { BEGIN_INTERFACE HRESULT ( STDMETHODCALLTYPE *QueryInterface )( IXpsSignatureManager * This, /* [in] */ REFIID riid, /* [annotation][iid_is][out] */ __RPC__deref_out void **ppvObject); ULONG ( STDMETHODCALLTYPE *AddRef )( IXpsSignatureManager * This); ULONG ( STDMETHODCALLTYPE *Release )( IXpsSignatureManager * This); HRESULT ( STDMETHODCALLTYPE *LoadPackageFile )( IXpsSignatureManager * This, /* [string][in] */ LPCWSTR fileName); HRESULT ( STDMETHODCALLTYPE *LoadPackageStream )( IXpsSignatureManager * This, /* [in] */ IStream *stream); HRESULT ( STDMETHODCALLTYPE *Sign )( IXpsSignatureManager * This, /* [in] */ IXpsSigningOptions *signOptions, /* [in] */ const CERT_CONTEXT *x509Certificate, /* [retval][out] */ IXpsSignature **signature); HRESULT ( STDMETHODCALLTYPE *GetSignatureOriginPartName )( IXpsSignatureManager * This, /* [retval][out] */ IOpcPartUri **signatureOriginPartName); HRESULT ( STDMETHODCALLTYPE *SetSignatureOriginPartName )( IXpsSignatureManager * This, /* [in] */ IOpcPartUri *signatureOriginPartName); HRESULT ( STDMETHODCALLTYPE *GetSignatures )( IXpsSignatureManager * This, /* [retval][out] */ IXpsSignatureCollection **signatures); HRESULT ( STDMETHODCALLTYPE *AddSignatureBlock )( IXpsSignatureManager * This, /* [in] */ IOpcPartUri *partName, /* [in] */ UINT32 fixedDocumentIndex, /* [retval][out] */ IXpsSignatureBlock **signatureBlock); HRESULT ( STDMETHODCALLTYPE *GetSignatureBlocks )( IXpsSignatureManager * This, /* [retval][out] */ IXpsSignatureBlockCollection **signatureBlocks); HRESULT ( STDMETHODCALLTYPE *CreateSigningOptions )( IXpsSignatureManager * This, /* [retval][out] */ IXpsSigningOptions **signingOptions); HRESULT ( STDMETHODCALLTYPE *SavePackageToFile )( IXpsSignatureManager * This, /* [string][in] */ LPCWSTR fileName, /* [unique][in] */ LPSECURITY_ATTRIBUTES securityAttributes, /* [in] */ DWORD flagsAndAttributes); HRESULT ( STDMETHODCALLTYPE *SavePackageToStream )( IXpsSignatureManager * This, /* [in] */ IStream *stream); END_INTERFACE } IXpsSignatureManagerVtbl; interface IXpsSignatureManager { CONST_VTBL struct IXpsSignatureManagerVtbl *lpVtbl; }; #ifdef COBJMACROS #define IXpsSignatureManager_QueryInterface(This,riid,ppvObject) \ ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) #define IXpsSignatureManager_AddRef(This) \ ( (This)->lpVtbl -> AddRef(This) ) #define IXpsSignatureManager_Release(This) \ ( (This)->lpVtbl -> Release(This) ) #define IXpsSignatureManager_LoadPackageFile(This,fileName) \ ( (This)->lpVtbl -> LoadPackageFile(This,fileName) ) #define IXpsSignatureManager_LoadPackageStream(This,stream) \ ( (This)->lpVtbl -> LoadPackageStream(This,stream) ) #define IXpsSignatureManager_Sign(This,signOptions,x509Certificate,signature) \ ( (This)->lpVtbl -> Sign(This,signOptions,x509Certificate,signature) ) #define IXpsSignatureManager_GetSignatureOriginPartName(This,signatureOriginPartName) \ ( (This)->lpVtbl -> GetSignatureOriginPartName(This,signatureOriginPartName) ) #define IXpsSignatureManager_SetSignatureOriginPartName(This,signatureOriginPartName) \ ( (This)->lpVtbl -> SetSignatureOriginPartName(This,signatureOriginPartName) ) #define IXpsSignatureManager_GetSignatures(This,signatures) \ ( (This)->lpVtbl -> GetSignatures(This,signatures) ) #define IXpsSignatureManager_AddSignatureBlock(This,partName,fixedDocumentIndex,signatureBlock) \ ( (This)->lpVtbl -> AddSignatureBlock(This,partName,fixedDocumentIndex,signatureBlock) ) #define IXpsSignatureManager_GetSignatureBlocks(This,signatureBlocks) \ ( (This)->lpVtbl -> GetSignatureBlocks(This,signatureBlocks) ) #define IXpsSignatureManager_CreateSigningOptions(This,signingOptions) \ ( (This)->lpVtbl -> CreateSigningOptions(This,signingOptions) ) #define IXpsSignatureManager_SavePackageToFile(This,fileName,securityAttributes,flagsAndAttributes) \ ( (This)->lpVtbl -> SavePackageToFile(This,fileName,securityAttributes,flagsAndAttributes) ) #define IXpsSignatureManager_SavePackageToStream(This,stream) \ ( (This)->lpVtbl -> SavePackageToStream(This,stream) ) #endif /* COBJMACROS */ #endif /* C style interface */ #endif /* __IXpsSignatureManager_INTERFACE_DEFINED__ */ EXTERN_C const CLSID CLSID_XpsSignatureManager; #ifdef __cplusplus class DECLSPEC_UUID("b0c43320-2315-44a2-b70a-0943a140a8ee") XpsSignatureManager; #endif #endif /* __MSXPSSIG_LIBRARY_DEFINED__ */ /* interface __MIDL_itf_xpsdigitalsignature_0001_0031 */ /* [local] */ #define XPS_E_SIGREQUESTID_DUP MAKE_HRESULT(1, FACILITY_XPS, 901) #define XPS_E_PACKAGE_NOT_OPENED MAKE_HRESULT(1, FACILITY_XPS, 902) #define XPS_E_PACKAGE_ALREADY_OPENED MAKE_HRESULT(1, FACILITY_XPS, 903) #define XPS_E_SIGNATUREID_DUP MAKE_HRESULT(1, FACILITY_XPS, 904) #define XPS_E_MARKUP_COMPATIBILITY_ELEMENTS MAKE_HRESULT(1, FACILITY_XPS, 905) #define XPS_E_OBJECT_DETACHED MAKE_HRESULT(1, FACILITY_XPS, 906) #define XPS_E_INVALID_SIGNATUREBLOCK_MARKUP MAKE_HRESULT(1, FACILITY_XPS, 907) #endif // (NTDDI >= NTDDI_WIN7) extern RPC_IF_HANDLE __MIDL_itf_xpsdigitalsignature_0001_0031_v0_0_c_ifspec; extern RPC_IF_HANDLE __MIDL_itf_xpsdigitalsignature_0001_0031_v0_0_s_ifspec; /* Additional Prototypes for ALL interfaces */ /* end of Additional Prototypes */ #ifdef __cplusplus } #endif #endif