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

模拟服务器

开发平台:

C/C++

  1. //+--------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1996 - 1999
  5. //
  6. // File:        certenc.idl
  7. //
  8. // Contents:    IDL source for certenc.dll
  9. //
  10. //---------------------------------------------------------------------------
  11. // This file will be processed by the MIDL tool to produce the type library
  12. // (certenc.tlb) and marshalling code.
  13. import "wtypes.idl";
  14. //+--------------------------------------------------------------------------
  15. // ICertEncodeStringArray class -- local COM interface
  16. //+--------------------------------------------------------------------------
  17. [
  18.     object,
  19.     uuid(12a88820-7494-11d0-8816-00a0c903b83c),
  20.     dual,
  21.     helpstring("ICertEncodeStringArray Interface"),
  22.     pointer_default(unique)
  23. ]
  24. interface ICertEncodeStringArray: IDispatch
  25. {
  26.     import "oaidl.idl";
  27.     HRESULT Decode(
  28. [in] BSTR const strBinary);
  29.     HRESULT GetStringType(
  30. [out, retval] LONG *pStringType);
  31.     HRESULT GetCount(
  32. [out, retval] LONG *pCount);
  33.     HRESULT GetValue(
  34. [in] LONG Index,
  35. [out, retval] BSTR *pstr);
  36.     HRESULT Reset(
  37. [in] LONG Count,
  38. [in] LONG StringType);
  39.     HRESULT SetValue(
  40. [in] LONG Index,
  41. [in] BSTR const str);
  42.     HRESULT Encode(
  43. [out, retval] BSTR *pstrBinary);
  44. };
  45. //+--------------------------------------------------------------------------
  46. // ICertEncodeLongArray class -- local COM interface
  47. //+--------------------------------------------------------------------------
  48. [
  49.     object,
  50.     uuid(15e2f230-a0a2-11d0-8821-00a0c903b83c),
  51.     dual,
  52.     helpstring("ICertEncodeLongArray Interface"),
  53.     pointer_default(unique)
  54. ]
  55. interface ICertEncodeLongArray: IDispatch
  56. {
  57.     import "oaidl.idl";
  58.     HRESULT Decode(
  59. [in] BSTR const strBinary);
  60.     HRESULT GetCount(
  61. [out, retval] LONG *pCount);
  62.     HRESULT GetValue(
  63. [in] LONG Index,
  64. [out, retval] LONG *pValue);
  65.     HRESULT Reset(
  66. [in] LONG Count);
  67.     HRESULT SetValue(
  68. [in] LONG Index,
  69. [in] LONG Value);
  70.     HRESULT Encode(
  71. [out, retval] BSTR *pstrBinary);
  72. };
  73. //+--------------------------------------------------------------------------
  74. // ICertEncodeDateArray class -- local COM interface
  75. //+--------------------------------------------------------------------------
  76. [
  77.     object,
  78.     uuid(2f9469a0-a470-11d0-8821-00a0c903b83c),
  79.     dual,
  80.     helpstring("ICertEncodeDateArray Interface"),
  81.     pointer_default(unique)
  82. ]
  83. interface ICertEncodeDateArray: IDispatch
  84. {
  85.     import "oaidl.idl";
  86.     HRESULT Decode(
  87. [in] BSTR const strBinary);
  88.     HRESULT GetCount(
  89. [out, retval] LONG *pCount);
  90.     HRESULT GetValue(
  91. [in] LONG Index,
  92. [out, retval] DATE *pValue);
  93.     HRESULT Reset(
  94. [in] LONG Count);
  95.     HRESULT SetValue(
  96. [in] LONG Index,
  97. [in] DATE Value);
  98.     HRESULT Encode(
  99. [out, retval] BSTR *pstrBinary);
  100. };
  101. //+--------------------------------------------------------------------------
  102. // ICertEncodeCRLDistInfo class -- local COM interface
  103. //+--------------------------------------------------------------------------
  104. [
  105.     object,
  106.     uuid(01958640-bbff-11d0-8825-00a0c903b83c),
  107.     dual,
  108.     helpstring("ICertEncodeCRLDistInfo Interface"),
  109.     pointer_default(unique)
  110. ]
  111. interface ICertEncodeCRLDistInfo: IDispatch
  112. {
  113.     import "oaidl.idl";
  114.     HRESULT Decode(
  115. [in] BSTR const strBinary);
  116.     HRESULT GetDistPointCount(
  117. [out, retval] LONG *pDistPointCount);
  118.     HRESULT GetNameCount(
  119. [in] LONG DistPointIndex,
  120. [out, retval] LONG *pNameCount);
  121.     HRESULT GetNameChoice(
  122. [in] LONG DistPointIndex,
  123. [in] LONG NameIndex,
  124. [out, retval] LONG *pNameChoice);
  125.     HRESULT GetName(
  126. [in] LONG DistPointIndex,
  127. [in] LONG NameIndex,
  128. [out, retval] BSTR *pstrName);
  129.     HRESULT Reset(
  130. [in] LONG DistPointCount);
  131.     HRESULT SetNameCount(
  132. [in] LONG DistPointIndex,
  133. [in] LONG NameCount);
  134.     HRESULT SetNameEntry(
  135. [in] LONG DistPointIndex,
  136. [in] LONG NameIndex,
  137. [in] LONG NameChoice,
  138. [in] BSTR const strName);
  139.     HRESULT Encode(
  140. [out, retval] BSTR *pstrBinary);
  141. };
  142. //+--------------------------------------------------------------------------
  143. // ICertEncodeAltName class -- local COM interface
  144. //+--------------------------------------------------------------------------
  145. const LONG EAN_NAMEOBJECTID = 0x80000000;
  146. [
  147.     object,
  148.     uuid(1c9a8c70-1271-11d1-9bd4-00c04fb683fa),
  149.     dual,
  150.     helpstring("ICertEncodeAltName Interface"),
  151.     pointer_default(unique)
  152. ]
  153. interface ICertEncodeAltName: IDispatch
  154. {
  155.     import "oaidl.idl";
  156.     HRESULT Decode(
  157. [in] BSTR const strBinary);
  158.     HRESULT GetNameCount(
  159. [out, retval] LONG *pNameCount);
  160.     HRESULT GetNameChoice(
  161. [in] LONG NameIndex,
  162. [out, retval] LONG *pNameChoice);
  163.     HRESULT GetName(
  164. [in] LONG NameIndex, // NameIndex | EAN_*
  165. [out, retval] BSTR *pstrName);
  166.     HRESULT Reset(
  167. [in] LONG NameCount);
  168.     HRESULT SetNameEntry(
  169. [in] LONG NameIndex, // NameIndex | EAN_*
  170. [in] LONG NameChoice,
  171. [in] BSTR const strName);
  172.     HRESULT Encode(
  173. [out, retval] BSTR *pstrBinary);
  174. };
  175. //+--------------------------------------------------------------------------
  176. // ICertEncodeBitString class -- local COM interface
  177. //+--------------------------------------------------------------------------
  178. [
  179.     object,
  180.     uuid(6db525be-1278-11d1-9bd4-00c04fb683fa),
  181.     dual,
  182.     helpstring("ICertEncodeBitString Interface"),
  183.     pointer_default(unique)
  184. ]
  185. interface ICertEncodeBitString: IDispatch
  186. {
  187.     import "oaidl.idl";
  188.     HRESULT Decode(
  189. [in] BSTR const strBinary);
  190.     HRESULT GetBitCount(
  191. [out, retval] LONG *pBitCount);
  192.     HRESULT GetBitString(
  193. [out, retval] BSTR *pstrBitString);
  194.     HRESULT Encode(
  195. [in] LONG BitCount,
  196. [in] BSTR strBitString,
  197. [out, retval] BSTR *pstrBinary);
  198. };
  199. //+--------------------------------------------------------------------------
  200. // certenc Type library
  201. //+--------------------------------------------------------------------------
  202. [
  203.     uuid(13199c00-7494-11d0-8816-00a0c903b83c),
  204.     version(1.0),
  205.     helpstring("CertEnc 1.0 Type Library")
  206. ]
  207. library CERTENCODELib
  208. {
  209.     importlib("stdole2.tlb");
  210.     [
  211. uuid(19a76fe0-7494-11d0-8816-00a0c903b83c),
  212. helpstring("CertEncodeStringArray Class")
  213.     ]
  214.     coclass CCertEncodeStringArray
  215.     {
  216. [default] interface ICertEncodeStringArray;
  217.     };
  218.     [
  219. uuid(4e0680a0-a0a2-11d0-8821-00a0c903b83c),
  220. helpstring("CertEncodeLongArray Class")
  221.     ]
  222.     coclass CCertEncodeLongArray
  223.     {
  224. [default] interface ICertEncodeLongArray;
  225.     };
  226.     [
  227. uuid(301f77b0-a470-11d0-8821-00a0c903b83c),
  228. helpstring("CertEncodeDateArray Class")
  229.     ]
  230.     coclass CCertEncodeDateArray
  231.     {
  232. [default] interface ICertEncodeDateArray;
  233.     };
  234.     [
  235. uuid(01fa60a0-bbff-11d0-8825-00a0c903b83c),
  236. helpstring("CertEncodeCRLDistInfo Class")
  237.     ]
  238.     coclass CCertEncodeCRLDistInfo
  239.     {
  240. [default] interface ICertEncodeCRLDistInfo;
  241.     };
  242.     [
  243. uuid(1cfc4cda-1271-11d1-9bd4-00c04fb683fa),
  244. helpstring("CertEncodeAltName Class")
  245.     ]
  246.     coclass CCertEncodeAltName
  247.     {
  248. [default] interface ICertEncodeAltName;
  249.     };
  250.     [
  251. uuid(6d6b3cd8-1278-11d1-9bd4-00c04fb683fa),
  252. helpstring("CertEncodeBitString Class")
  253.     ]
  254.     coclass CCertEncodeBitString
  255.     {
  256. [default] interface ICertEncodeBitString;
  257.     };
  258. };