ClusterResourceControl 함수(clusapi.h)
리소스에 영향을 주는 작업을 시작합니다. 수행되는 작업은 dwControlCode 매개 변수에 전달된 제어 코드에 따라 달라집니다.
구문
DWORD ClusterResourceControl(
[in] HRESOURCE hResource,
[in, optional] HNODE hHostNode,
[in] DWORD dwControlCode,
[in, optional] LPVOID lpInBuffer,
[in] DWORD cbInBufferSize,
[out, optional] LPVOID lpOutBuffer,
[in] DWORD cbOutBufferSize,
[out, optional] LPDWORD lpBytesReturned
);
매개 변수
[in] hResource
영향을 받을 리소스에 대한 핸들입니다.
[in, optional] hHostNode
작업을 수행할 노드에 대한 선택적 핸들입니다. NULL이면 hResource로 식별된 리소스를 소유하는 노드가 작업을 수행합니다.
[in] dwControlCode
수행할 작업을 지정하는 CLUSCTL_RESOURCE_CODES 열거형으로 열거된 리소스 제어 코드입니다. 컨트롤 코드와 연결된 구문은 을 참조하세요.
제어 코드 아키텍처 및 다음 topics.
- CLUSCTL_RESOURCE_UNKNOWN
- CLUSCTL_RESOURCE_GET_CHARACTERISTICS
- CLUSCTL_RESOURCE_GET_FLAGS
- CLUSCTL_RESOURCE_GET_CLASS_INFO
- CLUSCTL_RESOURCE_GET_REQUIRED_DEPENDENCIES
- CLUSCTL_RESOURCE_GET_NAME
- CLUSCTL_RESOURCE_GET_ID
- CLUSCTL_RESOURCE_GET_RESOURCE_TYPE
- CLUSCTL_RESOURCE_ENUM_COMMON_PROPERTIES
- CLUSCTL_RESOURCE_GET_RO_COMMON_PROPERTIES
- CLUSCTL_RESOURCE_GET_COMMON_PROPERTIES
- CLUSCTL_RESOURCE_SET_COMMON_PROPERTIES
- CLUSCTL_RESOURCE_VALIDATE_COMMON_PROPERTIES
- CLUSCTL_RESOURCE_GET_COMMON_PROPERTY_FMTS
- CLUSCTL_RESOURCE_ENUM_PRIVATE_PROPERTIES
- CLUSCTL_RESOURCE_GET_RO_PRIVATE_PROPERTIES
- CLUSCTL_RESOURCE_GET_PRIVATE_PROPERTIES
- CLUSCTL_RESOURCE_SET_PRIVATE_PROPERTIES
- CLUSCTL_RESOURCE_VALIDATE_PRIVATE_PROPERTIES
- CLUSCTL_RESOURCE_GET_PRIVATE_PROPERTY_FMTS
- CLUSCTL_RESOURCE_ADD_REGISTRY_CHECKPOINT
- CLUSCTL_RESOURCE_DELETE_REGISTRY_CHECKPOINT
- CLUSCTL_RESOURCE_GET_REGISTRY_CHECKPOINTS
- CLUSCTL_RESOURCE_ADD_CRYPTO_CHECKPOINT
- CLUSCTL_RESOURCE_DELETE_CRYPTO_CHECKPOINT
- CLUSCTL_RESOURCE_GET_CRYPTO_CHECKPOINTS
- CLUSCTL_RESOURCE_GET_LOADBAL_PROCESS_LIST
- CLUSCTL_RESOURCE_GET_NETWORK_NAME
- CLUSCTL_RESOURCE_NETNAME_GET_VIRTUAL_SERVER_TOKEN
- CLUSCTL_RESOURCE_NETNAME_SET_PWD_INFO
- CLUSCTL_RESOURCE_NETNAME_DELETE_CO
- CLUSCTL_RESOURCE_NETNAME_VALIDATE_VCO
- CLUSCTL_RESOURCE_NETNAME_RESET_VCO
- CLUSCTL_RESOURCE_NETNAME_REGISTER_DNS_RECORDS
- CLUSCTL_RESOURCE_GET_DNS_NAME
- CLUSCTL_RESOURCE_STORAGE_GET_DISK_INFO
- CLUSCTL_RESOURCE_STORAGE_IS_PATH_VALID
- CLUSCTL_RESOURCE_QUERY_DELETE
- CLUSCTL_RESOURCE_UPGRADE_DLL
- CLUSCTL_RESOURCE_IPADDRESS_RENEW_LEASE
- CLUSCTL_RESOURCE_IPADDRESS_RELEASE_LEASE
- CLUSCTL_RESOURCE_ADD_REGISTRY_CHECKPOINT_64BIT
- CLUSCTL_RESOURCE_ADD_REGISTRY_CHECKPOINT_32BIT
- CLUSCTL_RESOURCE_QUERY_MAINTENANCE_MODE
- CLUSCTL_RESOURCE_SET_MAINTENANCE_MODE
- CLUSCTL_RESOURCE_STORAGE_SET_DRIVELETTER
- CLUSCTL_RESOURCE_STORAGE_GET_DISK_INFO_EX
- CLUSCTL_RESOURCE_FILESERVER_SHARE_ADD
- CLUSCTL_RESOURCE_FILESERVER_SHARE_DEL
- CLUSCTL_RESOURCE_FILESERVER_SHARE_MODIFY
- CLUSCTL_RESOURCE_FILESERVER_SHARE_REPORT
- CLUSCTL_RESOURCE_STORAGE_GET_MOUNTPOINTS
- CLUSCTL_RESOURCE_STORAGE_CLUSTER_DISK
- CLUSCTL_RESOURCE_STORAGE_GET_DIRTY
- CLUSCTL_RESOURCE_SET_CSV_MAINTENANCE_MODE
- CLUSCTL_RESOURCE_ENABLE_SHARED_VOLUME_DIRECTIO
- CLUSCTL_RESOURCE_DISABLE_SHARED_VOLUME_DIRECTIO
- CLUSCTL_RESOURCE_SET_SHARED_VOLUME_BACKUP_MODE
- CLUSCTL_RESOURCE_DELETE
- CLUSCTL_RESOURCE_INSTALL_NODE
- CLUSCTL_RESOURCE_EVICT_NODE
- CLUSCTL_RESOURCE_ADD_DEPENDENCY
- CLUSCTL_RESOURCE_REMOVE_DEPENDENCY
- CLUSCTL_RESOURCE_ADD_OWNER
- CLUSCTL_RESOURCE_REMOVE_OWNER
- CLUSCTL_RESOURCE_SET_NAME
- CLUSCTL_RESOURCE_CLUSTER_NAME_CHANGED
- CLUSCTL_RESOURCE_CLUSTER_VERSION_CHANGED
- CLUSCTL_RESOURCE_FORCE_QUORUM
- CLUSCTL_RESOURCE_INITIALIZE
- CLUSCTL_RESOURCE_STATE_CHANGE_REASON
- CLUSCTL_RESOURCE_PROVIDER_STATE_CHANGE
- CLUSCTL_RESOURCE_LEAVING_GROUP
- CLUSCTL_RESOURCE_JOINING_GROUP
- CLUSCTL_RESOURCE_FSWITNESS_GET_EPOCH_INFO
- CLUSCTL_RESOURCE_FSWITNESS_SET_EPOCH_INFO
- CLUSCTL_RESOURCE_FSWITNESS_RELEASE_LOCK
- CLUSCTL_RESOURCE_NETNAME_CREDS_UPDATED
[in, optional] lpInBuffer
작업에 필요한 정보를 포함하는 입력 버퍼에 대한 포인터이거나 정보가 필요하지 않은 경우 NULL 입니다.
[in] cbInBufferSize
입력 버퍼의 할당된 크기(바이트)입니다.
[out, optional] lpOutBuffer
작업에서 생성된 데이터를 수신할 출력 버퍼에 대한 포인터이거나, 반환되는 데이터가 없는 경우 NULL 입니다.
[in] cbOutBufferSize
출력 버퍼의 할당된 크기(바이트)입니다.
[out, optional] lpBytesReturned
작업으로 인한 데이터의 실제 크기(바이트)를 반환합니다. 이 정보가 필요하지 않은 경우 lpBytesReturned에 대해 NULL을 전달합니다.
반환 값
함수는 다음 값 중 하나를 반환합니다.
반환 코드/값 | 설명 |
---|---|
|
작업이 완료되었습니다. 작업에 출력 버퍼가 필요한 경우 lpBytesRe가 ( 입력 시 NULL 이 아닌 경우) 버퍼에 반환된 데이터의 실제 크기를 가리킵니다. |
|
lpOutBuffer가 가리키는 출력 버퍼가 작업으로 인한 데이터를 저장할 만큼 크지 않았습니다. lpBytesReturned 매개 변수(입력 시 NULL이 아닌 경우)는 출력 버퍼에 필요한 크기를 가리킵니다. 출력 버퍼가 필요한 작업만 ERROR_MORE_DATA 반환합니다. lpOutBuffer 매개 변수가 NULL이고 cbOutBufferSize 매개 변수가 0이면 ERROR_MORE_DATA 아니라 ERROR_SUCCESS 반환될 수 있습니다. |
|
CLUSCTL_RESOURCE_SET_COMMON_PROPERTIES 및CLUSCTL_RESOURCE_SET_PRIVATE_PROPERTIES만 적용됩니다. 속성이 성공적으로 저장되었지만 아직 리소스에 적용되지 않음을 나타냅니다. 리소스가 오프라인으로 전환되고 다시 온라인 상태가 되면 새 속성이 적용됩니다. |
|
hNode 매개 변수로 지정된 노드는 hResource에서 지정한 리소스를 소유하는 노드가 아닙니다. |
작업이 성공하지 못했습니다. 작업에 출력 버퍼가 필요한 경우 lpBytesRe가 설정한 값(입력 시 NULL 이 아닌 경우)은 신뢰할 수 없습니다. |
설명
ClusterResourceControl이 ERROR_MORE_DATA 반환하면 cbOutBufferSize를 lpBytesReturned이 가리키는 바이트 수로 설정하고 함수를 다시 호출합니다.
LPC 및 RPC 핸들을 동일한 함수 호출에 전달하지 마세요. 그렇지 않으면 호출은 RPC 예외를 발생시키고 추가적인 파괴적인 영향을 미칠 수 있습니다. LPC 및 RPC 핸들을 만드는 방법에 대한 자세한 내용은 LPC 및 RPC 핸들 및OpenCluster를 참조하세요.
ClusterResourceControl 함수는 제어 코드 함수 중 하나입니다. 제어 코드 및 제어 코드 함수에 대한 자세한 내용은 제어 코드 사용을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | 지원되는 버전 없음 |
지원되는 최소 서버 | Windows Server 2008 Enterprise, Windows Server 2008 Datacenter |
대상 플랫폼 | Windows |
헤더 | clusapi.h |
라이브러리 | ClusAPI.lib |
DLL | ClusAPI.dll |