Condividi tramite


FSCTL_UNLOCK_VOLUME IOCTL (winioctl.h)

Sblocca un volume.

Per eseguire questa operazione, chiamare la funzione DeviceIoControl con i parametri seguenti.

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 è impostato su STATUS_SUCCESS se la richiesta ha esito positivo.

In caso contrario, stato della condizione di errore appropriata come codice NTSTATUS.

Per altre informazioni, vedere valori NTSTATUS.

Osservazioni

Per bloccare un volume, usare il codice di controllo FSCTL_LOCK_VOLUME.

L'handle hDevice passato a DeviceIoControl deve essere un handle per un volume, aperto per l'accesso diretto. Per recuperare questo handle, chiamare CreateFile con il parametro lpFileName impostato su una stringa del formato seguente:

\\.\X:

dove X è una lettera di partizione del disco rigido, un'unità disco floppy o un'unità CD-ROM. L'applicazione deve inoltre specificare i flag FILE_SHARE_READ e FILE_SHARE_WRITE nel parametro dwShareMode di CreateFile.

IIn Windows 8 e Windows Server 2012, questo codice è supportato dalle tecnologie seguenti.

Tecnologia Sostenuto
Protocollo SMB (Server Message Block) 3.0 No
SMB 3.0 Transparent Failover (TFO) No
SMB 3.0 con condivisioni file con scalabilità orizzontale (SO) No
Cluster Shared Volume File System (CsvFS) Vedere il commento
 

La notifica PNP viene emessa solo nel nodo in cui è stato emesso il valore DITPTL.

Dopo aver acquisito un blocco su un volume CSV, è necessario chiudere l'handle usato per bloccare il volume prima di aprire un handle per il volume. Lo sblocco del volume tramite FSCTL_UNLOCK_VOLUME non è sufficiente.

Fabbisogno

Requisito Valore
client minimo supportato Windows XP [solo app desktop]
server minimo supportato Windows Server 2003 [solo app desktop]
intestazione winioctl.h (include Windows.h)

Vedere anche

CreateFile

DeviceIoControl

FSCTL_LOCK_VOLUME

codici di controllo di gestione dei volumi