FSCTL_UNLOCK_VOLUME IOCTL (winioctl.h)
ボリュームのロックを解除します。
この操作を実行するには、次のパラメーターを使用して DeviceIoControl 関数を呼び出します。
BOOL DeviceIoControl(
(HANDLE) hDevice, // handle to a volume
FSCTL_UNLOCK_VOLUME, // dwIoControlCode
NULL, // lpInBuffer
0, // nInBufferSize
NULL, // lpOutBuffer
0, // nOutBufferSize
(LPDWORD) lpBytesReturned, // number of bytes returned
(LPOVERLAPPED) lpOverlapped // OVERLAPPED structure
);
Irp->IoStatus.Status は、要求が成功した場合にSTATUS_SUCCESSに設定されます。
それ以外の場合は、NTSTATUS コードとして適切なエラー条件の状態になります。
詳細については、「NTSTATUS 値
備考
ボリュームをロックするには、FSCTL_LOCK_VOLUME コントロール コードを使用します。
DeviceIoControl に渡される hDevice ハンドルは、直接アクセス用に開かれたボリュームへのハンドルである必要があります。 このハンドルを取得するには、lpFileName パラメーター 次の形式の文字列を設定して CreateFile を呼び出します。
\\.\X:
ここで、X は、ハード ドライブのパーティション文字、フロッピー ディスク ドライブ、または CD-ROM ドライブです。 アプリケーションでは、CreateFileの
IIn Windows 8 および Windows Server 2012 では、このコードは次のテクノロジでサポートされています。
テクノロジー | サポート |
---|---|
サーバー メッセージ ブロック (SMB) 3.0 プロトコル | いいえ |
SMB 3.0 透過的フェールオーバー (TFO) | いいえ |
SMB 3.0 とスケールアウト ファイル共有 (SO) | いいえ |
クラスター共有ボリューム ファイル システム (CsvFS) | コメントを表示する |
PNP 通知は、FSCTL が発行されたノードでのみ発行されます。
CSV ボリュームのロックを取得した後、ボリュームのハンドルを開く前に、そのボリュームのロックに使用するハンドルを閉じる必要があります。 FSCTL_UNLOCK_VOLUME を使用してボリュームのロックを解除するだけでは不十分です。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows XP [デスクトップ アプリのみ] |
サポートされる最小サーバー | Windows Server 2003 [デスクトップ アプリのみ] |
ヘッダー | winioctl.h (Windows.h を含む) |
関連項目
CreateFile の
DeviceIoControl の
ボリューム管理コントロール コード を