Como eu excluo uma pasta que está em uso?

117

Às vezes, quando estou trabalhando no Windows, recebo essa solicitação quando tento excluir um diretório:

FolderInUseTheactioncan'tbecompletedbecausethefolderisopeninanotherprogramClosethefolderandtryagain.

Noentanto,apastanãoestá"em uso", e eu não a tenho aberta. Então, como eu posso deletar isso com pouca reinicialização?

    
por Factor Mystic 15.07.2009 / 19:15

18 respostas

73

Esta resposta é antiga, mas parece continuar a receber tráfego. Conforme observado abaixo, há uma ferramenta incorporada no Windows agora:

Iniciar → Todos os Programas → Acessórios → Ferramentas do Sistema → Monitor de Recursos (ou Executar o resmon.exe)

Você pode obter mais informações nas respostas abaixo desta. O restante desta resposta não é mais tão relevante.

O

Process Explorer da Sysinternals permitirá que você pesquise pelas alças e DLLs. Procure o diretório e descubra qual processo está "usando" a pasta.

De lá, você pode encerrar esse processo ou apenas fechar esse identificador de arquivo específico. Certifique-se sobre o que você está fazendo ao trabalhar com o identificador de arquivo diretamente e verifique se ele não está sendo usado por algum processo importante.

    
por 15.07.2009 / 19:19
159

Há uma GUI nativa para o Windows:

Iniciar > Todos os programas > Acessórios > Ferramentas do sistema > > Monitor de recursos (ou Executar resmon.exe )

Você pode pesquisar as "alças associadas" usando a caixa de pesquisa (circulada em vermelho) e clicar com o botão direito do mouse no processo que deseja encerrar.

Como exemplo, na imagem abaixo, não consegui excluir meu diretório do Eclipse. A pesquisa pelas alças associadas ao Eclipse mostrou que o adb.exe tinha um identificador para o diretório. Depois de terminar o processo adb, eu poderia excluir o diretório do Eclipse.

    
por 27.06.2014 / 22:36
7

Unlocker e WhoLockMe não funcionam no Windows de 64 bits. Eu uso o LockHunter .

    
por 10.12.2009 / 22:49
7

Ao usar ferramentas que forçam o fechamento de identificadores de arquivos (como o Unlocker mencionado anteriormente), lembre-se de que isso pode causar problemas sérios. (Veja este artigo de Raymond Chen .) Certifique-se de saber quais aplicativos estão usando o arquivo e que nenhum deles está fazendo nada importante.

É mais seguro tentar desligar os aplicativos primeiro em vez de apenas forçar o identificador a fechar.

    
por 15.07.2009 / 19:23
6

Este script REG lhe dará um item de menu de contexto "View Handles" com o botão direito do mouse que invocará os Sysinternals manipule o utilitário para ver todas as alças abertas no arquivo ou na pasta em que você clicou com o botão direito.

Coloque o handle.exe da Sysinternals em um local acessível a partir do seu caminho.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\AllFilesystemObjects\shell\Handle]
@="View &Handles"

[HKEY_CLASSES_ROOT\AllFilesystemObjects\shell\Handle\command]
@="cmd.exe /k handle -a -u \"%1\""
    
por 28.11.2012 / 17:28
5

Eu tive que acontecer. Às vezes, posso resolver o problema excluindo o conteúdo primeiro e depois a pasta (vazia).

    
por 15.07.2009 / 19:17
3

A abordagem mais rápida e simples é usar o Handle , conforme mencionado pelo slolife, em vez de usando o Process Explorer. Ambos são de Mark Russinovich @ Microsoft.

Não se surpreenda ao descobrir que o explorer.exe é o culpado, como eu fiz hoje. Aparentemente, há uma forma oficial para reiniciar o explorer.exe, mas parece que estar ficando longe de matá-lo e iniciá-lo novamente no Gerenciador de Tarefas.

    
por 10.12.2009 / 21:37
2

Quando eu estava no XP, usei WhoLockMe para descobrir quais programas tinham arquivos abertos e bloqueados. A versão mais recente que encontrei não menciona o Vista, mas valeria a pena.

