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 エラーは、ボリュームが存在するディスクを現在所有しているコンピューターがサーバー クラスター ノードであるが、ディスクが現在オフライン状態の物理ディスク リソースであるか、ディスクが物理ディスク リソースではないことを示します。 これらの状況のうちどれが存在するかを判断するには、次の手順を使用します。

  1. ClusterEnum 関数を呼び出して、クラスター内のすべての物理ディスク リソースを列挙します。
  2. CLUSCTL_RESOURCE_STORAGE_GET_DISK_INFOを使用して ClusterResourceControl 関数を呼び出して、列挙された各物理ディスク リソースでボリュームを検索します。 クラスター内の物理ディスク リソース間でボリュームが見つからない場合、ボリュームは物理ディスク リソースに存在しません。

ERROR_INVALID_FUNCTION エラーは、ボリュームが存在するディスクを現在所有しているコンピューターがサーバー クラスター ノードではないか、ディスクが物理ディスク リソースではないことを示します。 コンピューターがサーバー クラスター ノードであるかどうかを確認するには、 GetNodeClusterState 関数を呼び出します。

Windows 8とWindows Server 2012では、このコードは次のテクノロジでサポートされています。

テクノロジ サポートされています
サーバー メッセージ ブロック (SMB) 3.0 プロトコル いいえ
SMB 3.0 Transparent Failover (TFO) いいえ
スケールアウト ファイル共有を含む SMB 3.0 (SO) いいえ
クラスター共有ボリューム ファイル システム (CsvFS) はい

要件

   
サポートされている最小のクライアント Windows XP [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2003 [デスクトップ アプリのみ]
ヘッダー winioctl.h (Windows.h を含む)

こちらもご覧ください