458 lines
11 KiB
Plaintext
458 lines
11 KiB
Plaintext
|
/////////////////////////////////////////////////////////////////////////////
|
||
|
//
|
||
|
// Copyright (c) 1996-1997 Microsoft Corporation
|
||
|
//
|
||
|
// Module Name:
|
||
|
// CluAdmEx.idl
|
||
|
//
|
||
|
// Abstract:
|
||
|
// Definition of COM interfaces for Cluster Administrator extensions.
|
||
|
//
|
||
|
// Author:
|
||
|
// davidp August 22, 1996
|
||
|
//
|
||
|
// Revision History:
|
||
|
//
|
||
|
// Notes:
|
||
|
// The following interfaces defined below are used to get information
|
||
|
// about the object(s) for which a property page, wizard, or context
|
||
|
// menu is being displayed. These interfaces may be queried for by
|
||
|
// the extension using the piData IUnknown interface pointer.
|
||
|
//
|
||
|
// IGetClusterPropSheetInfo
|
||
|
// IGetClusterDataInfo
|
||
|
// IGetClusterObjectInfo
|
||
|
// IGetClusterNodeInfo
|
||
|
// IGetClusterGroupInfo
|
||
|
// IGetClusterResourceInfo
|
||
|
// IGetClusterNetworkInfo
|
||
|
// IGetClusterNetInterfaceInfo
|
||
|
//
|
||
|
// The following interfaces defined below are implemented by extensions
|
||
|
// are are used to extend property sheets, wizards, and context menus.
|
||
|
//
|
||
|
// IWEExtendPropertySheet
|
||
|
// IWEExtendWizard
|
||
|
// IWEExtendContextMenu
|
||
|
// IWEInvokeCommand
|
||
|
//
|
||
|
// The following interfaces defined below are implemented by CluAdmin
|
||
|
// and are passed to the extension to allow it to add its extension
|
||
|
// property pages, wizard pages, or context menu items.
|
||
|
//
|
||
|
// IWCPropertySheetCallback
|
||
|
// IWCWizardCallback
|
||
|
// IWCContextMenuCallback
|
||
|
//
|
||
|
/////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
#ifndef _CLUADMEX_IDL_
|
||
|
#define _CLUADMEX_IDL_
|
||
|
|
||
|
import "oaidl.idl";
|
||
|
import "clusapi.h";
|
||
|
|
||
|
// Define HPROPSHEETPAGE because we can't include prsht.h.
|
||
|
#define HPROPSHEETPAGE LONG *
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////////
|
||
|
// Cluster Administrator Extensions type definitions
|
||
|
/////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
//
|
||
|
// CLUADMEX_OBJECT_TYPE
|
||
|
//
|
||
|
// Enumeration of the types of objects that can be administered.
|
||
|
//
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
typedef enum _CLUADMEX_OBJECT_TYPE
|
||
|
{
|
||
|
CLUADMEX_OT_NONE = 0,
|
||
|
CLUADMEX_OT_CLUSTER,
|
||
|
CLUADMEX_OT_NODE,
|
||
|
CLUADMEX_OT_GROUP,
|
||
|
CLUADMEX_OT_RESOURCE,
|
||
|
CLUADMEX_OT_RESOURCETYPE,
|
||
|
CLUADMEX_OT_NETWORK,
|
||
|
CLUADMEX_OT_NETINTERFACE
|
||
|
|
||
|
} CLUADMEX_OBJECT_TYPE;
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////////
|
||
|
// Cluster Administrator Extensions data interface definitions
|
||
|
/////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
//
|
||
|
// IGetClusterUIInfo
|
||
|
//
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
[
|
||
|
object,
|
||
|
uuid(97DEDE50-FC6B-11CF-B5F5-00A0C90AB505),
|
||
|
helpstring("IGetClusterUIInfo Interface"),
|
||
|
pointer_default(unique)
|
||
|
]
|
||
|
interface IGetClusterUIInfo : IUnknown
|
||
|
{
|
||
|
import "oaidl.idl";
|
||
|
|
||
|
[local] HRESULT GetClusterName(
|
||
|
[out] BSTR lpszName,
|
||
|
[in, out] LONG * pcchName
|
||
|
);
|
||
|
[local] LCID GetLocale(void);
|
||
|
[local] HFONT GetFont(void);
|
||
|
[local] HICON GetIcon(void);
|
||
|
|
||
|
}; //*** interface IGetClusterUIInfo
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
//
|
||
|
// IGetClusterDataInfo
|
||
|
//
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
[
|
||
|
object,
|
||
|
uuid(97DEDE51-FC6B-11CF-B5F5-00A0C90AB505),
|
||
|
helpstring("IGetClusterDataInfo Interface"),
|
||
|
pointer_default(unique)
|
||
|
]
|
||
|
interface IGetClusterDataInfo : IUnknown
|
||
|
{
|
||
|
import "oaidl.idl";
|
||
|
|
||
|
[local] HRESULT GetClusterName(
|
||
|
[out] BSTR lpszName,
|
||
|
[in, out] LONG * pcchName
|
||
|
);
|
||
|
[local] HCLUSTER GetClusterHandle(void);
|
||
|
[local] LONG GetObjectCount(void);
|
||
|
|
||
|
}; //*** interface IGetClusterDataInfo
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
//
|
||
|
// IGetClusterObjectInfo
|
||
|
//
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
[
|
||
|
object,
|
||
|
uuid(97DEDE52-FC6B-11CF-B5F5-00A0C90AB505),
|
||
|
helpstring("IGetClusterObjectInfo Interface"),
|
||
|
pointer_default(unique)
|
||
|
]
|
||
|
interface IGetClusterObjectInfo : IUnknown
|
||
|
{
|
||
|
import "oaidl.idl";
|
||
|
|
||
|
[local] HRESULT GetObjectName(
|
||
|
[in] LONG lObjIndex,
|
||
|
[out] BSTR lpszName,
|
||
|
[in, out] LONG * pcchName
|
||
|
);
|
||
|
[local] CLUADMEX_OBJECT_TYPE GetObjectType(
|
||
|
[in] LONG lObjIndex
|
||
|
);
|
||
|
|
||
|
}; //*** interface IGetClusterObjectInfo
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
//
|
||
|
// IGetClusterNodeInfo
|
||
|
//
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
[
|
||
|
object,
|
||
|
uuid(97DEDE53-FC6B-11CF-B5F5-00A0C90AB505),
|
||
|
helpstring("IGetClusterNodeInfo Interface"),
|
||
|
pointer_default(unique)
|
||
|
]
|
||
|
interface IGetClusterNodeInfo : IUnknown
|
||
|
{
|
||
|
import "oaidl.idl";
|
||
|
|
||
|
[local] HNODE GetNodeHandle(
|
||
|
[in] LONG lObjIndex
|
||
|
);
|
||
|
|
||
|
}; //*** interface IGetClusterObjectInfo
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
//
|
||
|
// IGetClusterGroupInfo
|
||
|
//
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
[
|
||
|
object,
|
||
|
uuid(97DEDE54-FC6B-11CF-B5F5-00A0C90AB505),
|
||
|
helpstring("IGetClusterGroupInfo Interface"),
|
||
|
pointer_default(unique)
|
||
|
]
|
||
|
interface IGetClusterGroupInfo : IUnknown
|
||
|
{
|
||
|
import "oaidl.idl";
|
||
|
|
||
|
[local] HGROUP GetGroupHandle(
|
||
|
[in] LONG lObjIndex
|
||
|
);
|
||
|
|
||
|
}; //*** interface IGetClusterGroupInfo
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
//
|
||
|
// IGetClusterResourceInfo
|
||
|
//
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
[
|
||
|
object,
|
||
|
uuid(97DEDE55-FC6B-11CF-B5F5-00A0C90AB505),
|
||
|
helpstring("IGetClusterResourceInfo Interface"),
|
||
|
pointer_default(unique)
|
||
|
]
|
||
|
interface IGetClusterResourceInfo : IUnknown
|
||
|
{
|
||
|
import "oaidl.idl";
|
||
|
|
||
|
[local] HRESOURCE GetResourceHandle(
|
||
|
[in] LONG lObjIndex
|
||
|
);
|
||
|
[local] HRESULT GetResourceTypeName(
|
||
|
[in] LONG lObjIndex,
|
||
|
[out] BSTR lpszResTypeName,
|
||
|
[in, out] LONG * pcchResTypeName
|
||
|
);
|
||
|
[local] BOOL GetResourceNetworkName(
|
||
|
[in] LONG lObjIndex,
|
||
|
[out] BSTR lpszNetName,
|
||
|
[in, out] ULONG * pcchNetName
|
||
|
);
|
||
|
|
||
|
}; //*** interface IGetClusterResourceInfo
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
//
|
||
|
// IGetClusterNetworkInfo
|
||
|
//
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
[
|
||
|
object,
|
||
|
uuid(97DEDE56-FC6B-11CF-B5F5-00A0C90AB505),
|
||
|
helpstring("IGetClusterNetworkInfo Interface"),
|
||
|
pointer_default(unique)
|
||
|
]
|
||
|
interface IGetClusterNetworkInfo : IUnknown
|
||
|
{
|
||
|
import "oaidl.idl";
|
||
|
|
||
|
[local] HNETWORK GetNetworkHandle(
|
||
|
[in] LONG lObjIndex
|
||
|
);
|
||
|
|
||
|
}; //*** interface IGetClusterNetworkInfo
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
//
|
||
|
// IGetClusterNetInterfaceInfo
|
||
|
//
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
[
|
||
|
object,
|
||
|
uuid(97DEDE57-FC6B-11CF-B5F5-00A0C90AB505),
|
||
|
helpstring("IGetClusterNetInterfaceInfo Interface"),
|
||
|
pointer_default(unique)
|
||
|
]
|
||
|
interface IGetClusterNetInterfaceInfo : IUnknown
|
||
|
{
|
||
|
import "oaidl.idl";
|
||
|
|
||
|
[local] HNETINTERFACE GetNetInterfaceHandle(
|
||
|
[in] LONG lObjIndex
|
||
|
);
|
||
|
|
||
|
}; //*** interface IGetClusterNetInterfaceInfo
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////////
|
||
|
// Cluster Administrator Extensions interface definitions
|
||
|
/////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
//
|
||
|
// IWCPropertySheetCallback
|
||
|
//
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
[
|
||
|
object,
|
||
|
uuid(97DEDE60-FC6B-11CF-B5F5-00A0C90AB505),
|
||
|
helpstring("IWCPropertySheetCallback Interface"),
|
||
|
pointer_default(unique)
|
||
|
]
|
||
|
interface IWCPropertySheetCallback : IUnknown
|
||
|
{
|
||
|
import "oaidl.idl";
|
||
|
|
||
|
HRESULT AddPropertySheetPage(
|
||
|
[in] HPROPSHEETPAGE hpage
|
||
|
);
|
||
|
|
||
|
}; //*** interface IWCPropertySheetCallback
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
//
|
||
|
// IWEExtendPropertySheet
|
||
|
//
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
[
|
||
|
object,
|
||
|
uuid(97DEDE61-FC6B-11CF-B5F5-00A0C90AB505),
|
||
|
helpstring("IWSExtendPropertySheet Interface"),
|
||
|
pointer_default(unique)
|
||
|
]
|
||
|
interface IWEExtendPropertySheet : IUnknown
|
||
|
{
|
||
|
import "oaidl.idl";
|
||
|
|
||
|
HRESULT CreatePropertySheetPages(
|
||
|
[in] IUnknown * piData,
|
||
|
[in] IWCPropertySheetCallback * piCallback
|
||
|
);
|
||
|
|
||
|
}; //*** interface IWEExtendPropertySheet
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
//
|
||
|
// IWCWizardCallback
|
||
|
//
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
[
|
||
|
object,
|
||
|
uuid(97DEDE62-FC6B-11CF-B5F5-00A0C90AB505),
|
||
|
helpstring("IWCWizardCallback Interface"),
|
||
|
pointer_default(unique)
|
||
|
]
|
||
|
interface IWCWizardCallback : IUnknown
|
||
|
{
|
||
|
import "oaidl.idl";
|
||
|
|
||
|
HRESULT AddWizardPage(
|
||
|
[in] HPROPSHEETPAGE hpage
|
||
|
);
|
||
|
HRESULT EnableNext(
|
||
|
[in] HPROPSHEETPAGE hpage,
|
||
|
[in] BOOL bEnable
|
||
|
);
|
||
|
|
||
|
}; //*** interface IWCWizardCallback
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
//
|
||
|
// IWEExtendWizard
|
||
|
//
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
[
|
||
|
object,
|
||
|
uuid(97DEDE63-FC6B-11CF-B5F5-00A0C90AB505),
|
||
|
helpstring("IWEExtendWizard Interface"),
|
||
|
pointer_default(unique)
|
||
|
]
|
||
|
interface IWEExtendWizard : IUnknown
|
||
|
{
|
||
|
import "oaidl.idl";
|
||
|
|
||
|
HRESULT CreateWizardPages(
|
||
|
[in] IUnknown * piData,
|
||
|
[in] IWCWizardCallback * piCallback
|
||
|
);
|
||
|
|
||
|
}; //*** interface IWEExtendWizard
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
//
|
||
|
// IWCContextMenuCallback
|
||
|
//
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
[
|
||
|
object,
|
||
|
uuid(97DEDE64-FC6B-11CF-B5F5-00A0C90AB505),
|
||
|
helpstring("IWCContextMenuCallback Interface"),
|
||
|
pointer_default(unique)
|
||
|
]
|
||
|
interface IWCContextMenuCallback : IUnknown
|
||
|
{
|
||
|
import "oaidl.idl";
|
||
|
|
||
|
HRESULT AddExtensionMenuItem(
|
||
|
[in] BSTR lpszName,
|
||
|
[in] BSTR lpszStatusBarText,
|
||
|
[in] ULONG nCommandID,
|
||
|
[in] ULONG nSubmenuCommandID,
|
||
|
[in] ULONG uFlags
|
||
|
);
|
||
|
|
||
|
}; //*** interface IWCContextMenuCallback
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
//
|
||
|
// IWEExtendContextMenu
|
||
|
//
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
[
|
||
|
object,
|
||
|
uuid(97DEDE65-FC6B-11CF-B5F5-00A0C90AB505),
|
||
|
helpstring("IWEExtendContextMenu Interface"),
|
||
|
pointer_default(unique)
|
||
|
]
|
||
|
interface IWEExtendContextMenu : IUnknown
|
||
|
{
|
||
|
import "oaidl.idl";
|
||
|
|
||
|
HRESULT AddContextMenuItems(
|
||
|
[in] IUnknown * piData,
|
||
|
[in] IWCContextMenuCallback * piCallback
|
||
|
);
|
||
|
|
||
|
}; //*** interface IWEExtendContextMenu
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
//
|
||
|
// IWEInvokeCommand
|
||
|
//
|
||
|
/////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
[
|
||
|
object,
|
||
|
uuid(97DEDE66-FC6B-11CF-B5F5-00A0C90AB505),
|
||
|
helpstring("IWEInvokeCommand Interface"),
|
||
|
pointer_default(unique)
|
||
|
]
|
||
|
interface IWEInvokeCommand : IUnknown
|
||
|
{
|
||
|
import "oaidl.idl";
|
||
|
|
||
|
HRESULT InvokeCommand(
|
||
|
[in] ULONG nCommandID,
|
||
|
[in] IUnknown * piData
|
||
|
);
|
||
|
|
||
|
}; //*** interface IWEInvokeCommand
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
#endif // _CLUADMEX_IDL_
|