IGetClusterResourceInfo 介面 (cluadmex.h)
[此介面可用於需求一節中指定的操作系統。 Windows Server 2008 已移除此介面的支援。]
故障轉移叢集管理員擴充功能會呼叫 IGetClusterResourceInfo 介面,以擷取資源的相關信息。
繼承
IGetClusterResourceInfo 介面繼承自 IUnknown 介面。 IGetClusterResourceInfo 也有下列類型的成員:
方法
IGetClusterResourceInfo 介面具有這些方法。
IGetClusterResourceInfo::GetResourceHandle 傳回資源的句柄。 |
IGetClusterResourceInfo::GetResourceNetworkName 傳回資源相依之網路名稱資源所管理的網路名稱。 |
IGetClusterResourceInfo::GetResourceTypeName 傳回資源的型別。 |
備註
如果擴充的物件不是資源, 則 IGetClusterResourceInfo 方法的查詢將會失敗。 否則,當故障轉移叢集管理員呼叫下列方法的實作時,您可以使用 IGetClusterResourceInfo 介面:
- IWEExtendPropertySheet::CreatePropertySheetPages
- IWEExtendContextMenu::AddContextMenuItems
- IWEExtendWizard::CreateWizardPages
- IWEExtendWizard97::CreateWizard97Pages
- IWEInvokeCommand::InvokeCommand
只在資源延伸模組的內容中使用 IGetClusterResourceInfo 介面。 請勿從 IGetClusterResourceInfo 介面取得其他資訊介面,例如 IGetClusterGroupInfo。 雖然 QueryInterface 會傳回有效的介面,但作業在 叢集的內容中無效,而結果是代表沒有實際叢集物件的介面。
範例
在下列程式代碼中,C 樣式批注所括的區段會根據前一個段落失敗。
//
// Context is a resource extension.
//
HRESULT CExtObject::HrGetResourceInfo( IGetClusterResourceInfo *piResInfo )
{
HRESULT hr;
HRESOURCE hRes;
HGROUP hGroup;
HCLUSTER hCluster;
DWORD cchNameSize = MAX_NAME_SIZE; // 256
WCHAR szGroupName[cchNameSize];
IGetClusterGroupInfo *pGrpInfo;
hRes = piResInfo->GetResourceHandle();
//
// Get group handle
//
/*******************************************************************
// Incorrect:
//
// Obtain an IGetClusterGroupInfo interface from
// IGetClusterResourceInfo. By the rules of QueryInterface, this
// must return a valid interface. But it is not a valid cluster
// operation so the interface won't represent a real object.
//
hr = pResInfo->QueryInterface( IID_IGetClusterGroupInfo,
(LPVOID *) &pGrpInfo );
//
// Interface is valid, will pass this test.
//
if( FAILED( hr ) )
goto Error;
//
// FAILS!
// Interface does not represent a real cluster object.
//
hGrp = pGrpInfo->GetGroupHandle( 0 );
*******************************************************************/
// Correct:
//
// Use the valid resource handle to call GetClusterResourceState.
// This yields the name of the group to which it belongs, which
// can be used to obtain a group handle.
//
dwState = GetClusterResourceState( hRes,
NULL,
0,
szGroupName,
&cchGroupNameSize );
// Add error check.
hCluster = OpenCluster( g_szClusterName );
// Add error check.
hGrp = OpenClusterGroup( hCluster, szGroupName );
// After error check, use group handle...
}
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 都不支援 |
最低支援的伺服器 | Windows Server 2003 Enterprise、Windows Server 2003 Datacenter |
目標平台 | Windows |
標頭 | cluadmex.h |
另請參閱
IWEExtendContextMenu::AddContextMenuItems
IWEExtendPropertySheet::CreatePropertySheetPages
IWEExtendWizard97::CreateWizard97Pages