FSCTL_SUSPEND_OVERLAY código de control
El código de control FSCTL_SUSPEND_OVERLAY suspende un origen de respaldo asociado a un volumen, lo que impide el acceso al origen de respaldo y permite modificarlo o quitarlo.
Para realizar esta operación, llame a FltFsControlFile o ZwFsControlFile con los parámetros siguientes.
BOOL
WINAPI
DeviceIoControl( (HANDLE) hDevice, // handle to device
(DWORD) FSCTL_SUSPEND_OVERLAY, // dwIoControlCode
(LPDWORD) lpInBuffer, // input buffer
(DWORD) nInBufferSize, // size of input buffer
(LPDWORD) lpOutBuffer, // output buffer
(DWORD) nOutBufferSize, // size of output buffer
(LPDWORD) lpBytesReturned, // number of bytes returned
(LPOVERLAPPED) lpOverlapped ); // OVERLAPPED structure
Parámetros
Instancia [in]: FltFsControlFile solo. Puntero de instancia opaco para el autor de la llamada. Este parámetro es obligatorio y no puede ser NULL.
FileObject [in]: FltFsControlFile solo. Objeto de puntero de archivo del volumen para el que se actualiza la superposición. Este parámetro es obligatorio y no puede ser NULL.
FileHandle [in]: ZwFsControlFile solo. Identificador del volumen para el que se actualiza la superposición. Este parámetro es obligatorio y no puede ser NULL.
FsControlCode [in]: el código de control de la operación. Use FSCTL_SUSPEND_OVERLAY para esta operación.
InputBuffer [in]: puntero al búfer de entrada, que debe contener una estructura WOF_EXTERNAL_INFO . Cuando sea necesario, los datos específicos del proveedor adicionales se incluyen inmediatamente después de WOF_EXTERNAL_INFO. Si el proveedor es un archivo WIM, se incluye una estructura de WIM_PROVIDER_SUSPEND_OVERLAY_INPUT después de WOF_EXTERNAL_INFO.
InputBufferLength [in]: establézcalo en sizeof(WOF_EXTERNAL_INFO) más el tamaño de cualquier dato de entrada de proveedor adicional.
OutputBuffer [out]: no se usa. Definición en NULL
OutputBufferLength [in]: Establezca en 0.
Bloque de estado
FltFsControlFile o ZwFsControlFile devuelve STATUS_SUCCESS si la operación se realiza correctamente. De lo contrario, la función adecuada podría devolver uno de los siguientes valores NTSTATUS.
Código | Significado |
---|---|
STATUS_ACCESS_DENIED | El solicitante no tiene privilegios administrativos. |
STATUS_BUFFER_TOO_SMALL | La longitud del búfer de entrada al que apunta InputBuffer y especificado por InputBufferLength es demasiado pequeño. |
STATUS_INTERNAL_ERROR | No se puede acceder al volumen solicitado. |
STATUS_INVALID_DEVICE_REQUEST | El servicio de respaldo no está presente o no se ha iniciado. |
Comentarios
Cuando el origen de respaldo que se va a quitar es un archivo de Formato de imagen de Windows (WIM), el búfer de entrada contendrá una estructura de WOF_EXTERNAL_INFO seguida de una estructura de WIM_PROVIDER_SUSPEND_OVERLAY_INPUT . InputBufferLength en este caso será sizeof(WOF_EXTERNAL_INFO) + sizeof(WIM_PROVIDER_REMOVE_OVERLAY_INPUT). El valor dataSourceId de WIM_PROVIDER_SUSPEND_OVERLAY_INPUT debe ser para un archivo WIM agregado previamente en una solicitud de FSCTL_ADD_OVERLAY .
Los proveedores de respaldo adicionales definirán sus propias estructuras de parámetros de entrada específicas.
Requisitos
Tipo de requisito | Requisito |
---|---|
Encabezado | Ntifs.h (incluya Ntifs.h o Fltkernel.h) |