xpmgr/BuildTools/Include/urlaccsdk.idl

111 lines
3.2 KiB
Plaintext

//+----------------------------------------------------------------------------
//
// Microsoft (R) Search
// Copyright (C) Microsoft Corporation, 1998-2000.
//
// File: urlaccsdk.idl
//
// Contents: Search Protocol Handler URL Accessor Interface
//
// Interfaces: IUrlAccessor
//
// History: 11/11/00 mcheng Created
//
//+----------------------------------------------------------------------------
import "propsys.idl";
[
object,
uuid(0b63e318-9ccc-11d0-bcdb-00805fccce04),
helpstring("URL Accessor Interface"),
public,
pointer_default(unique)
]
interface IUrlAccessor: IUnknown
{
HRESULT AddRequestParameter([in] PROPSPEC *pSpec,
[in] PROPVARIANT *pVar);
HRESULT GetDocFormat([out, length_is(*pdwLength), size_is(dwSize)] WCHAR wszDocFormat[],
[in] DWORD dwSize,
[out] DWORD *pdwLength);
HRESULT GetCLSID([out] CLSID *pClsid);
HRESULT GetHost([out, length_is(*pdwLength), size_is(dwSize)] WCHAR wszHost[],
[in] DWORD dwSize,
[out] DWORD *pdwLength);
HRESULT IsDirectory();
HRESULT GetSize([out] ULONGLONG *pllSize);
HRESULT GetLastModified([out] FILETIME *pftLastModified);
HRESULT GetFileName([out, length_is(*pdwLength), size_is(dwSize)] WCHAR wszFileName[],
[in] DWORD dwSize,
[out] DWORD *pdwLength);
HRESULT GetSecurityDescriptor([out, size_is(dwSize)] BYTE *pSD,
[in] DWORD dwSize,
[out] DWORD *pdwLength);
HRESULT GetRedirectedURL([out, length_is(*pdwLength), size_is(dwSize)] WCHAR wszRedirectedURL[],
[in] DWORD dwSize,
[out] DWORD *pdwLength);
HRESULT GetSecurityProvider([out] CLSID *pSPClsid);
HRESULT BindToStream([out] IStream **ppStream);
HRESULT BindToFilter([out] IFilter **ppFilter);
};
[
object,
uuid(c7310734-ac80-11d1-8df3-00c04fb6ef4f),
helpstring("URL Accessor Interface"),
public,
pointer_default(unique)
]
interface IUrlAccessor2: IUrlAccessor
{
HRESULT GetDisplayUrl([out, length_is(*pdwLength), size_is(dwSize)] WCHAR wszDocUrl[],
[in] DWORD dwSize,
[out] DWORD *pdwLength);
HRESULT IsDocument();
HRESULT GetCodePage([out, length_is(*pdwLength), size_is(dwSize)] WCHAR wszCodePage[],
[in] DWORD dwSize,
[out] DWORD *pdwLength);
};
[
object,
uuid(6FBC7005-0455-4874-B8FF-7439450241A3),
helpstring("URL Accessor Interface"),
public,
pointer_default(unique)
]
interface IUrlAccessor3: IUrlAccessor2
{
HRESULT GetImpersonationSidBlobs([in] LPCWSTR pcwszURL, [out] DWORD *pcSidCount, [out] BLOB **ppSidBlobs);
};
[
object,
uuid(5CC51041-C8D2-41d7-BCA3-9E9E286297DC),
helpstring("URL Accessor Interface"),
public,
pointer_default(unique)
]
interface IUrlAccessor4: IUrlAccessor3
{
HRESULT ShouldIndexItemContent([out] BOOL *pfIndexContent);
HRESULT ShouldIndexProperty([in] REFPROPERTYKEY key, [out] BOOL *pfIndexProperty);
};