//+--------------------------------------------------------------------------- // // Microsoft Windows // Copyright (C) Microsoft Corporation, 1997-1998 // // File: ciodm.idl // // Contents: Indexing Service administration Interfaces // // History: 12-10-97 mohamedn created // //---------------------------------------------------------------------------- // ciodm.idl : IDL source for ciodm.dll // // This file will be processed by the MIDL tool to // produce the type library (ciodm.tlb) and marshalling code. import "oaidl.idl"; import "ocidl.idl"; typedef [ helpstring("Constants that define the different catalog states."), ] enum { csStopped = 1, csReadOnly = 2, csWritable = 4 } CatalogStateType; [ object, uuid(3BC4F3A0-652A-11D1-B4D4-00C04FC2DB8D), dual, helpstring("Indexing Service Administration Interface"), pointer_default(unique) ] interface IAdminIndexServer : IDispatch { // // property set/get // [propget, id(1), helpstring("property MachineName")] HRESULT MachineName([out, retval] BSTR *pVal); [propput, id(1), helpstring("property MachineName")] HRESULT MachineName([in] BSTR newVal); [id(2), helpstring("Adds a Catalog to Indexing Service")] HRESULT AddCatalog(BSTR bstrCatName, BSTR bstrCatLocation, [out, retval] IDispatch **pIDsip); [id(3), helpstring("Removes an existing Catalog")] HRESULT RemoveCatalog(BSTR bstrCatName, [defaultvalue(FALSE)] VARIANT_BOOL fDelDirectory); [id(4), helpstring("Finds a catalog given a catalog name")] HRESULT GetCatalogByName(BSTR bstrCatalogName, [out, retval] IDispatch **pDisp); // // Catalog enumeration // [id(5), helpstring("Catalog Enumerator ")] HRESULT FindFirstCatalog([out, retval] VARIANT_BOOL * pfFound); [id(6), helpstring("Catalog Enumerator")] HRESULT FindNextCatalog([out, retval] VARIANT_BOOL * pfFound); [id(7), helpstring("Gets current catalog")] HRESULT GetCatalog([out, retval] IDispatch ** pIDisp); // // start/stop Indexing Service // [id(8), helpstring("Starts Indexing Service")] HRESULT Start(); [id(9), helpstring("Stops Indexing Service")] HRESULT Stop(); [id(10),helpstring("Is Indexing Service running")] HRESULT IsRunning( [out, retval] VARIANT_BOOL *pfIsRunning ); [id(11),helpstring("Set Indexing Service (CiSvc) to Auto-Start if True")] HRESULT EnableCI( VARIANT_BOOL fAutoStart ); // // pause/continue cisvc service // [id(12), helpstring("Pause Indexing Service")] HRESULT Pause(); [id(13), helpstring("Is Indexing Service Paused")] HRESULT IsPaused( [out, retval] VARIANT_BOOL *pfIsPaused ); [id(14), helpstring("Continue Indexing Service")] HRESULT Continue(); // // set/get CI registry params // [id(15), helpstring("sets CI Long param")] HRESULT SetLongProperty( BSTR bstrPropName, LONG lVal ); [id(16), helpstring("gets CI Long param")] HRESULT GetLongProperty( BSTR bstrPropName, [out, retval] LONG * plVal ); [id(17), helpstring("sets CI SZ param")] HRESULT SetSZProperty( BSTR bstrPropName, BSTR bstrVal ); [id(18), helpstring("gets CI SZ param")] HRESULT GetSZProperty( BSTR bstrPropName, [out, retval] BSTR * pbstrVal ); }; [ object, uuid(3BC4F3A2-652A-11D1-B4D4-00C04FC2DB8D), dual, helpstring("Indexing Service catalog administration Interface"), pointer_default(unique) ] interface ICatAdm : IDispatch { // // MergeCatalog/Add/Remove/Find scopes // [id(1), helpstring("Force a catalog master merge")] HRESULT ForceMasterMerge(void); [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); [id(3), helpstring("Removes a scope from current catalog")] HRESULT RemoveScope(BSTR bstrScopePath); [id(4), helpstring("Finds a scope object given its path name")] HRESULT GetScopeByPath(BSTR bstrPath, [out, retval] IDispatch ** pIDisp); [id(5), helpstring("Finds a scope object given its Alias")] HRESULT GetScopeByAlias(BSTR bstrAlias, [out, retval] IDispatch ** pIDisp); // // Scope enumeration // [id(6), helpstring("Scope Enumerator")] HRESULT FindFirstScope([out, retval] VARIANT_BOOL * pfFound); [id(7), helpstring("Scope Enumerator")] HRESULT FindNextScope([out, retval] VARIANT_BOOL * pfFound); [id(8), helpstring("Gets current scope")] HRESULT GetScope([out, retval] IDispatch ** pIDisp); // // Set/Get catalog name/location properties. // [propget, id(9), helpstring("property CatalogName")] HRESULT CatalogName([out, retval] BSTR *pVal); [propget, id(10), helpstring("property CatalogLocation")] HRESULT CatalogLocation([out, retval] BSTR *pVal); [propget, id(11), helpstring("property WordListCount")] HRESULT WordListCount( [out, retval] LONG *pVal); [propget, id(12), helpstring("property PersistentIndexCount")] HRESULT PersistentIndexCount( [out, retval] LONG *pVal); [propget, id(13), helpstring("property QueryCount")] HRESULT QueryCount( [out, retval] LONG *pVal); [propget, id(14), helpstring("property DocumentsToFilter")] HRESULT DocumentsToFilter( [out, retval] LONG *pVal); [propget, id(15), helpstring("property FreshTestCount")] HRESULT FreshTestCount( [out, retval] LONG *pVal); [propget, id(16), helpstring("property PctMergeComplete")] HRESULT PctMergeComplete( [out, retval] LONG *pVal); [propget, id(17), helpstring("property FilteredDocumentCount")] HRESULT FilteredDocumentCount( [out, retval] LONG *pVal); [propget, id(18), helpstring("property TotalDocumentCount")] HRESULT TotalDocumentCount( [out, retval] LONG *pVal); [propget, id(19), helpstring("property PendingScanCount")] HRESULT PendingScanCount( [out, retval] LONG *pVal); [propget, id(20), helpstring("property IndexSize")] HRESULT IndexSize( [out, retval] LONG *pVal); [propget, id(21), helpstring("property UniqueKeyCount")] HRESULT UniqueKeyCount( [out, retval] LONG *pVal); [propget, id(22), helpstring("property StateInfo")] HRESULT StateInfo( [out, retval] LONG *pVal); [propget, id(23), helpstring("property IsUpToDate")] HRESULT IsUpToDate( [out, retval] VARIANT_BOOL *pVal); [propget, id(24), helpstring("property DelayedFilterCount")] HRESULT DelayedFilterCount( [out, retval] LONG *pVal); // // Start/Stop/Pause/Continue a catalog // [id(25), helpstring("Start Catalog")] HRESULT StartCatalog( [out, retval] CatalogStateType *pdwOldState); [id(26), helpstring("Stop Catalog")] HRESULT StopCatalog( [out, retval] CatalogStateType *pdwOldState); [id(27), helpstring("Pause Catalog")] HRESULT PauseCatalog( [out, retval] CatalogStateType *pdwOldState); [id(28), helpstring("Continue Catalog")] HRESULT ContinueCatalog( [out, retval] CatalogStateType *pdwOldState); [id(29), helpstring("Is the catalog running")] HRESULT IsCatalogRunning( [out, retval] VARIANT_BOOL *pfIsRunning ); [id(30), helpstring("Is the catalog paused")] HRESULT IsCatalogPaused( [out, retval] VARIANT_BOOL *pfIsPaused ); [id(31), helpstring("Is the catalog stopped")] HRESULT IsCatalogStopped( [out, retval] VARIANT_BOOL *pIsStopped ); }; [ object, uuid(3BC4F3A4-652A-11D1-B4D4-00C04FC2DB8D), dual, helpstring("Indexing Service scope administration Interface"), pointer_default(unique) ] interface IScopeAdm : IDispatch { [id(1), helpstring("Initiates full/incremental rescan.")] HRESULT Rescan(VARIANT_BOOL fFull); [id(2), helpstring("change logon/password.")] HRESULT SetLogonInfo( BSTR bstrLogon, BSTR bstrPassword ); [propget, id(3), helpstring("property Path")] HRESULT Path([out, retval] BSTR *pVal); [propput, id(3), helpstring("property Path")] HRESULT Path([in] BSTR newVal); [propget, id(4), helpstring("property Alias")] HRESULT Alias([out, retval] BSTR *pVal); [propput, id(4), helpstring("property Alias")] HRESULT Alias([in] BSTR newVal); [propget, id(5), helpstring("property ExcludeScope")] HRESULT ExcludeScope([out, retval] VARIANT_BOOL *pVal); [propput, id(5), helpstring("property ExcludeScope")] HRESULT ExcludeScope([in] VARIANT_BOOL newVal); [propget, id(6), helpstring("property VirtualScope")] HRESULT VirtualScope([out, retval] VARIANT_BOOL *pVal); [propget, id(7), helpstring("property Logon")] HRESULT Logon([out, retval] BSTR *pVal); }; [ uuid(3BC4F393-652A-11D1-B4D4-00C04FC2DB8D), version(1.0), helpstring("Indexing Service Administration Type Library 1.0") ] library CIODMLib { importlib("stdole2.tlb"); [ uuid(3BC4F3A1-652A-11D1-B4D4-00C04FC2DB8D), helpstring("Indexing Service Machine Administration Class") ] coclass AdminIndexServer { [default] interface IAdminIndexServer; }; [ uuid(3BC4F3A3-652A-11D1-B4D4-00C04FC2DB8D), helpstring("Indexing Service Catalog Administration Class") ] coclass CatAdm { [default] interface ICatAdm; }; [ uuid(3BC4F3A7-652A-11D1-B4D4-00C04FC2DB8D), helpstring("Indexing Service Scope Administration Class") ] coclass ScopeAdm { [default] interface IScopeAdm; }; };