⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 capicom_tlb.pas

📁 这是一个delphi程序
💻 PAS
📖 第 1 页 / 共 5 页
字号:
  CAPICOM_CERTIFICATE_FIND_ISSUER_NAME = $00000002;
  CAPICOM_CERTIFICATE_FIND_ROOT_NAME = $00000003;
  CAPICOM_CERTIFICATE_FIND_TEMPLATE_NAME = $00000004;
  CAPICOM_CERTIFICATE_FIND_EXTENSION = $00000005;
  CAPICOM_CERTIFICATE_FIND_EXTENDED_PROPERTY = $00000006;
  CAPICOM_CERTIFICATE_FIND_APPLICATION_POLICY = $00000007;
  CAPICOM_CERTIFICATE_FIND_CERTIFICATE_POLICY = $00000008;
  CAPICOM_CERTIFICATE_FIND_TIME_VALID = $00000009;
  CAPICOM_CERTIFICATE_FIND_TIME_NOT_YET_VALID = $0000000A;
  CAPICOM_CERTIFICATE_FIND_TIME_EXPIRED = $0000000B;
  CAPICOM_CERTIFICATE_FIND_KEY_USAGE = $0000000C;

// Constants for enum CAPICOM_HASH_ALGORITHM
type
  CAPICOM_HASH_ALGORITHM = TOleEnum;
const
  CAPICOM_HASH_ALGORITHM_SHA1 = $00000000;
  CAPICOM_HASH_ALGORITHM_MD2 = $00000001;
  CAPICOM_HASH_ALGORITHM_MD4 = $00000002;
  CAPICOM_HASH_ALGORITHM_MD5 = $00000003;
  CAPICOM_HASH_ALGORITHM_SHA_256 = $00000004;
  CAPICOM_HASH_ALGORITHM_SHA_384 = $00000005;
  CAPICOM_HASH_ALGORITHM_SHA_512 = $00000006;

type

// *********************************************************************//
// Forward declaration of types defined in TypeLibrary                    
// *********************************************************************//
  ISettings = interface;
  ISettingsDisp = dispinterface;
  IEKU = interface;
  IEKUDisp = dispinterface;
  IEKUs = interface;
  IEKUsDisp = dispinterface;
  IKeyUsage = interface;
  IKeyUsageDisp = dispinterface;
  IExtendedKeyUsage = interface;
  IExtendedKeyUsageDisp = dispinterface;
  IBasicConstraints = interface;
  IBasicConstraintsDisp = dispinterface;
  ICertificateStatus = interface;
  ICertificateStatusDisp = dispinterface;
  ICertificateStatus2 = interface;
  ICertificateStatus2Disp = dispinterface;
  ICertificateStatus3 = interface;
  ICertificateStatus3Disp = dispinterface;
  IOIDs = interface;
  IOIDsDisp = dispinterface;
  IOID = interface;
  IOIDDisp = dispinterface;
  ICertificates = interface;
  ICertificatesDisp = dispinterface;
  ICertificate = interface;
  ICertificateDisp = dispinterface;
  ICertificate2 = interface;
  ICertificate2Disp = dispinterface;
  ICertContext = interface;
  ITemplate = interface;
  ITemplateDisp = dispinterface;
  IPublicKey = interface;
  IPublicKeyDisp = dispinterface;
  IEncodedData = interface;
  IEncodedDataDisp = dispinterface;
  IPrivateKey = interface;
  IPrivateKeyDisp = dispinterface;
  IExtensions = interface;
  IExtensionsDisp = dispinterface;
  IExtendedProperties = interface;
  IExtendedPropertiesDisp = dispinterface;
  IExtendedProperty = interface;
  IExtendedPropertyDisp = dispinterface;
  ICertificates2 = interface;
  ICertificates2Disp = dispinterface;
  ICCertificates = interface;
  IChain = interface;
  IChainDisp = dispinterface;
  IChain2 = interface;
  IChain2Disp = dispinterface;
  IChainContext = interface;
  IStore = interface;
  IStoreDisp = dispinterface;
  IStore2 = interface;
  IStore2Disp = dispinterface;
  IStore3 = interface;
  IStore3Disp = dispinterface;
  ICertStore = interface;
  IAttribute = interface;
  IAttributeDisp = dispinterface;
  IAttributes = interface;
  IAttributesDisp = dispinterface;
  ISigner = interface;
  ISignerDisp = dispinterface;
  ISigner2 = interface;
  ISigner2Disp = dispinterface;
  ICSigner = interface;
  ISigners = interface;
  ISignersDisp = dispinterface;
  ISignedData = interface;
  ISignedDataDisp = dispinterface;
  IAlgorithm = interface;
  IAlgorithmDisp = dispinterface;
  IRecipients = interface;
  IRecipientsDisp = dispinterface;
  IEnvelopedData = interface;
  IEnvelopedDataDisp = dispinterface;
  IEncryptedData = interface;
  IEncryptedDataDisp = dispinterface;
  INoticeNumbers = interface;
  INoticeNumbersDisp = dispinterface;
  IQualifier = interface;
  IQualifierDisp = dispinterface;
  IQualifiers = interface;
  IQualifiersDisp = dispinterface;
  IPolicyInformation = interface;
  IPolicyInformationDisp = dispinterface;
  ICertificatePolicies = interface;
  ICertificatePoliciesDisp = dispinterface;
  IExtension = interface;
  IExtensionDisp = dispinterface;
  ICPrivateKey = interface;
  ISignedCode = interface;
  ISignedCodeDisp = dispinterface;
  IHashedData = interface;
  IHashedDataDisp = dispinterface;
  IUtilities = interface;
  IUtilitiesDisp = dispinterface;

