IOCTL_VOLUME_IS_CLUSTERED IOCTL (winioctl.h)
指定したボリュームがクラスター化されているかどうかを判断します。
この操作を実行するには、次のパラメーターを使用して DeviceIoControl 関数を呼び出します。
BOOL DeviceIoControl(
(HANDLE) hDevice, // handle to device
IOCTL_VOLUME_IS_CLUSTERED, // dwIoControlCode
NULL, // lpInBuffer
0, // nInBufferSize
NULL, // lpOutBuffer
0, // nOutBufferSize
(LPDWORD) lpBytesReturned, // number of bytes returned
(LPOVERLAPPED) lpOverlapped // OVERLAPPED structure
);
注釈
IOCTL_VOLUME_IS_CLUSTERED制御コードは、クラスター サービスが実行されている場合にのみ有効です。
ERROR_GEN_FAILURE エラーは、ボリュームが存在するディスクを現在所有しているコンピューターがサーバー クラスター ノードですが、ディスクが現在オフライン状態の物理ディスク リソースであるか、ディスクが物理ディスク リソースではないことを示します。 これらの状況のうちどれが存在するかを判断するには、次の手順を使用します。
- ClusterEnum 関数を呼び出して、クラスター内のすべての物理ディスク リソースを列挙します。
- clusterResourceControl 関数をCLUSCTL_RESOURCE_STORAGE_GET_DISK_INFOで呼び出して、列挙された物理ディスク リソースごとにボリュームを検索します。 クラスター内の物理ディスク リソース間でボリュームが見つからない場合、ボリュームは物理ディスク リソースに存在しません。
ERROR_INVALID_FUNCTION エラーは、ボリュームが存在するディスクを現在所有しているコンピューターがサーバー クラスター ノードではないか、ディスクが物理ディスク リソースではないことを示します。 コンピューターがサーバー クラスター ノードかどうかを確認するには、 GetNodeClusterState 関数を呼び出します。
Windows 8とWindows Server 2012では、このコードは次のテクノロジでサポートされています。
テクノロジ | サポートされています |
---|---|
サーバー メッセージ ブロック (SMB) 3.0 プロトコル | いいえ |
SMB 3.0 Transparent Failover (TFO) | いいえ |
スケールアウト ファイル共有 (SO) を使う SMB 3.0 | いいえ |
クラスターの共有ボリューム ファイル システム (CsvFS) | はい |
必要条件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
Header | winioctl.h (Windows.h を含む) |