Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

234 lines
6.0 KiB

  1. ///////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright(C) 1997-2000 Microsoft Corporation all rights reserved.
  4. //
  5. // Module: sdoiaspriv.idl
  6. //
  7. // Project: Everest
  8. //
  9. // Description: IAS Server Data Object - Private MIDL
  10. //
  11. // Author: TLP 4/21/98
  12. //
  13. ///////////////////////////////////////////////////////////////////////////
  14. #ifndef __SDOIASPRIV_IDL__
  15. #define __SDOIASPRIV_IDL__
  16. // This file will be processed by the MIDL tool to
  17. // produce the type library (sdoias.tlb) and marshalling code.
  18. import "oaidl.idl";
  19. import "ocidl.idl";
  20. // -----------------------------
  21. // Include Public SDO Interfaces
  22. // -----------------------------
  23. import "sdoias.idl";
  24. // -----------------------
  25. // Include IAS Data Stores
  26. // -----------------------
  27. import "datastore2.idl";
  28. //////////////////////////////////////////////////////////////////////////
  29. // ISdoArchive - RecordSet based data store
  30. //////////////////////////////////////////////////////////////////////////
  31. [
  32. object,
  33. uuid(B5741A11-96DD-11d1-BF3F-000000000000),
  34. pointer_default(unique)
  35. ]
  36. interface ISdoDummy : IUnknown
  37. {
  38. HRESULT Dummy(void);
  39. };
  40. //////////////////////////////////////////////////////////////////////////
  41. // ISdoPropertyInfo - Used to obtain SDO Property Information
  42. //////////////////////////////////////////////////////////////////////////
  43. [
  44. object,
  45. uuid(EFF64A84-46C1-11d2-A8C2-00AA00A71DCA),
  46. dual,
  47. pointer_default(unique)
  48. ]
  49. interface ISdoPropertyInfo : IDispatch
  50. {
  51. [propget, id(1)]
  52. HRESULT Name ([out, retval] BSTR* Name);
  53. [propget, id(2)]
  54. HRESULT Id ([out, retval] BSTR* Id);
  55. [propget, id(3)]
  56. HRESULT Type ([out, retval] LONG* Type);
  57. [propget, id(4)]
  58. HRESULT Alias ([out, retval] LONG* Alias);
  59. [propget, id(5)]
  60. HRESULT Flags ([out, retval] LONG* Flags);
  61. [propget, id(6)]
  62. HRESULT DisplayName ([out, retval] BSTR* DisplayName);
  63. [id(7)]
  64. HRESULT HasMinLength ([out, retval] VARIANT_BOOL* pBool);
  65. [propget, id(8)]
  66. HRESULT MinLength ([out, retval] LONG* length);
  67. [id(9)]
  68. HRESULT HasMaxLength ([out, retval] VARIANT_BOOL* pBool);
  69. [propget, id(10)]
  70. HRESULT MaxLength ([out, retval] LONG* length);
  71. [id(11)]
  72. HRESULT HasMinValue ([out, retval] VARIANT_BOOL* pBool);
  73. [propget, id(12)]
  74. HRESULT MinValue ([out, retval] VARIANT* value);
  75. [id(13)]
  76. HRESULT HasMaxValue ([out, retval] VARIANT_BOOL* pBool);
  77. [propget, id(14)]
  78. HRESULT MaxValue ([out, retval] VARIANT* value);
  79. [id(15)]
  80. HRESULT HasDefaultValue ([out, retval] VARIANT_BOOL* pBool);
  81. [propget, id(16)]
  82. HRESULT DefaultValue ([out, retval] VARIANT* value);
  83. [id(17)]
  84. HRESULT HasFormat ([out, retval] VARIANT_BOOL* pBool);
  85. [propget, id(18)]
  86. HRESULT Format ([out, retval] BSTR* Format);
  87. [id(19)]
  88. HRESULT IsRequired ([out, retval] VARIANT_BOOL* pBool);
  89. [id(20)]
  90. HRESULT IsReadOnly ([out, retval] VARIANT_BOOL* pBool);
  91. [id(21)]
  92. HRESULT IsCollection ([out, retval] VARIANT_BOOL* pBool);
  93. [id(22)]
  94. HRESULT IsMultiValued ([out, retval] VARIANT_BOOL* pBool);
  95. };
  96. //////////////////////////////////////////////////////////////////////////
  97. // ISdoClassInfo - SDO Schema Class Interface
  98. //////////////////////////////////////////////////////////////////////////
  99. [
  100. object,
  101. uuid(EFF64A83-46C1-11d2-A8C2-00AA00A71DCA),
  102. dual,
  103. pointer_default(unique)
  104. ]
  105. interface ISdoClassInfo : IDispatch // IUnknown
  106. {
  107. [propget, id(1)]
  108. HRESULT Id([out, retval] BSTR* Id);
  109. [id(2)]
  110. HRESULT GetProperty([in] LONG alias, [out, retval] IUnknown** ppPropertyInfo);
  111. [propget, id(3)]
  112. HRESULT RequiredPropertyCount([out, retval] LONG* count);
  113. [propget, id(4)]
  114. HRESULT RequiredProperties([out, retval] IUnknown** ppEnumVARIANT);
  115. [propget, id(5)]
  116. HRESULT OptionalPropertyCount([out, retval] LONG* count);
  117. [propget, id(6)]
  118. HRESULT OptionalProperties([out, retval] IUnknown** ppEnumVARIANT);
  119. };
  120. //////////////////////////////////////////////////////////////////////////
  121. // ISdoSchema - SDO Schema Functions
  122. //////////////////////////////////////////////////////////////////////////
  123. [
  124. object,
  125. uuid(7ECBFDCF-4759-11d2-8EC9-00C04FC2F519),
  126. dual,
  127. pointer_default(unique)
  128. ]
  129. interface ISdoSchema : IDispatch // IUnknown
  130. {
  131. [id(1)]
  132. HRESULT GetVersion([out] BSTR* Version);
  133. [id(2)]
  134. HRESULT GetClass([in] BSTR classId, [out, retval] IUnknown** ppSdoClassInfo);
  135. [id(3)]
  136. HRESULT GetProperty([in] BSTR propertyId, [out, retval] IUnknown** ppSdoPropertyInfo);
  137. };
  138. //////////////////////////////////////////////////////////////////////////
  139. // ISdoService - Used by SCM dll to control the behavior of the IAS core.
  140. //////////////////////////////////////////////////////////////////////////
  141. [
  142. object,
  143. uuid(7A968236-9D6D-11d1-BF5D-000000000000),
  144. dual,
  145. pointer_default(unique)
  146. ]
  147. interface ISdoService : IDispatch //IUnknown
  148. {
  149. [id(1)]
  150. HRESULT InitializeService([in] SERVICE_TYPE eServiceType);
  151. [id(2)]
  152. HRESULT ShutdownService([in] SERVICE_TYPE eServiceType);
  153. [id(3)]
  154. HRESULT StartService([in] SERVICE_TYPE eServiceType);
  155. [id(4)]
  156. HRESULT StopService([in] SERVICE_TYPE eServiceType);
  157. [id(5)]
  158. HRESULT ConfigureService ([in] SERVICE_TYPE eServiceType);
  159. };
  160. //////////////////////////////////////////////////////////////////////////////
  161. // Type Library
  162. //////////////////////////////////////////////////////////////////////////////
  163. [
  164. uuid(56BC53D1-96DB-11D1-BF3F-000000000000),
  165. version(1.0),
  166. helpstring("Private SDO 1.0 Type Library"),
  167. hidden
  168. ]
  169. library SDOIASLibPrivate
  170. {
  171. importlib("stdole2.tlb");
  172. importlib("sdoias.tlb");
  173. //////////////////////////////////////////////////////////////////////////
  174. // Service SDO
  175. //////////////////////////////////////////////////////////////////////////
  176. [
  177. uuid(BC94D813-4D7F-11d2-A8C9-00AA00A71DCA),
  178. // Don't let an automation controller see this class
  179. hidden,
  180. restricted
  181. ]
  182. coclass SdoService
  183. {
  184. [default] interface ISdoService;
  185. };
  186. };
  187. #endif // __SDOIASPRIV_IDL__