// *********************************************************************//
// Declaration of CoClasses defined in Type Library                       
// (NOTE: Here we map each CoClass to its Default Interface)              
// *********************************************************************//
  Settings = ISettings;
  EKU = IEKU;
  EKUs = IEKUs;
  KeyUsage = IKeyUsage;
  ExtendedKeyUsage = IExtendedKeyUsage;
  BasicConstraints = IBasicConstraints;
  CertificateStatus = ICertificateStatus3;
  Certificate = ICertificate2;
  Certificates = ICertificates2;
  Chain = IChain2;
  Store = IStore3;
  Attribute = IAttribute;
  Attributes = IAttributes;
  Signer = ISigner2;
  Signers = ISigners;
  SignedData = ISignedData;
  Algorithm = IAlgorithm;
  Recipients = IRecipients;
  EnvelopedData = IEnvelopedData;
  EncryptedData = IEncryptedData;
  OID = IOID;
  OIDs = IOIDs;
  NoticeNumbers = INoticeNumbers;
  Qualifier = IQualifier;
  Qualifiers = IQualifiers;
  PolicyInformation = IPolicyInformation;
  CertificatePolicies = ICertificatePolicies;
  EncodedData = IEncodedData;
  Extension = IExtension;
  Extensions = IExtensions;
  ExtendedProperty = IExtendedProperty;
  ExtendedProperties = IExtendedProperties;
  Template = ITemplate;
  PublicKey = IPublicKey;
  PrivateKey = IPrivateKey;
  SignedCode = ISignedCode;
  HashedData = IHashedData;
  Utilities = IUtilities;


// *********************************************************************//
// Declaration of structures, unions and aliases.                         
// *********************************************************************//
  PUserType1 = ^_CRYPT_KEY_PROV_INFO; {*}
  PUserType2 = ^_CERT_KEY_CONTEXT; {*}

  _CRYPT_KEY_PROV_PARAM = packed record
    dwParam: LongWord;
    pbData: ^Byte;
    cbData: LongWord;
    dwFlags: LongWord;
  end;

  _CRYPT_KEY_PROV_INFO = packed record
    pwszContainerName: PWideChar;
    pwszProvName: PWideChar;
    dwProvType: LongWord;
    dwFlags: LongWord;
    cProvParam: LongWord;
    rgProvParam: ^_CRYPT_KEY_PROV_PARAM;
    dwKeySpec: LongWord;
  end;

  __MIDL___MIDL_itf_capicom_0001_0064_0024 = record
    case Integer of
      0: (hCryptProv: LongWord);
      1: (hNCryptKey: LongWord);
  end;

  _CERT_KEY_CONTEXT = packed record
    cbSize: LongWord;
    __MIDL____MIDL_itf_capicom_0001_00640106: __MIDL___MIDL_itf_capicom_0001_0064_0024;
    dwKeySpec: LongWord;
  end;


