WindowsXP-SP1/inetsrv/published/query/ciodm.idl
2020-09-30 16:53:49 +02:00

194 lines
10 KiB
Plaintext

//+---------------------------------------------------------------------------
//
// 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;
};
};