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.

193 lines
10 KiB

  1. //+---------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1997-1998
  5. //
  6. // File: ciodm.idl
  7. //
  8. // Contents: Indexing Service administration Interfaces
  9. //
  10. // History: 12-10-97 mohamedn created
  11. //
  12. //----------------------------------------------------------------------------
  13. // ciodm.idl : IDL source for ciodm.dll
  14. //
  15. // This file will be processed by the MIDL tool to
  16. // produce the type library (ciodm.tlb) and marshalling code.
  17. import "oaidl.idl";
  18. import "ocidl.idl";
  19. typedef [
  20. helpstring("Constants that define the different catalog states."),
  21. ] enum
  22. {
  23. csStopped = 1,
  24. csReadOnly = 2,
  25. csWritable = 4
  26. } CatalogStateType;
  27. [
  28. object,
  29. uuid(3BC4F3A0-652A-11D1-B4D4-00C04FC2DB8D),
  30. dual,
  31. helpstring("Indexing Service Administration Interface"),
  32. pointer_default(unique)
  33. ]
  34. interface IAdminIndexServer : IDispatch
  35. {
  36. //
  37. // property set/get
  38. //
  39. [propget, id(1), helpstring("property MachineName")] HRESULT MachineName([out, retval] BSTR *pVal);
  40. [propput, id(1), helpstring("property MachineName")] HRESULT MachineName([in] BSTR newVal);
  41. [id(2), helpstring("Adds a Catalog to Indexing Service")] HRESULT AddCatalog(BSTR bstrCatName, BSTR bstrCatLocation, [out, retval] IDispatch **pIDsip);
  42. [id(3), helpstring("Removes an existing Catalog")] HRESULT RemoveCatalog(BSTR bstrCatName, [defaultvalue(FALSE)] VARIANT_BOOL fDelDirectory);
  43. [id(4), helpstring("Finds a catalog given a catalog name")] HRESULT GetCatalogByName(BSTR bstrCatalogName, [out, retval] IDispatch **pDisp);
  44. //
  45. // Catalog enumeration
  46. //
  47. [id(5), helpstring("Catalog Enumerator ")] HRESULT FindFirstCatalog([out, retval] VARIANT_BOOL * pfFound);
  48. [id(6), helpstring("Catalog Enumerator")] HRESULT FindNextCatalog([out, retval] VARIANT_BOOL * pfFound);
  49. [id(7), helpstring("Gets current catalog")] HRESULT GetCatalog([out, retval] IDispatch ** pIDisp);
  50. //
  51. // start/stop Indexing Service
  52. //
  53. [id(8), helpstring("Starts Indexing Service")] HRESULT Start();
  54. [id(9), helpstring("Stops Indexing Service")] HRESULT Stop();
  55. [id(10),helpstring("Is Indexing Service running")] HRESULT IsRunning( [out, retval] VARIANT_BOOL *pfIsRunning );
  56. [id(11),helpstring("Set Indexing Service (CiSvc) to Auto-Start if True")] HRESULT EnableCI( VARIANT_BOOL fAutoStart );
  57. //
  58. // pause/continue cisvc service
  59. //
  60. [id(12), helpstring("Pause Indexing Service")] HRESULT Pause();
  61. [id(13), helpstring("Is Indexing Service Paused")] HRESULT IsPaused( [out, retval] VARIANT_BOOL *pfIsPaused );
  62. [id(14), helpstring("Continue Indexing Service")] HRESULT Continue();
  63. //
  64. // set/get CI registry params
  65. //
  66. [id(15), helpstring("sets CI Long param")] HRESULT SetLongProperty( BSTR bstrPropName, LONG lVal );
  67. [id(16), helpstring("gets CI Long param")] HRESULT GetLongProperty( BSTR bstrPropName, [out, retval] LONG * plVal );
  68. [id(17), helpstring("sets CI SZ param")] HRESULT SetSZProperty( BSTR bstrPropName, BSTR bstrVal );
  69. [id(18), helpstring("gets CI SZ param")] HRESULT GetSZProperty( BSTR bstrPropName, [out, retval] BSTR * pbstrVal );
  70. };
  71. [
  72. object,
  73. uuid(3BC4F3A2-652A-11D1-B4D4-00C04FC2DB8D),
  74. dual,
  75. helpstring("Indexing Service catalog administration Interface"),
  76. pointer_default(unique)
  77. ]
  78. interface ICatAdm : IDispatch
  79. {
  80. //
  81. // MergeCatalog/Add/Remove/Find scopes
  82. //
  83. [id(1), helpstring("Force a catalog master merge")] HRESULT ForceMasterMerge(void);
  84. [id(2), helpstring("Adds a scope to current catalog")] HRESULT AddScope(BSTR bstrScopeName, VARIANT_BOOL fExclude,[in, optional] VARIANT vtLogon, [in, optional] VARIANT vtPassword, [out, retval] IDispatch ** pIDisp);
  85. [id(3), helpstring("Removes a scope from current catalog")] HRESULT RemoveScope(BSTR bstrScopePath);
  86. [id(4), helpstring("Finds a scope object given its path name")] HRESULT GetScopeByPath(BSTR bstrPath, [out, retval] IDispatch ** pIDisp);
  87. [id(5), helpstring("Finds a scope object given its Alias")] HRESULT GetScopeByAlias(BSTR bstrAlias, [out, retval] IDispatch ** pIDisp);
  88. //
  89. // Scope enumeration
  90. //
  91. [id(6), helpstring("Scope Enumerator")] HRESULT FindFirstScope([out, retval] VARIANT_BOOL * pfFound);
  92. [id(7), helpstring("Scope Enumerator")] HRESULT FindNextScope([out, retval] VARIANT_BOOL * pfFound);
  93. [id(8), helpstring("Gets current scope")] HRESULT GetScope([out, retval] IDispatch ** pIDisp);
  94. //
  95. // Set/Get catalog name/location properties.
  96. //
  97. [propget, id(9), helpstring("property CatalogName")] HRESULT CatalogName([out, retval] BSTR *pVal);
  98. [propget, id(10), helpstring("property CatalogLocation")] HRESULT CatalogLocation([out, retval] BSTR *pVal);
  99. [propget, id(11), helpstring("property WordListCount")] HRESULT WordListCount( [out, retval] LONG *pVal);
  100. [propget, id(12), helpstring("property PersistentIndexCount")] HRESULT PersistentIndexCount( [out, retval] LONG *pVal);
  101. [propget, id(13), helpstring("property QueryCount")] HRESULT QueryCount( [out, retval] LONG *pVal);
  102. [propget, id(14), helpstring("property DocumentsToFilter")] HRESULT DocumentsToFilter( [out, retval] LONG *pVal);
  103. [propget, id(15), helpstring("property FreshTestCount")] HRESULT FreshTestCount( [out, retval] LONG *pVal);
  104. [propget, id(16), helpstring("property PctMergeComplete")] HRESULT PctMergeComplete( [out, retval] LONG *pVal);
  105. [propget, id(17), helpstring("property FilteredDocumentCount")] HRESULT FilteredDocumentCount( [out, retval] LONG *pVal);
  106. [propget, id(18), helpstring("property TotalDocumentCount")] HRESULT TotalDocumentCount( [out, retval] LONG *pVal);
  107. [propget, id(19), helpstring("property PendingScanCount")] HRESULT PendingScanCount( [out, retval] LONG *pVal);
  108. [propget, id(20), helpstring("property IndexSize")] HRESULT IndexSize( [out, retval] LONG *pVal);
  109. [propget, id(21), helpstring("property UniqueKeyCount")] HRESULT UniqueKeyCount( [out, retval] LONG *pVal);
  110. [propget, id(22), helpstring("property StateInfo")] HRESULT StateInfo( [out, retval] LONG *pVal);
  111. [propget, id(23), helpstring("property IsUpToDate")] HRESULT IsUpToDate( [out, retval] VARIANT_BOOL *pVal);
  112. [propget, id(24), helpstring("property DelayedFilterCount")] HRESULT DelayedFilterCount( [out, retval] LONG *pVal);
  113. //
  114. // Start/Stop/Pause/Continue a catalog
  115. //
  116. [id(25), helpstring("Start Catalog")] HRESULT StartCatalog( [out, retval] CatalogStateType *pdwOldState);
  117. [id(26), helpstring("Stop Catalog")] HRESULT StopCatalog( [out, retval] CatalogStateType *pdwOldState);
  118. [id(27), helpstring("Pause Catalog")] HRESULT PauseCatalog( [out, retval] CatalogStateType *pdwOldState);
  119. [id(28), helpstring("Continue Catalog")] HRESULT ContinueCatalog( [out, retval] CatalogStateType *pdwOldState);
  120. [id(29), helpstring("Is the catalog running")] HRESULT IsCatalogRunning( [out, retval] VARIANT_BOOL *pfIsRunning );
  121. [id(30), helpstring("Is the catalog paused")] HRESULT IsCatalogPaused( [out, retval] VARIANT_BOOL *pfIsPaused );
  122. [id(31), helpstring("Is the catalog stopped")] HRESULT IsCatalogStopped( [out, retval] VARIANT_BOOL *pIsStopped );
  123. };
  124. [
  125. object,
  126. uuid(3BC4F3A4-652A-11D1-B4D4-00C04FC2DB8D),
  127. dual,
  128. helpstring("Indexing Service scope administration Interface"),
  129. pointer_default(unique)
  130. ]
  131. interface IScopeAdm : IDispatch
  132. {
  133. [id(1), helpstring("Initiates full/incremental rescan.")] HRESULT Rescan(VARIANT_BOOL fFull);
  134. [id(2), helpstring("change logon/password.")] HRESULT SetLogonInfo( BSTR bstrLogon, BSTR bstrPassword );
  135. [propget, id(3), helpstring("property Path")] HRESULT Path([out, retval] BSTR *pVal);
  136. [propput, id(3), helpstring("property Path")] HRESULT Path([in] BSTR newVal);
  137. [propget, id(4), helpstring("property Alias")] HRESULT Alias([out, retval] BSTR *pVal);
  138. [propput, id(4), helpstring("property Alias")] HRESULT Alias([in] BSTR newVal);
  139. [propget, id(5), helpstring("property ExcludeScope")] HRESULT ExcludeScope([out, retval] VARIANT_BOOL *pVal);
  140. [propput, id(5), helpstring("property ExcludeScope")] HRESULT ExcludeScope([in] VARIANT_BOOL newVal);
  141. [propget, id(6), helpstring("property VirtualScope")] HRESULT VirtualScope([out, retval] VARIANT_BOOL *pVal);
  142. [propget, id(7), helpstring("property Logon")] HRESULT Logon([out, retval] BSTR *pVal);
  143. };
  144. [
  145. uuid(3BC4F393-652A-11D1-B4D4-00C04FC2DB8D),
  146. version(1.0),
  147. helpstring("Indexing Service Administration Type Library 1.0")
  148. ]
  149. library CIODMLib
  150. {
  151. importlib("stdole2.tlb");
  152. [
  153. uuid(3BC4F3A1-652A-11D1-B4D4-00C04FC2DB8D),
  154. helpstring("Indexing Service Machine Administration Class")
  155. ]
  156. coclass AdminIndexServer
  157. {
  158. [default] interface IAdminIndexServer;
  159. };
  160. [
  161. uuid(3BC4F3A3-652A-11D1-B4D4-00C04FC2DB8D),
  162. helpstring("Indexing Service Catalog Administration Class")
  163. ]
  164. coclass CatAdm
  165. {
  166. [default] interface ICatAdm;
  167. };
  168. [
  169. uuid(3BC4F3A7-652A-11D1-B4D4-00C04FC2DB8D),
  170. helpstring("Indexing Service Scope Administration Class")
  171. ]
  172. coclass ScopeAdm
  173. {
  174. [default] interface IScopeAdm;
  175. };
  176. };