// *********************************************************************//
// Interface: ISettings
// Flags:     (4416) Dual OleAutomation Dispatchable
// GUID:      {A24104F5-46D0-4C0F-926D-665565908E91}
// *********************************************************************//
  ISettings = interface(IDispatch)
    ['{A24104F5-46D0-4C0F-926D-665565908E91}']
    function Get_EnablePromptForCertificateUI: WordBool; safecall;
    procedure Set_EnablePromptForCertificateUI(pVal: WordBool); safecall;
    function Get_ActiveDirectorySearchLocation: CAPICOM_ACTIVE_DIRECTORY_SEARCH_LOCATION; safecall;
    procedure Set_ActiveDirectorySearchLocation(pVal: CAPICOM_ACTIVE_DIRECTORY_SEARCH_LOCATION); safecall;
    property EnablePromptForCertificateUI: WordBool read Get_EnablePromptForCertificateUI write Set_EnablePromptForCertificateUI;
    property ActiveDirectorySearchLocation: CAPICOM_ACTIVE_DIRECTORY_SEARCH_LOCATION read Get_ActiveDirectorySearchLocation write Set_ActiveDirectorySearchLocation;
  end;

// *********************************************************************//
// DispIntf:  ISettingsDisp
// Flags:     (4416) Dual OleAutomation Dispatchable
// GUID:      {A24104F5-46D0-4C0F-926D-665565908E91}
// *********************************************************************//
  ISettingsDisp = dispinterface
    ['{A24104F5-46D0-4C0F-926D-665565908E91}']
    property EnablePromptForCertificateUI: WordBool dispid 1;
    property ActiveDirectorySearchLocation: CAPICOM_ACTIVE_DIRECTORY_SEARCH_LOCATION dispid 2;
  end;

// *********************************************************************//
// Interface: IEKU
// Flags:     (4416) Dual OleAutomation Dispatchable
// GUID:      {976B7E6D-1002-4051-BFD4-824A74BD74E2}
// *********************************************************************//
  IEKU = interface(IDispatch)
    ['{976B7E6D-1002-4051-BFD4-824A74BD74E2}']
    function Get_Name: CAPICOM_EKU; safecall;
    procedure Set_Name(pVal: CAPICOM_EKU); safecall;
    function Get_OID: WideString; safecall;
    procedure Set_OID(const pVal: WideString); safecall;
    property Name: CAPICOM_EKU read Get_Name write Set_Name;
    property OID: WideString read Get_OID write Set_OID;
  end;

// *********************************************************************//
// DispIntf:  IEKUDisp
// Flags:     (4416) Dual OleAutomation Dispatchable
// GUID:      {976B7E6D-1002-4051-BFD4-824A74BD74E2}
// *********************************************************************//
  IEKUDisp = dispinterface
    ['{976B7E6D-1002-4051-BFD4-824A74BD74E2}']
    property Name: CAPICOM_EKU dispid 0;
    property OID: WideString dispid 1;
  end;

// *********************************************************************//
// Interface: IEKUs
// Flags:     (4416) Dual OleAutomation Dispatchable
// GUID:      {47C87CEC-8C4B-4E3C-8D22-34280274EFD1}
// *********************************************************************//
  IEKUs = interface(IDispatch)
    ['{47C87CEC-8C4B-4E3C-8D22-34280274EFD1}']
    function Get_Item(Index: Integer): OleVariant; safecall;
    function Get_Count: Integer; safecall;
    function Get__NewEnum: IUnknown; safecall;
    property Item[Index: Integer]: OleVariant read Get_Item; default;
    property Count: Integer read Get_Count;
    property _NewEnum: IUnknown read Get__NewEnum;
  end;

// *********************************************************************//
// DispIntf:  IEKUsDisp
// Flags:     (4416) Dual OleAutomation Dispatchable
// GUID:      {47C87CEC-8C4B-4E3C-8D22-34280274EFD1}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -