?? mmc.h
字號:
LONG lInsertionPointID;
LONG fFlags;
LONG fSpecialFlags;
} CONTEXTMENUITEM;
typedef CONTEXTMENUITEM __RPC_FAR *LPCONTEXTMENUITEM;
typedef
enum _MMC_MENU_COMMAND_IDS
{ MMCC_STANDARD_VIEW_SELECT = -1
} MMC_MENU_COMMAND_IDS;
typedef struct _MENUBUTTONDATA
{
int idCommand;
int x;
int y;
} MENUBUTTONDATA;
typedef MENUBUTTONDATA __RPC_FAR *LPMENUBUTTONDATA;
#define MMC_MULTI_SELECT_COOKIE ( -2 )
#define MMC_WINDOW_COOKIE ( -3 )
typedef
enum _MMC_FILTER_TYPE
{ MMC_STRING_FILTER = 1,
MMC_INT_FILTER = 3
} MMC_FILTER_TYPE;
typedef struct _FILTERDATA
{
DWORD dwFlags;
DWORD dwType;
INT iFilter;
LPOLESTR pszFilter;
INT cchFilter;
} FILTERDATA;
typedef struct _FILTERDATA __RPC_FAR *LPFILTERDATA;
typedef
enum _MMC_FILTER_CHANGE_CODE
{ MFCC_DISABLE = 0,
MFCC_ENABLE = 1,
MFCC_VALUE_CHANGE = 2
} MMC_FILTER_CHANGE_CODE;
typedef
enum _MMC_NOTIFY_TYPE
{ MMCN_ACTIVATE = 0x8001,
MMCN_ADD_IMAGES = 0x8002,
MMCN_BTN_CLICK = 0x8003,
MMCN_CLICK = 0x8004,
MMCN_COLUMN_CLICK = 0x8005,
MMCN_CONTEXTMENU = 0x8006,
MMCN_CUTORMOVE = 0x8007,
MMCN_DBLCLICK = 0x8008,
MMCN_DELETE = 0x8009,
MMCN_DESELECT_ALL = 0x800a,
MMCN_EXPAND = 0x800b,
MMCN_HELP = 0x800c,
MMCN_MENU_BTNCLICK = 0x800d,
MMCN_MINIMIZED = 0x800e,
MMCN_PASTE = 0x800f,
MMCN_PROPERTY_CHANGE = 0x8010,
MMCN_QUERY_PASTE = 0x8011,
MMCN_REFRESH = 0x8012,
MMCN_REMOVE_CHILDREN = 0x8013,
MMCN_RENAME = 0x8014,
MMCN_SELECT = 0x8015,
MMCN_SHOW = 0x8016,
MMCN_VIEW_CHANGE = 0x8017,
MMCN_SNAPINHELP = 0x8018,
MMCN_CONTEXTHELP = 0x8019,
MMCN_INITOCX = 0x801a,
MMCN_FILTER_CHANGE = 0x801b,
MMCN_GET_FILTER_MENU = 0x801c,
MMCN_FILTER_OPERATOR = 0x801d
} MMC_NOTIFY_TYPE;
typedef
enum _DATA_OBJECT_TYPES
{ CCT_SCOPE = 0x8000,
CCT_RESULT = 0x8001,
CCT_SNAPIN_MANAGER = 0x8002,
CCT_UNINITIALIZED = 0xffff
} DATA_OBJECT_TYPES;
#define MMC_NW_OPTION_NONE ( 0 )
#define MMC_NW_OPTION_NOSCOPEPANE ( 0x1 )
#define MMC_NW_OPTION_NOTOOLBARS ( 0x2 )
#define MMC_NW_OPTION_SHORTTITLE ( 0x4 )
#define MMC_NW_OPTION_CUSTOMTITLE ( 0x8 )
#define MMC_NW_OPTION_NOPERSIST ( 0x10 )
#define CCF_NODETYPE ( L"CCF_NODETYPE" )
#define CCF_SZNODETYPE ( L"CCF_SZNODETYPE" )
#define CCF_DISPLAY_NAME ( L"CCF_DISPLAY_NAME" )
#define CCF_SNAPIN_CLASSID ( L"CCF_SNAPIN_CLASSID" )
#define CCF_WINDOW_TITLE ( L"CCF_WINDOW_TITLE" )
#define CCF_MMC_MULTISELECT_DATAOBJECT ( L"CCF_MMC_MULTISELECT_DATAOBJECT" )
typedef struct _SMMCDataObjects
{
DWORD count;
LPDATAOBJECT lpDataObject[ 1 ];
} SMMCDataObjects;
#define CCF_MULTI_SELECT_SNAPINS ( L"CCF_MULTI_SELECT_SNAPINS" )
typedef struct _SMMCObjectTypes
{
DWORD count;
GUID guid[ 1 ];
} SMMCObjectTypes;
#define CCF_OBJECT_TYPES_IN_MULTI_SELECT ( L"CCF_OBJECT_TYPES_IN_MULTI_SELECT" )
STDAPI MMCPropertyChangeNotify(long lNotifyHandle, long param);
STDAPI MMCFreeNotifyHandle(long lNotifyHandle);
STDAPI MMCPropPageCallback(void* vpsp);
EXTERN_C const CLSID CLSID_NodeManager;
#define DOBJ_NULL (LPDATAOBJECT)0
#define DOBJ_CUSTOMOCX (LPDATAOBJECT)-1
#define DOBJ_CUSTOMWEB (LPDATAOBJECT)-2
#define IS_SPECIAL_DATAOBJECT(d) ((int)(d) >= -10 && (int)(d) <= 0)
#define IS_SPECIAL_COOKIE(c) ((c) >= -10 && (c) <= -1)
extern RPC_IF_HANDLE __MIDL_itf_mmc_0000_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_mmc_0000_v0_0_s_ifspec;
#ifndef __IComponentData_INTERFACE_DEFINED__
#define __IComponentData_INTERFACE_DEFINED__
/* interface IComponentData */
/* [unique][helpstring][uuid][object] */
EXTERN_C const IID IID_IComponentData;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("955AB28A-5218-11D0-A985-00C04FD8D565")
IComponentData : public IUnknown
{
public:
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Initialize(
/* [in] */ LPUNKNOWN pUnknown) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE CreateComponent(
/* [out] */ LPCOMPONENT __RPC_FAR *ppComponent) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Notify(
/* [in] */ LPDATAOBJECT lpDataObject,
/* [in] */ MMC_NOTIFY_TYPE event,
/* [in] */ long arg,
/* [in] */ long param) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Destroy( void) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE QueryDataObject(
/* [in] */ long cookie,
/* [in] */ DATA_OBJECT_TYPES type,
/* [out] */ LPDATAOBJECT __RPC_FAR *ppDataObject) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetDisplayInfo(
/* [out][in] */ SCOPEDATAITEM __RPC_FAR *pScopeDataItem) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE CompareObjects(
/* [in] */ LPDATAOBJECT lpDataObjectA,
/* [in] */ LPDATAOBJECT lpDataObjectB) = 0;
};
#else /* C style interface */
typedef struct IComponentDataVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )(
IComponentData __RPC_FAR * This,
/* [in] */ REFIID riid,
/* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )(
IComponentData __RPC_FAR * This);
ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )(
IComponentData __RPC_FAR * This);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Initialize )(
IComponentData __RPC_FAR * This,
/* [in] */ LPUNKNOWN pUnknown);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateComponent )(
IComponentData __RPC_FAR * This,
/* [out] */ LPCOMPONENT __RPC_FAR *ppComponent);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Notify )(
IComponentData __RPC_FAR * This,
/* [in] */ LPDATAOBJECT lpDataObject,
/* [in] */ MMC_NOTIFY_TYPE event,
/* [in] */ long arg,
/* [in] */ long param);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Destroy )(
IComponentData __RPC_FAR * This);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryDataObject )(
IComponentData __RPC_FAR * This,
/* [in] */ long cookie,
/* [in] */ DATA_OBJECT_TYPES type,
/* [out] */ LPDATAOBJECT __RPC_FAR *ppDataObject);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDisplayInfo )(
IComponentData __RPC_FAR * This,
/* [out][in] */ SCOPEDATAITEM __RPC_FAR *pScopeDataItem);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CompareObjects )(
IComponentData __RPC_FAR * This,
/* [in] */ LPDATAOBJECT lpDataObjectA,
/* [in] */ LPDATAOBJECT lpDataObjectB);
END_INTERFACE
} IComponentDataVtbl;
interface IComponentData
{
CONST_VTBL struct IComponentDataVtbl __RPC_FAR *lpVtbl;
};
#ifdef COBJMACROS
#define IComponentData_QueryInterface(This,riid,ppvObject) \
(This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
#define IComponentData_AddRef(This) \
(This)->lpVtbl -> AddRef(This)
#define IComponentData_Release(This) \
(This)->lpVtbl -> Release(This)
#define IComponentData_Initialize(This,pUnknown) \
(This)->lpVtbl -> Initialize(This,pUnknown)
#define IComponentData_CreateComponent(This,ppComponent) \
(This)->lpVtbl -> CreateComponent(This,ppComponent)
#define IComponentData_Notify(This,lpDataObject,event,arg,param) \
(This)->lpVtbl -> Notify(This,lpDataObject,event,arg,param)
#define IComponentData_Destroy(This) \
(This)->lpVtbl -> Destroy(This)
#define IComponentData_QueryDataObject(This,cookie,type,ppDataObject) \
(This)->lpVtbl -> QueryDataObject(This,cookie,type,ppDataObject)
#define IComponentData_GetDisplayInfo(This,pScopeDataItem) \
(This)->lpVtbl -> GetDisplayInfo(This,pScopeDataItem)
#define IComponentData_CompareObjects(This,lpDataObjectA,lpDataObjectB) \
(This)->lpVtbl -> CompareObjects(This,lpDataObjectA,lpDataObjectB)
#endif /* COBJMACROS */
#endif /* C style interface */
/* [helpstring] */ HRESULT STDMETHODCALLTYPE IComponentData_Initialize_Proxy(
IComponentData __RPC_FAR * This,
/* [in] */ LPUNKNOWN pUnknown);
void __RPC_STUB IComponentData_Initialize_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
/* [helpstring] */ HRESULT STDMETHODCALLTYPE IComponentData_CreateComponent_Proxy(
IComponentData __RPC_FAR * This,
/* [out] */ LPCOMPONENT __RPC_FAR *ppComponent);
void __RPC_STUB IComponentData_CreateComponent_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
/* [helpstring] */ HRESULT STDMETHODCALLTYPE IComponentData_Notify_Proxy(
IComponentData __RPC_FAR * This,
/* [in] */ LPDATAOBJECT lpDataObject,
/* [in] */ MMC_NOTIFY_TYPE event,
/* [in] */ long arg,
/* [in] */ long param);
void __RPC_STUB IComponentData_Notify_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
/* [helpstring] */ HRESULT STDMETHODCALLTYPE IComponentData_Destroy_Proxy(
IComponentData __RPC_FAR * This);
void __RPC_STUB IComponentData_Destroy_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
/* [helpstring] */ HRESULT STDMETHODCALLTYPE IComponentData_QueryDataObject_Proxy(
IComponentData __RPC_FAR * This,
/* [in] */ long cookie,
/* [in] */ DATA_OBJECT_TYPES type,
/* [out] */ LPDATAOBJECT __RPC_FAR *ppDataObject);
void __RPC_STUB IComponentData_QueryDataObject_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
/* [helpstring] */ HRESULT STDMETHODCALLTYPE IComponentData_GetDisplayInfo_Proxy(
IComponentData __RPC_FAR * This,
/* [out][in] */ SCOPEDATAITEM __RPC_FAR *pScopeDataItem);
void __RPC_STUB IComponentData_GetDisplayInfo_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
/* [helpstring] */ HRESULT STDMETHODCALLTYPE IComponentData_CompareObjects_Proxy(
IComponentData __RPC_FAR * This,
/* [in] */ LPDATAOBJECT lpDataObjectA,
/* [in] */ LPDATAOBJECT lpDataObjectB);
void __RPC_STUB IComponentData_CompareObjects_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
#endif /* __IComponentData_INTERFACE_DEFINED__ */
#ifndef __IComponent_INTERFACE_DEFINED__
#define __IComponent_INTERFACE_DEFINED__
/* interface IComponent */
/* [unique][helpstring][uuid][object] */
EXTERN_C const IID IID_IComponent;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("43136EB2-D36C-11CF-ADBC-00AA00A80033")
IComponent : public IUnknown
{
public:
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Initialize(
/* [in] */ LPCONSOLE lpConsole) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Notify(
/* [in] */ LPDATAOBJECT lpDataObject,
/* [in] */ MMC_NOTIFY_TYPE event,
/* [in] */ long arg,
/* [in] */ long param) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Destroy(
/* [in] */ long cookie) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE QueryDataObject(
/* [in] */ long cookie,
/* [in] */ DATA_OBJECT_TYPES type,
/* [out] */ LPDATAOBJECT __RPC_FAR *ppDataObject) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetResultViewType(
/* [in] */ long cookie,
/* [out] */ LPOLESTR __RPC_FAR *ppViewType,
/* [out] */ long __RPC_FAR *pViewOptions) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetDisplayInfo(
/* [out][in] */ RESULTDATAITEM __RPC_FAR *pResultDataItem) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE CompareObjects(
/* [in] */ LPDATAOBJECT lpDataObjectA,
/* [in] */ LPDATAOBJECT lpDataObjectB) = 0;
};
#else /* C style interface */
typedef struct IComponentVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )(
IComponent __RPC_FAR * This,
/* [in] */ REFIID riid,
/* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -