Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Le code de contrôle FSCTL_SUSPEND_OVERLAY suspend une source de stockage attachée à un volume, empêchant l’accès à la source de stockage et lui permettant d’être modifié ou supprimé.
Pour effectuer cette opération, appelez FltFsControlFile ou ZwFsControlFile avec les paramètres suivants.
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
Paramètres
Instance [in] : FltFsControlFile uniquement. Pointeur d’instance opaque pour l’appelant. Ce paramètre est obligatoire et ne peut pas être NULL.
FileObject [in] : FltFsControlFile uniquement. Objet pointeur de fichier du volume pour lequel la superposition est mise à jour. Ce paramètre est obligatoire et ne peut pas être NULL.
FileHandle [in] : ZwFsControlFile uniquement. Handle du volume pour lequel la superposition est mise à jour. Ce paramètre est obligatoire et ne peut pas être NULL.
FsControlCode [in] : code de contrôle de l’opération. Utilisez FSCTL_SUSPEND_OVERLAY pour cette opération.
InputBuffer [in] : pointeur vers la mémoire tampon d’entrée, qui doit contenir une structure WOF_EXTERNAL_INFO . Si nécessaire, des données spécifiques au fournisseur supplémentaires sont incluses immédiatement après WOF_EXTERNAL_INFO. Si le fournisseur est un fichier WIM, une structure WIM_PROVIDER_SUSPEND_OVERLAY_INPUT est incluse après WOF_EXTERNAL_INFO.
InputBufferLength [in] : défini sur sizeof(WOF_EXTERNAL_INFO) ainsi que la taille de toutes les données d’entrée de fournisseur supplémentaires.
OutputBuffer [out] : non utilisé. Défini sur NULL.
OutputBufferLength [in] : défini sur 0.
Bloc d’état
FltFsControlFile ou ZwFsControlFile retourne STATUS_SUCCESS si l’opération réussit. Sinon, la fonction appropriée peut retourner l’une des valeurs NTSTATUS suivantes.
| Code | Sens |
|---|---|
| STATUS_ACCÈS_REFUSÉ | Le demandeur n’a pas de privilèges d’administration. |
| STATUS_BUFFER_TOO_SMALL | La longueur de la mémoire tampon d’entrée pointée par InputBuffer et spécifiée par InputBufferLength est trop petite. |
| ERREUR_INTERNE_STATUT | Le volume demandé n’est pas accessible. |
| STATUS_INVALID_DEVICE_REQUEST | Le service de stockage n’est pas présent ou ne démarre pas. |
Remarques
Lorsque la source de stockage à supprimer est un fichier WIM (Windows Imaging Format), la mémoire tampon d’entrée contient une structure WOF_EXTERNAL_INFO suivie d’une structure de WIM_PROVIDER_SUSPEND_OVERLAY_INPUT . InputBufferLength dans ce cas sera sizeof(WOF_EXTERNAL_INFO) + sizeof(WIM_PROVIDER_REMOVE_OVERLAY_INPUT). La valeur DataSourceId dans WIM_PROVIDER_SUSPEND_OVERLAY_INPUT doit être pour un fichier WIM précédemment ajouté dans une requête FSCTL_ADD_OVERLAY .
Des fournisseurs de stockage supplémentaires définissent leurs propres structures de paramètres d’entrée spécifiques.
Spécifications
| Type de condition requise | Besoin |
|---|---|
| En-tête de page | Ntifs.h (include Ntifs.h ou Fltkernel.h) |