Às vezes, você pode excluí-lo manualmente de dentro para fora. Basta percorrer todo o caminho na hierarquia, excluir todos os arquivos, subir em um diretório e repetir. Não sei por que o Windows não pode fazer isso sozinho, mas às vezes funciona para mim.

    
por 15.07.2009 / 19:19
2

Se por "não em uso", você quer dizer que não há identificadores abertos para ele, então certifique-se de que o serviço Application Experience não está desativado . Em caso afirmativo, defina como manual:

Run dialog (or command prompt):

  sc config AeLookupSvc start= demand
    
por 24.02.2012 / 07:41
2

Para excluir uma pasta / programa que diz que você não pode excluí-la porque está em outro lugar.

  • Clique no botão Iniciar
  • Digite Taskmgr
  • Na nova janela aberta, na guia do processo, procure a pasta / programa que você está tentando excluir.
  • Clique com o botão direito e finalizar tarefa
  • Volte para o local da pasta / programa e você poderá excluí-lo agora
por 09.12.2015 / 06:21
2

Eu uso Handle da SysInternals (agora Microsoft). Você pode digitar parte do nome da pasta para ver qual processo tem um identificador nessa pasta e depois matar o identificador.

handle64.exe -nobanner "<path>"

Por exemplo:

Como outros já mencionaram, matar o identificador pode causar sérios problemas.

    
por 15.07.2009 / 19:33
0

Tente Ctrl + Deslocar + Esc > "programas", clique com o botão direito do mouse no que você deseja desativar e escolha desativar. Em seguida, exclua-o novamente!

(Meu SO está em sueco, então as traduções podem não ser exatamente iguais! mas você entendeu!)

    
por 14.04.2013 / 01:48
0

Eu tive o mesmo problema com um flash de memória (16 GB - provavelmente irrelevante) e ele não me deixaria excluir uma pasta. Eu tentei todos os -freaking- solução encontrada na internet (escondendo miniaturas, excluindo a pasta do prompt do cmd com o explorer.exe desligado, tudo ..) e nada funcionou. O que fez funcionar? Bem, isso:

  1. Selecione todos os arquivos dentro da pasta
  2. Clique com o botão direito e selecione "Recortar"
  3. Volte para a pasta raiz
  4. cole-os
  5. Exclua-os

Isso funcionou muito bem para mim. Espero ter ajudado. : -)

    
por 08.12.2013 / 14:51
0

Tinha um arquivo docs.zip em uso pelo WinSCP.

  1. Eu criei um novo arquivo usando o mesmo nome docs.zip
  2. Colocado sobre docs.zip existente e o arquivo antigo foi substituído pelo novo arquivo com o mesmo nome.
  3. Então eu apaguei o arquivo recém copiado docs.zip todos juntos.

Boa sorte

    
por 23.05.2016 / 10:53
0

Portanto, já existem algumas boas respostas, mas vou contribuir com algo novo, que é o que usei para resolver esse mesmo problema hoje cedo.

Eu usei o Python. Eu sei, eu sei, não é nativo do Windows, mas é um utilitário muito comum para administradores de sistema, desenvolvedores e superusuários, e você pode derrubar isso com um simples oneliner:

from shutil import rmtree; rmtree('C:\path\to\folder')

... bingo bango.

    
por 20.07.2017 / 03:57
-1

Muitas vezes, o identificador bloqueado é o Internet Explorer, eu fecho no gerenciador de tarefas e, em seguida, excluo o arquivo ou pasta ou fecho o explorador ... geralmente uma pasta tem um arquivo txt aberto e esse será o identificador que não vai deixar vc deletar pastas / arquivos ... basta fechar o arquivo txt e então vc deve ficar bem, vc pode agora apagar sua pasta.

    
por 25.08.2013 / 15:46
-3

vá até a pasta até o arquivo ou arquivos que estão sendo executados. quando você tenta excluir este arquivo, ele lhe dará o processo que está sendo executado. escreva isso, então vá para o gerenciador de tarefas e finalize esse processo. Depois disso, você pode deletar a pasta.

    
por 29.07.2013 / 22:42
-3
  1. Encontre o arquivo que você deseja excluir.

  2. Renomeie o nome para o que quiser.

  3. Exclua.

por 02.04.2016 / 05:29