CLUSCTL_CLUSTER_GET_SHARED_VOLUME_ID control code
Verifies that a path is on a cluster shared volume (CSV) and returns the resource identifier of the CSV and the volume offset of the specific volume (partition). Applications use this control code as a parameter to the ClusterControl function
ClusterControl( hCluster, // cluster handle
hHostNode, // optional node handle
CLUSCTL_CLUSTER_GET_SHARED_VOLUME_ID, // this control code
lpInBuffer, // input buffer: Unicode path
cbInBufferSize, // input buffer size (bytes)
lpOutBuffer, // output buffer: Unicode string ResID:PartOffset
cbOutBufferSize, // output buffer size (bytes)
lpcbBytesReturned ); // resulting data size (bytes)
Parameters
The following control code function parameters are specific to this control code. For complete parameter descriptions, see ClusterResourceControl.
-
lpInBuffer [in]
-
Pointer to null-terminated Unicode string containing a path.
-
nInBufferSize [in]
-
Number of bytes in the buffer pointed to by lpInBuffer.
-
lpOutBuffer [out]
-
Pointer to an output buffer to receive the Unicode string containing the resource identifier of the CSV, a colon ':', and the offset (in decimal) of the volume (partition). For example "2936f4ed-f55d-4fa9-bec2-108469342c6a:129761280".
-
cbOutBufferSize [in]
-
The allocated size (in bytes) of the output buffer.
-
lpBytesReturned [out]
-
Returns the actual size (in bytes) of the data resulting from the operation.
Return value
ClusterResourceControl returns one of the following values.
-
ERROR_SUCCESS
-
0
The operation was successful.
-
ERROR_MORE_DATA
-
234 (0xEA)
The output buffer pointed to by lpOutBuffer was not large enough to hold the data resulting from the operation. The lpcbBytesReturned parameter points to the size required for the output buffer.
-
ERROR_CLUSTER_NOT_SHARED_VOLUME
-
5945 (0x1739)
The specified path is not on a CSV.
-
The operation failed.
Remarks
The 32 bits of CLUSCTL_CLUSTER_GET_SHARED_VOLUME_ID (0x07000291) are defined as follows.
Component | Bit location | Value |
---|---|---|
Object code |
24 31 |
CLUS_OBJECT_CLUSTER (0x7) |
Global bit |
23 |
CLUS_NOT_GLOBAL (0x0) |
Modify bit |
22 |
CLUS_NO_MODIFY (0x0) |
User bit |
21 |
CLCTL_CLUSTER_BASE (0x0) |
Type bit |
20 |
External (0x0) |
Operation code |
0 23 |
CLCTL_GET_SHARED_VOLUME_ID (0x291) |
Access code |
0 1 |
CLUS_NO_MODIFY (0x0) |
For more information, see Control Code Architecture.
Requirements
Minimum supported client |
None supported |
Minimum supported server |
Windows Server 2008 R2 Datacenter, Windows Server 2008 R2 Enterprise |
Header |
|