unit JITComVCTKLib_TLB; // ************************************************************************ // // WARNING // ------- // The types declared in this file were generated from data read from a // Type Library. If this type library is explicitly or indirectly (via // another type library referring to this type library) re-imported, or the // 'Refresh' command of the Type Library Editor activated while editing the // Type Library, the contents of this file will be regenerated and all // manual modifications will be lost. // ************************************************************************ // // PASTLWTR : 1.2 // File generated on 2009-12-2 14:58:20 from Type Library described below. // ************************************************************************ // // Type Lib: E:\WorkRoot\JIT_IPC\产品研发\数字签名产品\签名服务器\02源码\client\VCTK\release\JITComVCTK.dll (1) // LIBID: {1281332C-EF71-4866-A895-3FC82FB06871} // LCID: 0 // Helpfile: // HelpString: JITComVCTK 1.0 Type Library // DepndLst: // (1) v2.0 stdole, (C:\WINDOWS\system32\stdole2.tlb) // Errors: // Error creating palette bitmap of (TJITVCTK) : Server E:\WorkRoot\JIT_IPC\产品研发\数字签名产品\签名服务器\02源码\client\VCTK\release\JITComVCTK.dll contains no icons // Error creating palette bitmap of (TJITDSign) : Server E:\WorkRoot\JIT_IPC\产品研发\数字签名产品\签名服务器\02源码\client\VCTK\release\JITComVCTK.dll contains no icons // ************************************************************************ // // *************************************************************************// // NOTE: // Items guarded by $IFDEF_LIVE_SERVER_AT_DESIGN_TIME are used by properties // which return objects that may need to be explicitly created via a function // call prior to any access via the property. These items have been disabled // in order to prevent accidental use from within the object inspector. You // may enable them by defining LIVE_SERVER_AT_DESIGN_TIME or by selectively // removing them from the $IFDEF blocks. However, such items must still be // programmatically created via a method of the appropriate CoClass before // they can be used. {$TYPEDADDRESS OFF} // Unit must be compiled without type-checked pointers. {$WARN SYMBOL_PLATFORM OFF} {$WRITEABLECONST ON} {$VARPROPSETTER ON} interface uses Windows, ActiveX, Classes, Graphics, OleServer, StdVCL, Variants; // *********************************************************************// // GUIDS declared in the TypeLibrary. Following prefixes are used: // Type Libraries : LIBID_xxxx // CoClasses : CLASS_xxxx // DISPInterfaces : DIID_xxxx // Non-DISP interfaces: IID_xxxx // *********************************************************************// const // TypeLibrary Major and minor versions JITComVCTKLibMajorVersion = 1; JITComVCTKLibMinorVersion = 0; LIBID_JITComVCTKLib: TGUID = '{1281332C-EF71-4866-A895-3FC82FB06871}'; IID_IJITVCTK: TGUID = '{9CDA9B8E-04AA-4070-9375-B1F327C8AA34}'; CLASS_JITVCTK: TGUID = '{707C7D52-85A8-4584-8954-573EFCE77488}'; IID_IJITDSign: TGUID = '{BD6E3733-66B4-4BD8-ADA1-64F1F6B508AC}'; CLASS_JITDSign: TGUID = '{06CA9432-D9BD-4867-8475-770B131E1759}'; type // *********************************************************************// // Forward declaration of types defined in TypeLibrary // *********************************************************************// IJITVCTK = interface; IJITVCTKDisp = dispinterface; IJITDSign = interface; IJITDSignDisp = dispinterface; // *********************************************************************// // Declaration of CoClasses defined in Type Library // (NOTE: Here we map each CoClass to its Default Interface) // *********************************************************************// JITVCTK = IJITVCTK; JITDSign = IJITDSign; // *********************************************************************// // Declaration of structures, unions and aliases. // *********************************************************************// PByte1 = ^Byte; {*} // *********************************************************************// // Interface: IJITVCTK // Flags: (4544) Dual NonExtensible OleAutomation Dispatchable // GUID: {9CDA9B8E-04AA-4070-9375-B1F327C8AA34} // *********************************************************************// IJITVCTK = interface(IDispatch) ['{9CDA9B8E-04AA-4070-9375-B1F327C8AA34}'] function SetCert(const bstrCertType: WideString; const bstrDN: WideString; const bstrSN: WideString; const bstrEmail: WideString; const bstrDNIssuer: WideString; const bstrCertBase64: WideString): Integer; safecall; function SetCertChooseType(nType: Integer): Integer; safecall; function GetCertInfo(const bstrCertType: WideString; lInfoType: Integer; const bstrOID: WideString): WideString; safecall; function SetAlgorithm(const bstrSignAlg: WideString; const bstrEncAlg: WideString): Integer; safecall; function AttachSign(const bstrDN: WideString; var pszSrcData: Byte; lSrcDataLen: Integer): WideString; safecall; function AttachSignEx(const bstrDN: WideString; const bstrFileName: WideString; const bstrFileNameOut: WideString): WideString; safecall; function VerifyAttachedSign(const bstrSignedData: WideString): Integer; safecall; function VerifyAttachedSignEx(const bstrFileNameAttached: WideString): Integer; safecall; function DetachSign(const bstrDN: WideString; var pszSrcData: Byte; lSrcDataLen: Integer): WideString; safecall; function DetachSignEx(const bstrDN: WideString; const bstrFileName: WideString; const bstrFileNameOut: WideString): WideString; safecall; function VerifyDetachedSign(const bstrSignedData: WideString; var pszSrcData: Byte; lSrcDataLen: Integer): Integer; safecall; function VerifyDetachedSignEx(const bstrSignedData: WideString; const bstrFileNameDetached: WideString; const bstrFileName: WideString): Integer; safecall; function EncryptEnvelop(const bstrDN: WideString; var pszSrcData: Byte; lSrcDataLen: Integer): WideString; safecall; function EncryptEnvelopEx(const bstrDN: WideString; const bstrFileName: WideString; const bstrFileNameOut: WideString): WideString; safecall; function DecryptEnvelop(const bstrEnvelop: WideString): Integer; safecall; function DecryptEnvelopEx(const bstrFileNameDetached: WideString): Integer; safecall; function CreateSignedEnvelop(const bstrSignCertDN: WideString; const bstrEncCertDN: WideString; var pszSrcData: Byte; lSrcDataLen: Integer): WideString; safecall; function CreateSignedEnvelopEx(const bstrSignCertDN: WideString; const bstrEncCertDN: WideString; const bstrFileName: WideString; const bstrFileNameOut: WideString): WideString; safecall; function VerifySignedEnvelop(const bstrEnvelop: WideString): Integer; safecall; function VerifySignedEnvelopEx(const bstrEvpFile: WideString): Integer; safecall; function GetDataEx(out pszSrcData: Byte; var plSrcDataLen: Integer): Integer; safecall; function GetFile(const bstrFileSavePath: WideString): WideString; safecall; function GetErrorCode: Integer; safecall; function GetErrorMessage(lErrorCode: Integer): WideString; safecall; function SetCSP(const bstrProvider: WideString): Integer; safecall; function SetPIN(const bstrPIN: WideString): Integer; safecall; function JITGetVersion: WideString; safecall; function GetBase64Encode(var pszSrcData: Byte; lSrcDataLen: Integer): WideString; safecall; function GetBase64Decode(const bstrBase64Data: WideString; out pszSrcData: Byte; var pSrcDataLen: Integer): Integer; safecall; function GetData: WideString; safecall; function AttachSignStr(const bstrDN: WideString; const bstrSrc: WideString): WideString; safecall; function DetachSignStr(const bstrDN: WideString; const bstrSrc: WideString): WideString; safecall; function VerifyDetachedSignStr(const bstrSignedData: WideString; const bstrSrc: WideString): Integer; safecall; function EncryptEnvelopStr(const bstrDN: WideString; const bstrSrc: WideString): WideString; safecall; function CreateSignedEnvelopStr(const bstrSignCertDN: WideString; const bstrEncCertDN: WideString; const bstrSrc: WideString): WideString; safecall; function GetCertList(const lpszType: WideString; const lpszDN: WideString; const lpszSN: WideString; const lpszEmail: WideString; const lpszIssuer: WideString; lInfoType: Integer): WideString; safecall; function SetCertEx(const bstrCertStoreType: WideString; const bstrCertType: WideString; const bstrDN: WideString; const bstrSN: WideString; const bstrEmail: WideString; const bstrDNIssuer: WideString; const bstrCertBase64: WideString): Integer; safecall; end; // *********************************************************************// // DispIntf: IJITVCTKDisp // Flags: (4544) Dual NonExtensible OleAutomation Dispatchable // GUID: {9CDA9B8E-04AA-4070-9375-B1F327C8AA34} // *********************************************************************// IJITVCTKDisp = dispinterface ['{9CDA9B8E-04AA-4070-9375-B1F327C8AA34}'] function SetCert(const bstrCertType: WideString; const bstrDN: WideString; const bstrSN: WideString; const bstrEmail: WideString; const bstrDNIssuer: WideString; const bstrCertBase64: WideString): Integer; dispid 1; function SetCertChooseType(nType: Integer): Integer; dispid 2; function GetCertInfo(const bstrCertType: WideString; lInfoType: Integer; const bstrOID: WideString): WideString; dispid 3; function SetAlgorithm(const bstrSignAlg: WideString; const bstrEncAlg: WideString): Integer; dispid 4; function AttachSign(const bstrDN: WideString; var pszSrcData: Byte; lSrcDataLen: Integer): WideString; dispid 5; function AttachSignEx(const bstrDN: WideString; const bstrFileName: WideString; const bstrFileNameOut: WideString): WideString; dispid 6; function VerifyAttachedSign(const bstrSignedData: WideString): Integer; dispid 7; function VerifyAttachedSignEx(const bstrFileNameAttached: WideString): Integer; dispid 8; function DetachSign(const bstrDN: WideString; var pszSrcData: Byte; lSrcDataLen: Integer): WideString; dispid 9; function DetachSignEx(const bstrDN: WideString; const bstrFileName: WideString; const bstrFileNameOut: WideString): WideString; dispid 10; function VerifyDetachedSign(const bstrSignedData: WideString; var pszSrcData: Byte; lSrcDataLen: Integer): Integer; dispid 11; function VerifyDetachedSignEx(const bstrSignedData: WideString; const bstrFileNameDetached: WideString; const bstrFileName: WideString): Integer; dispid 12; function EncryptEnvelop(const bstrDN: WideString; var pszSrcData: Byte; lSrcDataLen: Integer): WideString; dispid 13; function EncryptEnvelopEx(const bstrDN: WideString; const bstrFileName: WideString; const bstrFileNameOut: WideString): WideString; dispid 14; function DecryptEnvelop(const bstrEnvelop: WideString): Integer; dispid 15; function DecryptEnvelopEx(const bstrFileNameDetached: WideString): Integer; dispid 16; function CreateSignedEnvelop(const bstrSignCertDN: WideString; const bstrEncCertDN: WideString; var pszSrcData: Byte; lSrcDataLen: Integer): WideString; dispid 17; function CreateSignedEnvelopEx(const bstrSignCertDN: WideString; const bstrEncCertDN: WideString; const bstrFileName: WideString; const bstrFileNameOut: WideString): WideString; dispid 18; function VerifySignedEnvelop(const bstrEnvelop: WideString): Integer; dispid 19; function VerifySignedEnvelopEx(const bstrEvpFile: WideString): Integer; dispid 20; function GetDataEx(out pszSrcData: Byte; var plSrcDataLen: Integer): Integer; dispid 21; function GetFile(const bstrFileSavePath: WideString): WideString; dispid 22; function GetErrorCode: Integer; dispid 23; function GetErrorMessage(lErrorCode: Integer): WideString; dispid 24; function SetCSP(const bstrProvider: WideString): Integer; dispid 25; function SetPIN(const bstrPIN: WideString): Integer; dispid 26; function JITGetVersion: WideString; dispid 27; function GetBase64Encode(var pszSrcData: Byte; lSrcDataLen: Integer): WideString; dispid 28; function GetBase64Decode(const bstrBase64Data: WideString; out pszSrcData: Byte; var pSrcDataLen: Integer): Integer; dispid 29; function GetData: WideString; dispid 30; function AttachSignStr(const bstrDN: WideString; const bstrSrc: WideString): WideString; dispid 31; function DetachSignStr(const bstrDN: WideString; const bstrSrc: WideString): WideString; dispid 32; function VerifyDetachedSignStr(const bstrSignedData: WideString; const bstrSrc: WideString): Integer; dispid 33; function EncryptEnvelopStr(const bstrDN: WideString; const bstrSrc: WideString): WideString; dispid 34; function CreateSignedEnvelopStr(const bstrSignCertDN: WideString; const bstrEncCertDN: WideString; const bstrSrc: WideString): WideString; dispid 35; function GetCertList(const lpszType: WideString; const lpszDN: WideString; const lpszSN: WideString; const lpszEmail: WideString; const lpszIssuer: WideString; lInfoType: Integer): WideString; dispid 36; function SetCertEx(const bstrCertStoreType: WideString; const bstrCertType: WideString; const bstrDN: WideString; const bstrSN: WideString; const bstrEmail: WideString; const bstrDNIssuer: WideString; const bstrCertBase64: WideString): Integer; dispid 37; end; // *********************************************************************// // Interface: IJITDSign // Flags: (4544) Dual NonExtensible OleAutomation Dispatchable // GUID: {BD6E3733-66B4-4BD8-ADA1-64F1F6B508AC} // *********************************************************************// IJITDSign = interface(IDispatch) ['{BD6E3733-66B4-4BD8-ADA1-64F1F6B508AC}'] function GetVersion: WideString; safecall; function SetCert(const lpstrCertType: WideString; const lpstrDN: WideString; const lpstrSN: WideString; const lpstrEmail: WideString; const lpstrDNIssuer: WideString; const lpstrCertBase64: WideString): Integer; safecall; function SetCertChooseType(lType: Integer): Integer; safecall; function GetCertInfo(const pszCertType: WideString; lInfoType: Integer; const pszOID: WideString): WideString; safecall; function SetAlgorithm(const lpstrSignAlgo: WideString; const lpstrEncAlgo: WideString): Integer; safecall; function AttachSign(const lpstrDN: WideString; const pszSrcData: WideString): WideString; safecall; function AttachSignEx(const pszDN: WideString; const pszFileName: WideString; const pszFileNameOut: WideString): WideString; safecall; function VerifyAttachedSign(const bstrSignedData: WideString): Integer; safecall; function VerifyAttachedSignEx(const bstrFileNameAttached: WideString): Integer; safecall; function DetachSign(const lpstrDN: WideString; const pszSrcData: WideString): WideString; safecall; function DetachSignEx(const pszDN: WideString; const pszFileName: WideString; const pszFileNameOut: WideString): WideString; safecall; function VerifyDetachedSign(const pszSignedData: WideString; const pszSrcData: WideString): Integer; safecall; function VerifyDetachedSignEx(const pszSignedData: WideString; const pszFileNameDetached: WideString; const pszFileName: WideString): Integer; safecall; function EncryptEnvelop(const pszDN: WideString; const pszSrcData: WideString): WideString; safecall; function EncryptEnvelopEx(const pszDN: WideString; const pszFileName: WideString; const pszFileNameOut: WideString): WideString; safecall; function DecryptEnvelop(const pszEvpContent: WideString): Integer; safecall; function DecryptEnvelopEx(const bstrEvpFile: WideString): Integer; safecall; function CreateSignedEnvelop(const bstrSignCertDN: WideString; const bstrEncCertDN: WideString; const pVarSrcData: WideString): WideString; safecall; function CreateSignedEnvelopEx(const bstrSignCertDN: WideString; const bstrEncCertDN: WideString; const pbstrFileName: WideString; const bstrFileNameOut: WideString): WideString; safecall; function VerifySignedEnvelop(const bstrEnvelop: WideString): Integer; safecall; function VerifySignedEnvelopEx(const bstrEvpFile: WideString): Integer; safecall; function GetBase64Encode(const bstrSrcData: WideString): WideString; safecall; function GetBase64Decode(const bstrBase64Data: WideString): WideString; safecall; function GetErrorCode: Integer; safecall; function GetBase64HashEnCode(const bstrSrcData: WideString): WideString; safecall; function GetErrorMessage: WideString; safecall; function GetData: WideString; safecall; function GetFile(const bstrFileSavePath: WideString): WideString; safecall; function AddData(const bstrSrcData: WideString): Integer; safecall; function AddFile(const bstrSrcFile: WideString): Integer; safecall; function SetCSP(const pszProvider: WideString): Integer; safecall; function SetPIN(const pszPIN: WideString): Integer; safecall; function GetCertList(const lpszType: WideString; const lpszDN: WideString; const lpszSN: WideString; const lpszEmail: WideString; const lpszIssuer: WideString; lInfoType: Integer): WideString; safecall; function SetErrMsgLanguage(const lpzLangType: WideString): Integer; safecall; function ClearPIN: Integer; safecall; end; // *********************************************************************// // DispIntf: IJITDSignDisp // Flags: (4544) Dual NonExtensible OleAutomation Dispatchable // GUID: {BD6E3733-66B4-4BD8-ADA1-64F1F6B508AC} // *********************************************************************// IJITDSignDisp = dispinterface ['{BD6E3733-66B4-4BD8-ADA1-64F1F6B508AC}'] function GetVersion: WideString; dispid 1; function SetCert(const lpstrCertType: WideString; const lpstrDN: WideString; const lpstrSN: WideString; const lpstrEmail: WideString; const lpstrDNIssuer: WideString; const lpstrCertBase64: WideString): Integer; dispid 2; function SetCertChooseType(lType: Integer): Integer; dispid 3; function GetCertInfo(const pszCertType: WideString; lInfoType: Integer; const pszOID: WideString): WideString; dispid 4; function SetAlgorithm(const lpstrSignAlgo: WideString; const lpstrEncAlgo: WideString): Integer; dispid 5; function AttachSign(const lpstrDN: WideString; const pszSrcData: WideString): WideString; dispid 6; function AttachSignEx(const pszDN: WideString; const pszFileName: WideString; const pszFileNameOut: WideString): WideString; dispid 7; function VerifyAttachedSign(const bstrSignedData: WideString): Integer; dispid 8; function VerifyAttachedSignEx(const bstrFileNameAttached: WideString): Integer; dispid 9; function DetachSign(const lpstrDN: WideString; const pszSrcData: WideString): WideString; dispid 10; function DetachSignEx(const pszDN: WideString; const pszFileName: WideString; const pszFileNameOut: WideString): WideString; dispid 11; function VerifyDetachedSign(const pszSignedData: WideString; const pszSrcData: WideString): Integer; dispid 12; function VerifyDetachedSignEx(const pszSignedData: WideString; const pszFileNameDetached: WideString; const pszFileName: WideString): Integer; dispid 13; function EncryptEnvelop(const pszDN: WideString; const pszSrcData: WideString): WideString; dispid 14; function EncryptEnvelopEx(const pszDN: WideString; const pszFileName: WideString; const pszFileNameOut: WideString): WideString; dispid 15; function DecryptEnvelop(const pszEvpContent: WideString): Integer; dispid 16; function DecryptEnvelopEx(const bstrEvpFile: WideString): Integer; dispid 17; function CreateSignedEnvelop(const bstrSignCertDN: WideString; const bstrEncCertDN: WideString; const pVarSrcData: WideString): WideString; dispid 18; function CreateSignedEnvelopEx(const bstrSignCertDN: WideString; const bstrEncCertDN: WideString; const pbstrFileName: WideString; const bstrFileNameOut: WideString): WideString; dispid 19; function VerifySignedEnvelop(const bstrEnvelop: WideString): Integer; dispid 20; function VerifySignedEnvelopEx(const bstrEvpFile: WideString): Integer; dispid 21; function GetBase64Encode(const bstrSrcData: WideString): WideString; dispid 22; function GetBase64Decode(const bstrBase64Data: WideString): WideString; dispid 23; function GetErrorCode: Integer; dispid 24; function GetBase64HashEnCode(const bstrSrcData: WideString): WideString; dispid 25; function GetErrorMessage: WideString; dispid 26; function GetData: WideString; dispid 27; function GetFile(const bstrFileSavePath: WideString): WideString; dispid 28; function AddData(const bstrSrcData: WideString): Integer; dispid 29; function AddFile(const bstrSrcFile: WideString): Integer; dispid 30; function SetCSP(const pszProvider: WideString): Integer; dispid 31; function SetPIN(const pszPIN: WideString): Integer; dispid 32; function GetCertList(const lpszType: WideString; const lpszDN: WideString; const lpszSN: WideString; const lpszEmail: WideString; const lpszIssuer: WideString; lInfoType: Integer): WideString; dispid 33; function SetErrMsgLanguage(const lpzLangType: WideString): Integer; dispid 34; function ClearPIN: Integer; dispid 35; end; // *********************************************************************// // The Class CoJITVCTK provides a Create and CreateRemote method to // create instances of the default interface IJITVCTK exposed by // the CoClass JITVCTK. The functions are intended to be used by // clients wishing to automate the CoClass objects exposed by the // server of this typelibrary. // *********************************************************************// CoJITVCTK = class class function Create: IJITVCTK; class function CreateRemote(const MachineName: string): IJITVCTK; end; // *********************************************************************// // OLE Server Proxy class declaration // Server Object : TJITVCTK // Help String : JITVCTK Class // Default Interface: IJITVCTK // Def. Intf. DISP? : No // Event Interface: // TypeFlags : (2) CanCreate // *********************************************************************// {$IFDEF LIVE_SERVER_AT_DESIGN_TIME} TJITVCTKProperties= class; {$ENDIF} TJITVCTK = class(TOleServer) private FIntf: IJITVCTK; {$IFDEF LIVE_SERVER_AT_DESIGN_TIME} FProps: TJITVCTKProperties; function GetServerProperties: TJITVCTKProperties; {$ENDIF} function GetDefaultInterface: IJITVCTK; protected procedure InitServerData; override; public constructor Create(AOwner: TComponent); override; destructor Destroy; override; procedure Connect; override; procedure ConnectTo(svrIntf: IJITVCTK); procedure Disconnect; override; function SetCert(const bstrCertType: WideString; const bstrDN: WideString; const bstrSN: WideString; const bstrEmail: WideString; const bstrDNIssuer: WideString; const bstrCertBase64: WideString): Integer; function SetCertChooseType(nType: Integer): Integer; function GetCertInfo(const bstrCertType: WideString; lInfoType: Integer; const bstrOID: WideString): WideString; function SetAlgorithm(const bstrSignAlg: WideString; const bstrEncAlg: WideString): Integer; function AttachSign(const bstrDN: WideString; var pszSrcData: Byte; lSrcDataLen: Integer): WideString; function AttachSignEx(const bstrDN: WideString; const bstrFileName: WideString; const bstrFileNameOut: WideString): WideString; function VerifyAttachedSign(const bstrSignedData: WideString): Integer; function VerifyAttachedSignEx(const bstrFileNameAttached: WideString): Integer; function DetachSign(const bstrDN: WideString; var pszSrcData: Byte; lSrcDataLen: Integer): WideString; function DetachSignEx(const bstrDN: WideString; const bstrFileName: WideString; const bstrFileNameOut: WideString): WideString; function VerifyDetachedSign(const bstrSignedData: WideString; var pszSrcData: Byte; lSrcDataLen: Integer): Integer; function VerifyDetachedSignEx(const bstrSignedData: WideString; const bstrFileNameDetached: WideString; const bstrFileName: WideString): Integer; function EncryptEnvelop(const bstrDN: WideString; var pszSrcData: Byte; lSrcDataLen: Integer): WideString; function EncryptEnvelopEx(const bstrDN: WideString; const bstrFileName: WideString; const bstrFileNameOut: WideString): WideString; function DecryptEnvelop(const bstrEnvelop: WideString): Integer; function DecryptEnvelopEx(const bstrFileNameDetached: WideString): Integer; function CreateSignedEnvelop(const bstrSignCertDN: WideString; const bstrEncCertDN: WideString; var pszSrcData: Byte; lSrcDataLen: Integer): WideString; function CreateSignedEnvelopEx(const bstrSignCertDN: WideString; const bstrEncCertDN: WideString; const bstrFileName: WideString; const bstrFileNameOut: WideString): WideString; function VerifySignedEnvelop(const bstrEnvelop: WideString): Integer; function VerifySignedEnvelopEx(const bstrEvpFile: WideString): Integer; function GetDataEx(out pszSrcData: Byte; var plSrcDataLen: Integer): Integer; function GetFile(const bstrFileSavePath: WideString): WideString; function GetErrorCode: Integer; function GetErrorMessage(lErrorCode: Integer): WideString; function SetCSP(const bstrProvider: WideString): Integer; function SetPIN(const bstrPIN: WideString): Integer; function JITGetVersion: WideString; function GetBase64Encode(var pszSrcData: Byte; lSrcDataLen: Integer): WideString; function GetBase64Decode(const bstrBase64Data: WideString; out pszSrcData: Byte; var pSrcDataLen: Integer): Integer; function GetData: WideString; function AttachSignStr(const bstrDN: WideString; const bstrSrc: WideString): WideString; function DetachSignStr(const bstrDN: WideString; const bstrSrc: WideString): WideString; function VerifyDetachedSignStr(const bstrSignedData: WideString; const bstrSrc: WideString): Integer; function EncryptEnvelopStr(const bstrDN: WideString; const bstrSrc: WideString): WideString; function CreateSignedEnvelopStr(const bstrSignCertDN: WideString; const bstrEncCertDN: WideString; const bstrSrc: WideString): WideString; function GetCertList(const lpszType: WideString; const lpszDN: WideString; const lpszSN: WideString; const lpszEmail: WideString; const lpszIssuer: WideString; lInfoType: Integer): WideString; function SetCertEx(const bstrCertStoreType: WideString; const bstrCertType: WideString; const bstrDN: WideString; const bstrSN: WideString; const bstrEmail: WideString; const bstrDNIssuer: WideString; const bstrCertBase64: WideString): Integer; property DefaultInterface: IJITVCTK read GetDefaultInterface; published {$IFDEF LIVE_SERVER_AT_DESIGN_TIME} property Server: TJITVCTKProperties read GetServerProperties; {$ENDIF} end; {$IFDEF LIVE_SERVER_AT_DESIGN_TIME} // *********************************************************************// // OLE Server Properties Proxy Class // Server Object : TJITVCTK // (This object is used by the IDE's Property Inspector to allow editing // of the properties of this server) // *********************************************************************// TJITVCTKProperties = class(TPersistent) private FServer: TJITVCTK; function GetDefaultInterface: IJITVCTK; constructor Create(AServer: TJITVCTK); protected public property DefaultInterface: IJITVCTK read GetDefaultInterface; published end; {$ENDIF} // *********************************************************************// // The Class CoJITDSign provides a Create and CreateRemote method to // create instances of the default interface IJITDSign exposed by // the CoClass JITDSign. The functions are intended to be used by // clients wishing to automate the CoClass objects exposed by the // server of this typelibrary. // *********************************************************************// CoJITDSign = class class function Create: IJITDSign; class function CreateRemote(const MachineName: string): IJITDSign; end; // *********************************************************************// // OLE Server Proxy class declaration // Server Object : TJITDSign // Help String : JITDSign Class // Default Interface: IJITDSign // Def. Intf. DISP? : No // Event Interface: // TypeFlags : (2) CanCreate // *********************************************************************// {$IFDEF LIVE_SERVER_AT_DESIGN_TIME} TJITDSignProperties= class; {$ENDIF} TJITDSign = class(TOleServer) private FIntf: IJITDSign; {$IFDEF LIVE_SERVER_AT_DESIGN_TIME} FProps: TJITDSignProperties; function GetServerProperties: TJITDSignProperties; {$ENDIF} function GetDefaultInterface: IJITDSign; protected procedure InitServerData; override; public constructor Create(AOwner: TComponent); override; destructor Destroy; override; procedure Connect; override; procedure ConnectTo(svrIntf: IJITDSign); procedure Disconnect; override; function GetVersion: WideString; function SetCert(const lpstrCertType: WideString; const lpstrDN: WideString; const lpstrSN: WideString; const lpstrEmail: WideString; const lpstrDNIssuer: WideString; const lpstrCertBase64: WideString): Integer; function SetCertChooseType(lType: Integer): Integer; function GetCertInfo(const pszCertType: WideString; lInfoType: Integer; const pszOID: WideString): WideString; function SetAlgorithm(const lpstrSignAlgo: WideString; const lpstrEncAlgo: WideString): Integer; function AttachSign(const lpstrDN: WideString; const pszSrcData: WideString): WideString; function AttachSignEx(const pszDN: WideString; const pszFileName: WideString; const pszFileNameOut: WideString): WideString; function VerifyAttachedSign(const bstrSignedData: WideString): Integer; function VerifyAttachedSignEx(const bstrFileNameAttached: WideString): Integer; function DetachSign(const lpstrDN: WideString; const pszSrcData: WideString): WideString; function DetachSignEx(const pszDN: WideString; const pszFileName: WideString; const pszFileNameOut: WideString): WideString; function VerifyDetachedSign(const pszSignedData: WideString; const pszSrcData: WideString): Integer; function VerifyDetachedSignEx(const pszSignedData: WideString; const pszFileNameDetached: WideString; const pszFileName: WideString): Integer; function EncryptEnvelop(const pszDN: WideString; const pszSrcData: WideString): WideString; function EncryptEnvelopEx(const pszDN: WideString; const pszFileName: WideString; const pszFileNameOut: WideString): WideString; function DecryptEnvelop(const pszEvpContent: WideString): Integer; function DecryptEnvelopEx(const bstrEvpFile: WideString): Integer; function CreateSignedEnvelop(const bstrSignCertDN: WideString; const bstrEncCertDN: WideString; const pVarSrcData: WideString): WideString; function CreateSignedEnvelopEx(const bstrSignCertDN: WideString; const bstrEncCertDN: WideString; const pbstrFileName: WideString; const bstrFileNameOut: WideString): WideString; function VerifySignedEnvelop(const bstrEnvelop: WideString): Integer; function VerifySignedEnvelopEx(const bstrEvpFile: WideString): Integer; function GetBase64Encode(const bstrSrcData: WideString): WideString; function GetBase64Decode(const bstrBase64Data: WideString): WideString; function GetErrorCode: Integer; function GetBase64HashEnCode(const bstrSrcData: WideString): WideString; function GetErrorMessage: WideString; function GetData: WideString; function GetFile(const bstrFileSavePath: WideString): WideString; function AddData(const bstrSrcData: WideString): Integer; function AddFile(const bstrSrcFile: WideString): Integer; function SetCSP(const pszProvider: WideString): Integer; function SetPIN(const pszPIN: WideString): Integer; function GetCertList(const lpszType: WideString; const lpszDN: WideString; const lpszSN: WideString; const lpszEmail: WideString; const lpszIssuer: WideString; lInfoType: Integer): WideString; function SetErrMsgLanguage(const lpzLangType: WideString): Integer; function ClearPIN: Integer; property DefaultInterface: IJITDSign read GetDefaultInterface; published {$IFDEF LIVE_SERVER_AT_DESIGN_TIME} property Server: TJITDSignProperties read GetServerProperties; {$ENDIF} end; {$IFDEF LIVE_SERVER_AT_DESIGN_TIME} // *********************************************************************// // OLE Server Properties Proxy Class // Server Object : TJITDSign // (This object is used by the IDE's Property Inspector to allow editing // of the properties of this server) // *********************************************************************// TJITDSignProperties = class(TPersistent) private FServer: TJITDSign; function GetDefaultInterface: IJITDSign; constructor Create(AServer: TJITDSign); protected public property DefaultInterface: IJITDSign read GetDefaultInterface; published end; {$ENDIF} procedure Register; resourcestring dtlServerPage = 'ActiveX'; dtlOcxPage = 'ActiveX'; implementation uses ComObj; class function CoJITVCTK.Create: IJITVCTK; begin Result := CreateComObject(CLASS_JITVCTK) as IJITVCTK; end; class function CoJITVCTK.CreateRemote(const MachineName: string): IJITVCTK; begin Result := CreateRemoteComObject(MachineName, CLASS_JITVCTK) as IJITVCTK; end; procedure TJITVCTK.InitServerData; const CServerData: TServerData = ( ClassID: '{707C7D52-85A8-4584-8954-573EFCE77488}'; IntfIID: '{9CDA9B8E-04AA-4070-9375-B1F327C8AA34}'; EventIID: ''; LicenseKey: nil; Version: 500); begin ServerData := @CServerData; end; procedure TJITVCTK.Connect; var punk: IUnknown; begin if FIntf = nil then begin punk := GetServer; Fintf:= punk as IJITVCTK; end; end; procedure TJITVCTK.ConnectTo(svrIntf: IJITVCTK); begin Disconnect; FIntf := svrIntf; end; procedure TJITVCTK.DisConnect; begin if Fintf <> nil then begin FIntf := nil; end; end; function TJITVCTK.GetDefaultInterface: IJITVCTK; begin if FIntf = nil then Connect; Assert(FIntf <> nil, 'DefaultInterface is NULL. Component is not connected to Server. You must call ''Connect'' or ''ConnectTo'' before this operation'); Result := FIntf; end; constructor TJITVCTK.Create(AOwner: TComponent); begin inherited Create(AOwner); {$IFDEF LIVE_SERVER_AT_DESIGN_TIME} FProps := TJITVCTKProperties.Create(Self); {$ENDIF} end; destructor TJITVCTK.Destroy; begin {$IFDEF LIVE_SERVER_AT_DESIGN_TIME} FProps.Free; {$ENDIF} inherited Destroy; end; {$IFDEF LIVE_SERVER_AT_DESIGN_TIME} function TJITVCTK.GetServerProperties: TJITVCTKProperties; begin Result := FProps; end; {$ENDIF} function TJITVCTK.SetCert(const bstrCertType: WideString; const bstrDN: WideString; const bstrSN: WideString; const bstrEmail: WideString; const bstrDNIssuer: WideString; const bstrCertBase64: WideString): Integer; begin Result := DefaultInterface.SetCert(bstrCertType, bstrDN, bstrSN, bstrEmail, bstrDNIssuer, bstrCertBase64); end; function TJITVCTK.SetCertChooseType(nType: Integer): Integer; begin Result := DefaultInterface.SetCertChooseType(nType); end; function TJITVCTK.GetCertInfo(const bstrCertType: WideString; lInfoType: Integer; const bstrOID: WideString): WideString; begin Result := DefaultInterface.GetCertInfo(bstrCertType, lInfoType, bstrOID); end; function TJITVCTK.SetAlgorithm(const bstrSignAlg: WideString; const bstrEncAlg: WideString): Integer; begin Result := DefaultInterface.SetAlgorithm(bstrSignAlg, bstrEncAlg); end; function TJITVCTK.AttachSign(const bstrDN: WideString; var pszSrcData: Byte; lSrcDataLen: Integer): WideString; begin Result := DefaultInterface.AttachSign(bstrDN, pszSrcData, lSrcDataLen); end; function TJITVCTK.AttachSignEx(const bstrDN: WideString; const bstrFileName: WideString; const bstrFileNameOut: WideString): WideString; begin Result := DefaultInterface.AttachSignEx(bstrDN, bstrFileName, bstrFileNameOut); end; function TJITVCTK.VerifyAttachedSign(const bstrSignedData: WideString): Integer; begin Result := DefaultInterface.VerifyAttachedSign(bstrSignedData); end; function TJITVCTK.VerifyAttachedSignEx(const bstrFileNameAttached: WideString): Integer; begin Result := DefaultInterface.VerifyAttachedSignEx(bstrFileNameAttached); end; function TJITVCTK.DetachSign(const bstrDN: WideString; var pszSrcData: Byte; lSrcDataLen: Integer): WideString; begin Result := DefaultInterface.DetachSign(bstrDN, pszSrcData, lSrcDataLen); end; function TJITVCTK.DetachSignEx(const bstrDN: WideString; const bstrFileName: WideString; const bstrFileNameOut: WideString): WideString; begin Result := DefaultInterface.DetachSignEx(bstrDN, bstrFileName, bstrFileNameOut); end; function TJITVCTK.VerifyDetachedSign(const bstrSignedData: WideString; var pszSrcData: Byte; lSrcDataLen: Integer): Integer; begin Result := DefaultInterface.VerifyDetachedSign(bstrSignedData, pszSrcData, lSrcDataLen); end; function TJITVCTK.VerifyDetachedSignEx(const bstrSignedData: WideString; const bstrFileNameDetached: WideString; const bstrFileName: WideString): Integer; begin Result := DefaultInterface.VerifyDetachedSignEx(bstrSignedData, bstrFileNameDetached, bstrFileName); end; function TJITVCTK.EncryptEnvelop(const bstrDN: WideString; var pszSrcData: Byte; lSrcDataLen: Integer): WideString; begin Result := DefaultInterface.EncryptEnvelop(bstrDN, pszSrcData, lSrcDataLen); end; function TJITVCTK.EncryptEnvelopEx(const bstrDN: WideString; const bstrFileName: WideString; const bstrFileNameOut: WideString): WideString; begin Result := DefaultInterface.EncryptEnvelopEx(bstrDN, bstrFileName, bstrFileNameOut); end; function TJITVCTK.DecryptEnvelop(const bstrEnvelop: WideString): Integer; begin Result := DefaultInterface.DecryptEnvelop(bstrEnvelop); end; function TJITVCTK.DecryptEnvelopEx(const bstrFileNameDetached: WideString): Integer; begin Result := DefaultInterface.DecryptEnvelopEx(bstrFileNameDetached); end; function TJITVCTK.CreateSignedEnvelop(const bstrSignCertDN: WideString; const bstrEncCertDN: WideString; var pszSrcData: Byte; lSrcDataLen: Integer): WideString; begin Result := DefaultInterface.CreateSignedEnvelop(bstrSignCertDN, bstrEncCertDN, pszSrcData, lSrcDataLen); end; function TJITVCTK.CreateSignedEnvelopEx(const bstrSignCertDN: WideString; const bstrEncCertDN: WideString; const bstrFileName: WideString; const bstrFileNameOut: WideString): WideString; begin Result := DefaultInterface.CreateSignedEnvelopEx(bstrSignCertDN, bstrEncCertDN, bstrFileName, bstrFileNameOut); end; function TJITVCTK.VerifySignedEnvelop(const bstrEnvelop: WideString): Integer; begin Result := DefaultInterface.VerifySignedEnvelop(bstrEnvelop); end; function TJITVCTK.VerifySignedEnvelopEx(const bstrEvpFile: WideString): Integer; begin Result := DefaultInterface.VerifySignedEnvelopEx(bstrEvpFile); end; function TJITVCTK.GetDataEx(out pszSrcData: Byte; var plSrcDataLen: Integer): Integer; begin Result := DefaultInterface.GetDataEx(pszSrcData, plSrcDataLen); end; function TJITVCTK.GetFile(const bstrFileSavePath: WideString): WideString; begin Result := DefaultInterface.GetFile(bstrFileSavePath); end; function TJITVCTK.GetErrorCode: Integer; begin Result := DefaultInterface.GetErrorCode; end; function TJITVCTK.GetErrorMessage(lErrorCode: Integer): WideString; begin Result := DefaultInterface.GetErrorMessage(lErrorCode); end; function TJITVCTK.SetCSP(const bstrProvider: WideString): Integer; begin Result := DefaultInterface.SetCSP(bstrProvider); end; function TJITVCTK.SetPIN(const bstrPIN: WideString): Integer; begin Result := DefaultInterface.SetPIN(bstrPIN); end; function TJITVCTK.JITGetVersion: WideString; begin Result := DefaultInterface.JITGetVersion; end; function TJITVCTK.GetBase64Encode(var pszSrcData: Byte; lSrcDataLen: Integer): WideString; begin Result := DefaultInterface.GetBase64Encode(pszSrcData, lSrcDataLen); end; function TJITVCTK.GetBase64Decode(const bstrBase64Data: WideString; out pszSrcData: Byte; var pSrcDataLen: Integer): Integer; begin Result := DefaultInterface.GetBase64Decode(bstrBase64Data, pszSrcData, pSrcDataLen); end; function TJITVCTK.GetData: WideString; begin Result := DefaultInterface.GetData; end; function TJITVCTK.AttachSignStr(const bstrDN: WideString; const bstrSrc: WideString): WideString; begin Result := DefaultInterface.AttachSignStr(bstrDN, bstrSrc); end; function TJITVCTK.DetachSignStr(const bstrDN: WideString; const bstrSrc: WideString): WideString; begin Result := DefaultInterface.DetachSignStr(bstrDN, bstrSrc); end; function TJITVCTK.VerifyDetachedSignStr(const bstrSignedData: WideString; const bstrSrc: WideString): Integer; begin Result := DefaultInterface.VerifyDetachedSignStr(bstrSignedData, bstrSrc); end; function TJITVCTK.EncryptEnvelopStr(const bstrDN: WideString; const bstrSrc: WideString): WideString; begin Result := DefaultInterface.EncryptEnvelopStr(bstrDN, bstrSrc); end; function TJITVCTK.CreateSignedEnvelopStr(const bstrSignCertDN: WideString; const bstrEncCertDN: WideString; const bstrSrc: WideString): WideString; begin Result := DefaultInterface.CreateSignedEnvelopStr(bstrSignCertDN, bstrEncCertDN, bstrSrc); end; function TJITVCTK.GetCertList(const lpszType: WideString; const lpszDN: WideString; const lpszSN: WideString; const lpszEmail: WideString; const lpszIssuer: WideString; lInfoType: Integer): WideString; begin Result := DefaultInterface.GetCertList(lpszType, lpszDN, lpszSN, lpszEmail, lpszIssuer, lInfoType); end; function TJITVCTK.SetCertEx(const bstrCertStoreType: WideString; const bstrCertType: WideString; const bstrDN: WideString; const bstrSN: WideString; const bstrEmail: WideString; const bstrDNIssuer: WideString; const bstrCertBase64: WideString): Integer; begin Result := DefaultInterface.SetCertEx(bstrCertStoreType, bstrCertType, bstrDN, bstrSN, bstrEmail, bstrDNIssuer, bstrCertBase64); end; {$IFDEF LIVE_SERVER_AT_DESIGN_TIME} constructor TJITVCTKProperties.Create(AServer: TJITVCTK); begin inherited Create; FServer := AServer; end; function TJITVCTKProperties.GetDefaultInterface: IJITVCTK; begin Result := FServer.DefaultInterface; end; {$ENDIF} class function CoJITDSign.Create: IJITDSign; begin Result := CreateComObject(CLASS_JITDSign) as IJITDSign; end; class function CoJITDSign.CreateRemote(const MachineName: string): IJITDSign; begin Result := CreateRemoteComObject(MachineName, CLASS_JITDSign) as IJITDSign; end; procedure TJITDSign.InitServerData; const CServerData: TServerData = ( ClassID: '{06CA9432-D9BD-4867-8475-770B131E1759}'; IntfIID: '{BD6E3733-66B4-4BD8-ADA1-64F1F6B508AC}'; EventIID: ''; LicenseKey: nil; Version: 500); begin ServerData := @CServerData; end; procedure TJITDSign.Connect; var punk: IUnknown; begin if FIntf = nil then begin punk := GetServer; Fintf:= punk as IJITDSign; end; end; procedure TJITDSign.ConnectTo(svrIntf: IJITDSign); begin Disconnect; FIntf := svrIntf; end; procedure TJITDSign.DisConnect; begin if Fintf <> nil then begin FIntf := nil; end; end; function TJITDSign.GetDefaultInterface: IJITDSign; begin if FIntf = nil then Connect; Assert(FIntf <> nil, 'DefaultInterface is NULL. Component is not connected to Server. You must call ''Connect'' or ''ConnectTo'' before this operation'); Result := FIntf; end; constructor TJITDSign.Create(AOwner: TComponent); begin inherited Create(AOwner); {$IFDEF LIVE_SERVER_AT_DESIGN_TIME} FProps := TJITDSignProperties.Create(Self); {$ENDIF} end; destructor TJITDSign.Destroy; begin {$IFDEF LIVE_SERVER_AT_DESIGN_TIME} FProps.Free; {$ENDIF} inherited Destroy; end; {$IFDEF LIVE_SERVER_AT_DESIGN_TIME} function TJITDSign.GetServerProperties: TJITDSignProperties; begin Result := FProps; end; {$ENDIF} function TJITDSign.GetVersion: WideString; begin Result := DefaultInterface.GetVersion; end; function TJITDSign.SetCert(const lpstrCertType: WideString; const lpstrDN: WideString; const lpstrSN: WideString; const lpstrEmail: WideString; const lpstrDNIssuer: WideString; const lpstrCertBase64: WideString): Integer; begin Result := DefaultInterface.SetCert(lpstrCertType, lpstrDN, lpstrSN, lpstrEmail, lpstrDNIssuer, lpstrCertBase64); end; function TJITDSign.SetCertChooseType(lType: Integer): Integer; begin Result := DefaultInterface.SetCertChooseType(lType); end; function TJITDSign.GetCertInfo(const pszCertType: WideString; lInfoType: Integer; const pszOID: WideString): WideString; begin Result := DefaultInterface.GetCertInfo(pszCertType, lInfoType, pszOID); end; function TJITDSign.SetAlgorithm(const lpstrSignAlgo: WideString; const lpstrEncAlgo: WideString): Integer; begin Result := DefaultInterface.SetAlgorithm(lpstrSignAlgo, lpstrEncAlgo); end; function TJITDSign.AttachSign(const lpstrDN: WideString; const pszSrcData: WideString): WideString; begin Result := DefaultInterface.AttachSign(lpstrDN, pszSrcData); end; function TJITDSign.AttachSignEx(const pszDN: WideString; const pszFileName: WideString; const pszFileNameOut: WideString): WideString; begin Result := DefaultInterface.AttachSignEx(pszDN, pszFileName, pszFileNameOut); end; function TJITDSign.VerifyAttachedSign(const bstrSignedData: WideString): Integer; begin Result := DefaultInterface.VerifyAttachedSign(bstrSignedData); end; function TJITDSign.VerifyAttachedSignEx(const bstrFileNameAttached: WideString): Integer; begin Result := DefaultInterface.VerifyAttachedSignEx(bstrFileNameAttached); end; function TJITDSign.DetachSign(const lpstrDN: WideString; const pszSrcData: WideString): WideString; begin Result := DefaultInterface.DetachSign(lpstrDN, pszSrcData); end; function TJITDSign.DetachSignEx(const pszDN: WideString; const pszFileName: WideString; const pszFileNameOut: WideString): WideString; begin Result := DefaultInterface.DetachSignEx(pszDN, pszFileName, pszFileNameOut); end; function TJITDSign.VerifyDetachedSign(const pszSignedData: WideString; const pszSrcData: WideString): Integer; begin Result := DefaultInterface.VerifyDetachedSign(pszSignedData, pszSrcData); end; function TJITDSign.VerifyDetachedSignEx(const pszSignedData: WideString; const pszFileNameDetached: WideString; const pszFileName: WideString): Integer; begin Result := DefaultInterface.VerifyDetachedSignEx(pszSignedData, pszFileNameDetached, pszFileName); end; function TJITDSign.EncryptEnvelop(const pszDN: WideString; const pszSrcData: WideString): WideString; begin Result := DefaultInterface.EncryptEnvelop(pszDN, pszSrcData); end; function TJITDSign.EncryptEnvelopEx(const pszDN: WideString; const pszFileName: WideString; const pszFileNameOut: WideString): WideString; begin Result := DefaultInterface.EncryptEnvelopEx(pszDN, pszFileName, pszFileNameOut); end; function TJITDSign.DecryptEnvelop(const pszEvpContent: WideString): Integer; begin Result := DefaultInterface.DecryptEnvelop(pszEvpContent); end; function TJITDSign.DecryptEnvelopEx(const bstrEvpFile: WideString): Integer; begin Result := DefaultInterface.DecryptEnvelopEx(bstrEvpFile); end; function TJITDSign.CreateSignedEnvelop(const bstrSignCertDN: WideString; const bstrEncCertDN: WideString; const pVarSrcData: WideString): WideString; begin Result := DefaultInterface.CreateSignedEnvelop(bstrSignCertDN, bstrEncCertDN, pVarSrcData); end; function TJITDSign.CreateSignedEnvelopEx(const bstrSignCertDN: WideString; const bstrEncCertDN: WideString; const pbstrFileName: WideString; const bstrFileNameOut: WideString): WideString; begin Result := DefaultInterface.CreateSignedEnvelopEx(bstrSignCertDN, bstrEncCertDN, pbstrFileName, bstrFileNameOut); end; function TJITDSign.VerifySignedEnvelop(const bstrEnvelop: WideString): Integer; begin Result := DefaultInterface.VerifySignedEnvelop(bstrEnvelop); end; function TJITDSign.VerifySignedEnvelopEx(const bstrEvpFile: WideString): Integer; begin Result := DefaultInterface.VerifySignedEnvelopEx(bstrEvpFile); end; function TJITDSign.GetBase64Encode(const bstrSrcData: WideString): WideString; begin Result := DefaultInterface.GetBase64Encode(bstrSrcData); end; function TJITDSign.GetBase64Decode(const bstrBase64Data: WideString): WideString; begin Result := DefaultInterface.GetBase64Decode(bstrBase64Data); end; function TJITDSign.GetErrorCode: Integer; begin Result := DefaultInterface.GetErrorCode; end; function TJITDSign.GetBase64HashEnCode(const bstrSrcData: WideString): WideString; begin Result := DefaultInterface.GetBase64HashEnCode(bstrSrcData); end; function TJITDSign.GetErrorMessage: WideString; begin Result := DefaultInterface.GetErrorMessage; end; function TJITDSign.GetData: WideString; begin Result := DefaultInterface.GetData; end; function TJITDSign.GetFile(const bstrFileSavePath: WideString): WideString; begin Result := DefaultInterface.GetFile(bstrFileSavePath); end; function TJITDSign.AddData(const bstrSrcData: WideString): Integer; begin Result := DefaultInterface.AddData(bstrSrcData); end; function TJITDSign.AddFile(const bstrSrcFile: WideString): Integer; begin Result := DefaultInterface.AddFile(bstrSrcFile); end; function TJITDSign.SetCSP(const pszProvider: WideString): Integer; begin Result := DefaultInterface.SetCSP(pszProvider); end; function TJITDSign.SetPIN(const pszPIN: WideString): Integer; begin Result := DefaultInterface.SetPIN(pszPIN); end; function TJITDSign.GetCertList(const lpszType: WideString; const lpszDN: WideString; const lpszSN: WideString; const lpszEmail: WideString; const lpszIssuer: WideString; lInfoType: Integer): WideString; begin Result := DefaultInterface.GetCertList(lpszType, lpszDN, lpszSN, lpszEmail, lpszIssuer, lInfoType); end; function TJITDSign.SetErrMsgLanguage(const lpzLangType: WideString): Integer; begin Result := DefaultInterface.SetErrMsgLanguage(lpzLangType); end; function TJITDSign.ClearPIN: Integer; begin Result := DefaultInterface.ClearPIN; end; {$IFDEF LIVE_SERVER_AT_DESIGN_TIME} constructor TJITDSignProperties.Create(AServer: TJITDSign); begin inherited Create; FServer := AServer; end; function TJITDSignProperties.GetDefaultInterface: IJITDSign; begin Result := FServer.DefaultInterface; end; {$ENDIF} procedure Register; begin RegisterComponents(dtlServerPage, [TJITVCTK, TJITDSign]); end; end.