次の方法で共有


IOCTL_VOLUME_OFFLINE IOCTL (winioctl.h)

ボリュームをオフラインにします。

Windows Server 2003 および Windows XP: このコントロール コードは、ダイナミック ディスクではサポートされていません。

この操作を実行するには、次のパラメーターを使用して DeviceIoControl 関数を呼び出します。

BOOL DeviceIoControl(
  (HANDLE) hDevice,             // handle to device
  IOCTL_VOLUME_OFFLINE,         // dwIoControlCode
  NULL,                         // lpInBuffer
  0,                            // nInBufferSize
  NULL,                         // lpOutBuffer 
  0,                            // nOutBufferSize
  (LPDWORD) lpBytesReturned,    // number of bytes returned
  (LPOVERLAPPED) lpOverlapped   // OVERLAPPED structure
);

注釈

アプリケーションは、IOCTL_VOLUME_OFFLINEを使用する前に、 FSCTL_DISMOUNT_VOLUME 経由でファイル システムのマウントを正常に解除 する必要があります。

オンラインのボリュームがマウント解除されると、ボリュームを開く次の呼び出しによって、ボリュームがマウントされます。 マウント解除に使用されたものと同じボリューム ハンドルを使用してボリュームをオフラインにすると、マウント解除されたボリュームが再びマウントされなくなります。

ボリュームがオンラインの場合、ボリュームに送信されるすべての要求が受け入れられます。

オンラインのボリュームがマウント解除されると、ボリュームを開く次の呼び出しによって、ボリュームがマウントされます。 ボリュームをオフラインにすると、マウント解除されたボリュームが再びマウントされなくなります。

ボリュームをオンラインにするには、 IOCTL_VOLUME_ONLINE コントロール コードを使用します。

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 を含む)

こちらもご覧ください