251 lines
8.7 KiB
Plaintext
251 lines
8.7 KiB
Plaintext
//+---------------------------------------------------------------------------
|
|
//
|
|
// Copyright 1995 - 1996 Microsoft Corporation. All Rights Reserved.
|
|
//
|
|
// Contents: DataPath Interfaces, Types, Constants, and Enumerations
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
|
|
cpp_quote("//+-------------------------------------------------------------------------")
|
|
cpp_quote("//")
|
|
cpp_quote("// Microsoft Windows")
|
|
cpp_quote("// Copyright 1995 - 1996 Microsoft Corporation. All Rights Reserved.")
|
|
cpp_quote("//")
|
|
cpp_quote("// File: datapath.h")
|
|
cpp_quote("")
|
|
cpp_quote("#pragma comment(lib,\"uuid3.lib\")")
|
|
cpp_quote("//")
|
|
cpp_quote("//--------------------------------------------------------------------------")
|
|
|
|
#ifndef DO_NO_IMPORTS
|
|
import "objidl.idl";
|
|
import "oleidl.idl";
|
|
import "oaidl.idl";
|
|
import "olectl.idl";
|
|
#endif
|
|
|
|
interface IBindHost;
|
|
interface IObjectWithSite;
|
|
interface IProvideClassInfo3;
|
|
|
|
cpp_quote("#include \"idispids.h\"")
|
|
|
|
cpp_quote("typedef VARIANT OLE_DATAPATH;")
|
|
cpp_quote("#define SID_SDataPathBrowser IID_IDataPathBrowser")
|
|
cpp_quote("#define SID_IBindHost IID_IBindHost")
|
|
cpp_quote("#define SID_SBindHost IID_IBindHost")
|
|
|
|
cpp_quote("")
|
|
cpp_quote("////////////////////////////////////////////////////////////////////////////")
|
|
cpp_quote("// State values for the DISPID_READYSTATE property")
|
|
enum {
|
|
READYSTATE_LOADING = 0, // Control is currently loading its properties
|
|
READYSTATE_LOADED = 2, // Control has been initialized via IPersist*::Load
|
|
READYSTATE_INTERACTIVE = 3, // Control is interactive but not all data is available
|
|
READYSTATE_COMPLETE = 4, // Control has all its data
|
|
};
|
|
|
|
cpp_quote("")
|
|
cpp_quote("////////////////////////////////////////////////////////////////////////////")
|
|
cpp_quote("// DataPath GUIDs (link to uuid3.lib)")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_BMP;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_DIB;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_WMF;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_ENHMF;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_GIF;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_JPEG;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_TIFF;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_XBM;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_PCX;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_PICT;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_CGM;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_EPS;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_COMMONIMAGE;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_ALLIMAGE;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_AVI;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_MPEG;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_QUICKTIME;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_BASICAUDIO;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_MIDI;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_WAV;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_RIFF;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_SOUND;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_VIDEO;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_ALLMM;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_ANSITEXT;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_UNICODE;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_RTF;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_HTML;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_POSTSCRIPT;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_ALLTEXT;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_DIF;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_SYLK;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_BIFF;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_PALETTE;")
|
|
cpp_quote("EXTERN_C const GUID OLE_DATAPATH_PENDATA;")
|
|
|
|
cpp_quote("////////////////////////////////////////////////////////////////////////////")
|
|
cpp_quote("")
|
|
cpp_quote("EXTERN_C const GUID FLAGID_Internet;")
|
|
|
|
cpp_quote("")
|
|
cpp_quote("////////////////////////////////////////////////////////////////////////////")
|
|
cpp_quote("// ARRAYID GUIDs (link to uuid3.lib)")
|
|
cpp_quote("EXTERN_C const GUID ARRAYID_Interfaces_Incoming;")
|
|
cpp_quote("EXTERN_C const GUID ARRAYID_Interfaces_Outgoing;")
|
|
cpp_quote("EXTERN_C const GUID ARRAYID_Categories_Implemented;")
|
|
cpp_quote("EXTERN_C const GUID ARRAYID_Categories_Required;")
|
|
cpp_quote("EXTERN_C const GUID ARRAYID_PathProperties;")
|
|
cpp_quote("EXTERN_C const GUID ARRAYID_Methods_Primary;")
|
|
cpp_quote("EXTERN_C const GUID ARRAYID_Methods_Secondary;")
|
|
|
|
cpp_quote("")
|
|
cpp_quote("////////////////////////////////////////////////////////////////////////////")
|
|
cpp_quote("// Interface Definitions")
|
|
|
|
//+---------------------------------------------------------------------------
|
|
//
|
|
// Copyright (C) Microsoft Corporation, 1995 - 1996.
|
|
//
|
|
// Contents: IBindHost definition
|
|
//
|
|
//---------------------------------------------------------------------------
|
|
cpp_quote("#ifndef _LPBINDHOST_DEFINED")
|
|
cpp_quote("#define _LPBINDHOST_DEFINED")
|
|
|
|
cpp_quote("EXTERN_C const GUID SID_BindHost;")
|
|
[
|
|
object,
|
|
uuid(fc4801a0-2ba9-11cf-a229-00aa003d7352),
|
|
pointer_default(unique)
|
|
]
|
|
interface IBindHost : IUnknown
|
|
{
|
|
typedef [unique] IBindHost *LPBINDHOST;
|
|
|
|
HRESULT ParseDisplayName(
|
|
[in] LPOLESTR szName,
|
|
[out] IMoniker** ppmk);
|
|
|
|
HRESULT GetBindCtx(
|
|
[in] DWORD dwReserved,
|
|
[out] IBindCtx** ppbc);
|
|
}
|
|
cpp_quote("#endif")
|
|
|
|
|
|
//+---------------------------------------------------------------------------
|
|
//
|
|
// Copyright (C) Microsoft Corporation, 1995 - 1996.
|
|
//
|
|
// Contents: IObjectWithSite definition
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
cpp_quote("#ifndef _LPOBJECTWITHSITE_DEFINED")
|
|
cpp_quote("#define _LPOBJECTWITHSITE_DEFINED")
|
|
[
|
|
uuid(fc4801a3-2ba9-11cf-a229-00aa003d7352),
|
|
object,
|
|
pointer_default(unique)
|
|
]
|
|
interface IObjectWithSite : IUnknown
|
|
{
|
|
typedef [unique] IObjectWithSite *LPOBJECTWITHSITE;
|
|
|
|
HRESULT SetSite(
|
|
[in] IUnknown *pUnkSite);
|
|
|
|
HRESULT GetSite(
|
|
[in] REFIID riid, [out, iid_is(riid)] void **ppvSite);
|
|
}
|
|
cpp_quote("#endif")
|
|
|
|
//+---------------------------------------------------------------------------
|
|
//
|
|
// Copyright (C) Microsoft Corporation, 1995 - 1996.
|
|
//
|
|
// Contents: IDataPathBrowser definition
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
cpp_quote("#ifndef _LPDATAPATHBROWSER_DEFINED")
|
|
cpp_quote("#define _LPDATAPATHBROWSER_DEFINED")
|
|
[
|
|
uuid(fc4801a4-2ba9-11cf-a229-00aa003d7352),
|
|
local,
|
|
object,
|
|
pointer_default(unique)
|
|
]
|
|
interface IDataPathBrowser : IUnknown
|
|
{
|
|
HRESULT BrowseType(
|
|
[in] REFGUID rguidPathType, [in] LPOLESTR pszDefaultPath,
|
|
[in] ULONG cchPath, [out, size_is(cchPath)] LPOLESTR pszPath,
|
|
[in] HWND hWnd);
|
|
}
|
|
cpp_quote("#endif")
|
|
|
|
//+---------------------------------------------------------------------------
|
|
//
|
|
// Copyright (C) Microsoft Corporation, 1995 - 1996.
|
|
//
|
|
// Contents: IProvideClassInfo3 definition
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
cpp_quote("#ifndef _LPPROVIDECLASSINFO3_DEFINED")
|
|
cpp_quote("#define _LPPROVIDECLASSINFO3_DEFINED")
|
|
[
|
|
object,
|
|
uuid(fc4801a2-2ba9-11cf-a229-00aa003d7352),
|
|
pointer_default(unique)
|
|
]
|
|
interface IProvideClassInfo3 : IProvideClassInfo2
|
|
{
|
|
typedef [unique] IProvideClassInfo3 *LPPROVIDECLASSINFO3;
|
|
|
|
//Identifiers for GetGUID; GUIDKIND_DEFAULT_SOURCE_DISP_IID defined in IProvideClassInfo2
|
|
enum {
|
|
//First one is already in olectl.h
|
|
//GUIDKIND_DEFAULT_SOURCE_DISP_IID = 1, // Outgoing dispinterface marked [source, default]
|
|
GUIDKIND_DEFAULT_SOURCE_IID = 2, // Outgoing vtable interface marked [source, default]
|
|
GUIDKIND_DEFAULT_DISP_IID = 3, // Incoming dispinterface marked [default]
|
|
GUIDKIND_DEFAULT_IID = 4, // Incoming vtable interface marked [default]
|
|
GUIDKIND_TLBID = 5, // Object's type library
|
|
GUIDKIND_CLSID = 6, // Object's CLSID
|
|
};
|
|
|
|
//Identifiers for GetGUIDArray
|
|
enum {
|
|
GUIDARRAYKIND_INCOMING_INTERFACES = 1, // Object's usual incoming interfaces
|
|
GUIDARRAYKIND_OUTGOING_INTERFACES = 2, // Object's outgoing (event) interfaces
|
|
GUIDARRAYKIND_CATEGORIES = 3, // Object's component categories
|
|
GUIDARRAYKIND_PATHPROPERTIES = 4 // Object's data path property types and DWORD dispIDs
|
|
};
|
|
|
|
//DWORD flags for GUIDKINDARRAY_CATEGORIES
|
|
enum {
|
|
CATEGORYFLAG_MANDATORY = 1, // Container support for category is required
|
|
};
|
|
|
|
enum {
|
|
INTERNETFLAG_USESDATAPATHS = 0x00000001 // Object uses one or more data paths
|
|
};
|
|
|
|
//Extended from IProvideClassInfo2
|
|
//HRESULT GetGUID([in] DWORD dwGuidKind, [out] GUID *pGUID);
|
|
|
|
HRESULT GetGUIDArray(
|
|
[in] DWORD dwGuidArrayKind,
|
|
[in,out] CAUUID* pcaUUID,
|
|
[in,out] CADWORD* pcadw);
|
|
|
|
HRESULT GetClassInfoLocale(
|
|
[out] ITypeInfo** ppITypeInfo,
|
|
[in] LCID lcid);
|
|
|
|
HRESULT GetFlags(
|
|
[in] REFGUID guidGroup,
|
|
[out] DWORD* pdwFlags);
|
|
}
|
|
cpp_quote("#endif")
|
|
|