以下是 RemoveClusterResourceNode 函数的一般形式:
DWORD RemoveClusterResourceNode(
HRESOURCE hResource,
HNODE hNode
);
参数说明:
- hResource:指定群集资源的句柄,要从中移除节点。
- hNode:要移除的节点的句柄。
函数返回 DWORD 类型的错误码。如果函数执行成功,返回值为 ERROR_SUCCESS。如果函数执行失败,返回值为相应的错误码,您可以使用 FormatMessage 函数获取详细的错误信息。
以下是一个简单的示例,演示如何使用 RemoveClusterResourceNode 函数:
#include <windows.h>
#include <clusapi.h>
int main() {
// 打开群集
HCLUSTER hCluster = OpenCluster(NULL);
if (hCluster == NULL) {
printf("Failed to open cluster. Error: %u\n", GetLastError());
return 1;
}
// 打开指定的群集资源
HRESOURCE hResource = OpenClusterResource(hCluster, L"YourResourceName");
if (hResource == NULL) {
printf("Failed to open cluster resource. Error: %u\n", GetLastError());
CloseCluster(hCluster);
return 1;
}
// 打开要移除的节点
HNODE hNode = OpenClusterNode(hCluster, L"NodeName");
if (hNode == NULL) {
printf("Failed to open cluster node. Error: %u\n", GetLastError());
CloseClusterResource(hResource);
CloseCluster(hCluster);
return 1;
}
// 从节点中移除群集资源
DWORD result = RemoveClusterResourceNode(hResource, hNode);
if (result == ERROR_SUCCESS) {
printf("Resource removed from node successfully.\n");
} else {
printf("Failed to remove resource from node. Error: %u\n", result);
}
// 关闭节点和群集资源句柄
CloseClusterNode(hNode);
CloseClusterResource(hResource);
CloseCluster(hCluster);
return 0;
}
请根据实际需求添加适当的错误处理和资源释放代码。
转载请注明出处:http://www.pingtaimeng.com/article/detail/24464/Win32 API/Clusapi.h/RemoveClusterResourceNode