Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Desmonta um volume independentemente se o volume está ou não em uso no momento. Para obter mais informações, consulte a seção Comentários.
Para executar essa operação, chame a função DeviceIoControl com os parâmetros a seguir.
| C++ |
|---|
BOOL DeviceIoControl( (HANDLE) hDevice, // handle to a volume (DWORD) FSCTL_DISMOUNT_VOLUME, // dwIoControlCodeNULL, // lpInBuffer0, // nInBufferSizeNULL, // lpOutBuffer0, // nOutBufferSize(LPDWORD) lpBytesReturned, // number of bytes returned (LPOVERLAPPED) lpOverlapped // OVERLAPPED structure ); |
Observações
O código de controle FSCTL_DISMOUNT_VOLUME tentará desmontar um volume, independentemente de outros processos estarem usando ou não o volume, o que pode ter resultados imprevisíveis para esses processos se eles não mantiverem um bloqueio no volume. Para obter informações sobre como bloquear um volume, consulte FSCTL_LOCK_VOLUME.
O identificador de de
\\.\X:
em que X é uma letra de partição de disco rígido, uma unidade de disco disquete ou uma unidade de CD-ROM. O aplicativo também deve especificar os sinalizadores
Se o volume especificado for um volume do sistema ou contiver um arquivo de página, a operação falhará.
Se o volume especificado for bloqueado por outro processo, a operação falhará. Para impedir que outro processo bloqueie o volume, bloqueie-o assim que você abri-lo.
Um volume desmontado tem as seguintes propriedades:
- Não há arquivos abertos.
- O sistema operacional detecta o volume.
Desmontar um volume é útil quando um volume precisa desaparecer por um tempo. Por exemplo, um aplicativo que altera um sistema de arquivos de volume do sistema de arquivos FAT para o sistema de arquivos NTFS pode usar o procedimento a seguir.
Para alterar um sistema de arquivos de volume
- Abra um volume.
- Bloqueie o volume.
- Formate o volume.
- Desmonte o volume.
- Desbloqueie o volume.
- Feche o identificador de volume.
No Windows 8 e no Windows Server 2012, esse código é compatível com as tecnologias a seguir.
| Tecnologia | Suportado |
|---|---|
| Protocolo SMB (Bloco de Mensagens do Servidor) 3.0 | Não |
| TFO (Failover Transparente) do SMB 3.0 | Não |
| SMB 3.0 com Compartilhamentos de Arquivos de Expansão (SO) | Não |
| Sistema de Arquivos de Volume Compartilhado de Cluster (CsvFS) | Consulte o comentário |
Em CsvFs, o nó em que a desmontagem é emitida verá uma sequência de desmontagem normal. Em todos os outros nós, o FS invalidará todos os arquivos abertos.
Requisitos
| Requisito | Valor |
|---|---|
| de cliente com suporte mínimo | Windows XP [somente aplicativos da área de trabalho] |
| servidor com suporte mínimo | Windows Server 2003 [somente aplicativos da área de trabalho] |
| cabeçalho | winioctl.h (inclua Windows.h) |
Consulte também
getLogicalDrives