Você não pode excluir um arquivo ou uma pasta em um volume do sistema de arquivos NTFS
Causa 5: O nome do arquivo inclui um nome reservado no espaço de nomes do Win32 Se o nome do arquivo inclui um nome reservado (por exemplo, "lpt1") no espaço de nome do Win32, talvez não seja capaz de excluir o arquivo. Para resolver esse problema, use um programa não-Win32 para renomear o arquivo. Você pode usar uma ferramenta POSIX ou qualquer outra ferramenta que use a sintaxe interna apropriada para usar o arquivo.
Além disso, você poderá usar alguns comandos internos para ignorar as verificações de nomes reservados do Win32, se usar uma sintaxe específica para especificar o caminho do arquivo. Por exemplo, se você usar o comando Del no Windows XP, poderá excluir um arquivo chamado "lpt1" se especificar o caminho completo do arquivo usando a seguinte sintaxe especial:
del \?\c:\path_to_file\lpt1
Para obter mais informações sobre como excluir arquivos com nomes reservados no Windows NT e Windows 2000, clique no número abaixo para ler o artigo na Base de Dados de Conhecimento da Microsoft:
120716 Como remover arquivos com nomes reservados no Windows
Para obter mais informações sobre como excluir arquivos com nomes reservados no Windows XP, clique no número abaixo para ler o artigo na Base de Dados de Conhecimento da Microsoft:
315226 Como remover arquivos com nomes reservados no Windows XP
Se você abrir um identificador para um arquivo usando o típico mecanismo CreateFile do Win32, determinados nomes de arquivos serão reservados para dispositivos DOS de estilo antigo. Para compatibilidade com versões anteriores, esses nomes de arquivo não são permitidos e eles não podem ser criados usando chamadas de arquivo Win32 típicas. No entanto, esse problema não é uma limitação do NTFS.
Você pode usar um programa Win32 para ignorar as verificações de nome típicas executadas quando um arquivo é criado (ou excluído) usando a mesma técnica usada para atravessar pastas mais profundas que MAX_PATH. Além disso, algumas ferramentas POSIX não estão sujeitas a essas verificações de nome.
Causa 6: O nome do arquivo inclui um nome inválido no espaço de nomes do Win32 Talvez não seja possível excluir um arquivo se o nome do arquivo incluir um nome inválido (por exemplo, o nome do arquivo tem um espaço à direita ou um ponto final ou o nome do arquivo é composto apenas por um espaço). Para resolver esse problema, use uma ferramenta que usa a sintaxe interna apropriada para excluir o arquivo. Você pode usar a sintaxe "\? \" Com algumas ferramentas para operar nesses arquivos, por exemplo:
del "\?\c:\path_to_file_that contains a trailing space.txt "
A causa desse problema é semelhante à Causa 4. No entanto, se você usar a sintaxe típica do Win32 para abrir um arquivo que tenha espaços à direita ou períodos finais em seu nome, os espaços ou pontos finais serão removidos antes que o arquivo real seja aberto . Portanto, se você tiver dois arquivos na mesma pasta denominada "AFile.txt" e "AFile.txt" (observe o espaço após o nome do arquivo), se você tentar abrir o segundo arquivo usando chamadas Win32 padrão, abra o primeiro arquivo em vez disso. Da mesma forma, se você tiver um arquivo cujo nome é apenas "" (um caractere de espaço) e tentar abri-lo usando chamadas padrão do Win32, abra a pasta pai do arquivo. Nessa situação, se você tentar alterar as configurações de segurança nesses arquivos, poderá não conseguir fazer isso ou poderá alterar inesperadamente as configurações em arquivos diferentes. Se esse comportamento ocorrer, você pode pensar que você tem permissão para um arquivo que realmente tenha uma ACL restritiva.