//----------------------------------------------------------------------------- // // Copyright (c) 2005 Microsoft Corporation. // // File: SearchAdmin.idl // // Purpose: Search Manager Interface Description // // History: 07/06/2005 louisg Modified // //----------------------------------------------------------------------------- import "oledb.idl"; //////////////////////////////////////////////////////////////////////////////// // // ISearchManager - manage the search service // [ object, uuid(AB310581-AC80-11D1-8DF3-00C04FB6EF69), pointer_default(unique) ] interface ISearchManager : IUnknown { //////////////////////////////////////////////////////////////////////////// // // Service Management // // // Get the version of the indexer // HRESULT GetIndexerVersionStr([out, string] LPWSTR *ppszVersionString); HRESULT GetIndexerVersion([out] DWORD *pdwMajor, [out] DWORD *pdwMinor); // // Get or set parameters for the service // // Some examples // Backoff control -- battery thresholds, etc. // Default timeouts, authentication and proxy information // Memory quota on filters // Size limits // Retry intervales // Number of robot threads // Default location of catalogs // HRESULT GetParameter([in, string] LPCWSTR pszName, [out, retval] PROPVARIANT **ppValue); HRESULT SetParameter([in, string] LPCWSTR pszName, [in] const PROPVARIANT *pValue); // // Name of proxy // [propget] HRESULT ProxyName([out, retval, string] LPWSTR *ppszProxyName); // // Proxy bypass list // [propget] HRESULT BypassList([out, retval, string] LPWSTR *ppszBypassList); HRESULT SetProxy([in] PROXY_ACCESS sUseProxy, [in] BOOL fLocalByPassProxy, [in] DWORD dwPortNumber, [in, string] LPCWSTR pszProxyName, [in, string] LPCWSTR pszByPassList); //////////////////////////////////////////////////////////////////////////// // // Catalog management // // Access to catalog management functions is determined by the // security associated with a particular catalog. // // ACCESS -- allows getting the catalog interface and information // about the catalog. // // MANAGE -- allows changing the configuration of the catalog. // // // Lookup a catalog by name // Doing this will block until the catalog is ready. If you don't // want to block, check for the ready event. // HRESULT GetCatalog([in, string] LPCWSTR pszCatalog, [out, retval] ISearchCatalogManager **ppCatalogManager); //////////////////////////////////////////////////////////////////////////// // // Site access properties // // From here down is passed to protocol handler // // // Browser agent like (Mozilla/4.0) -- search manager level // [propget] HRESULT UserAgent([out, retval, string] LPWSTR *ppszUserAgent); [propput] HRESULT UserAgent([in, string] LPCWSTR pszUserAgent); // // What proxy to use // [propget] HRESULT UseProxy([out, retval] PROXY_ACCESS *pUseProxy); // // Bypass proxy for local address // [propget] HRESULT LocalBypass([out, retval] BOOL *pfLocalBypass); // // Port number to use // [propget] HRESULT PortNumber([out, retval] DWORD *pdwPortNumber); };