web-dev-qa-db-pt.com

Descubra qual processo está bloqueando um arquivo ou pasta no Windows

Como posso descobrir qual processo está bloqueando um arquivo ou uma pasta no Windows?

Por exemplo, ao tentar excluir uma pasta, o Windows informa isso:

A ação não pode ser concluída porque a pasta está aberta em outro programa

Acontece o mesmo com um arquivo, mas como descobrir qual programa ou aplicativo está usando no momento e impedir que eu exclua o arquivo ou a pasta?

654
leeand00

Método do PowerShell:

IF((Test-Path -Path $FileOrFolderPath) -eq $false) {
    Write-Warning "File or directory does not exist."       
}
Else {
    $LockingProcess = CMD /C "openfiles /query /fo table | find /I ""$FileOrFolderPath"""
    Write-Host $LockingProcess
}

O comando openfiles precisa ter suporte para arquivos locais ativados, executando openfiles /local on e reiniciando.

Mais detalhes Como descobrir qual processo está bloqueando um arquivo ou pasta no Windows

51
frank

Você pode usar o Resource Monitor para este que vem built-in com o Windows 7, 8 e 10.

  1. Abra Monitor de Recursos , que pode ser encontrado
    • Pesquisando por Monitor de Recursos ou resmon.exe no menu Iniciar, ou
    • Como um botão na aba Performance no seu Gerenciador de Tarefas
  2. Vá para a guiaCPU
  3. Use o campo de buscano Associated Handles section
    • Veja a seta azul na captura de tela abaixo

Quando você encontrar o identificador, poderá identificar o processo observando a coluna Imagem e/ou PID.

Você pode então tentar fechar o aplicativo como faria normalmente, ou, se isso não for possível, apenas clique com o botão direito do mouse no identificador e mate o processo diretamente de lá. Mole-mole!

Resource Monitor screenshot

611
Svish

Algumas opções:

Microsoft/SysInternals Process Explorer - Vá para Find> Find Handle ou DLL. Na caixa de texto "Alça ou DLL substring:", digite o caminho para o arquivo (por exemplo, "C:\caminho\para\arquivo.txt") e clique em "Pesquisar". Todos os processos que possuem um identificador aberto para esse arquivo devem ser listados.

Extensão WhoLockMe - Explorer, que adiciona uma opção de menu do botão direito

N.B. WhoLockMe parece não funcionar com o Win 10 (pelo menos eu não consegui registrá-lo com uma das versões de 32 ou 64 bits do regsvr32.exe).

383
Shevek

Dê uma olhada em Process Explorer (procexp.exe).

Desde a sua introdução:

Já se perguntou qual programa tem um determinado arquivo ou diretório aberto? Agora você pode descobrir.

Para descobrir qual processo está usando um arquivo específico, siga estas etapas:

  1. Vá para Encontre , Encontre Handle ou DLL .. ou simplesmente pressione Ctrl+F.

    Enter image description here

  2. Digite o nome do arquivo e pressione Search .

    Enter image description here

  3. O Process Explorer listará todos os processos que possuem um identificador para o arquivo aberto. Clique em uma entrada para focar o processo na janela principal.

    Enter image description here

  4. Opcionalmente, você pode até mesmo fechar a alça manualmente através do painel inferior (Ctrl+L):

    Enter image description here

191
Eroen

LockHunter pode desbloquear qualquer manipulador que possa ter bloqueado seus arquivos ou pastas. Ao contrário de freewares similares, ele suporta Windows de 32 e 64 bits.

É uma ferramenta gratuita para excluir arquivos bloqueados por algo que você não conhece. O LockHunter é útil para combater malware e outros programas que estão bloqueando arquivos sem nenhum motivo. Ao contrário de outras ferramentas similares, ele apaga arquivos na lixeira para que você possa restaurá-los se for excluído por engano.

  • Mostra processos bloqueando um arquivo ou pasta
  • Permite desbloquear, excluir, copiar ou renomear um arquivo bloqueado
  • Permite matar o processo de bloqueio
  • Permite remover processos de bloqueio do disco rígido
  • Integra-se ao menu do Explorer
  • Ele apaga arquivos na lixeira, para que você possa restaurá-los se for excluído por engano
  • Suporta Windows de 32 e 64 bits
25
Mehper C. Palavuzlar

EMCO UnlockIT pode identificar o processo que bloqueou o arquivo, bem como desbloquear o arquivo para que você possa excluir/editar/movê-lo. O programa é totalmente gratuito, embora a versão mais recente seja um pouco mais lenta e mais inchada do que a original (que tinha uma GUI simples, não aparentada, mas carregada praticamente instantaneamente e sem uma tela inicial irritante). Além disso, a versão original costumava aparecer automaticamente sempre que o erro mencionado fosse acionado, permitindo que você desbloqueie instantaneamente o arquivo e execute a operação que estava tentando realizar.

Ainda assim, UnlockIT é um programa incrivelmente útil que fornece uma funcionalidade básica que está criticamente ausente do Windows. Está entre o kit de ferramentas padrão de utilitários que eu instalo em todos os computadores com Windows nos quais trabalho.

10
Lèse majesté

Aqui estava a minha descoberta e solução.

A propósito, nenhuma das respostas acima resolveu meu problema.

Eu até tentei usar o UNLOCKER, que se provou inútil.

Meu problema era o do Memeo Autosync Backup

Aparentemente, esse processo de backup deixa um "arquivo fantasma" suficiente. Este "arquivo fantasma", apareceria sempre que eu ALT-TAB meu computador (Windows Professional XP), ou seja, eu veria dois programas do MS Excel em execução, quando eu só tinha UM visível, no meu TASK BAR.

Eu me deparei com esta solução quando pensei que poderia ter sido a Proteção do Symantec Endpoint (Anti-Virus); e desativou o programa. No entanto, continuei recebendo a mensagem de erro:

não é possível excluir (arquivo LARGE.xls): está sendo usado por outra pessoa ou programa. Feche todos os programas que possam estar usando esse arquivo e tente novamente.

Subseqüentemente, continuei vendo o aviso de "sincronização" do Memeo e SAI do programa.

Posteriormente, sem erro.

Para você, poderia ser qualquer um desses salvamentos de fundo.

2

Se você não conhece o programa que está usando, você pode ir para Meu Computador; clique direito; selecione Gerenciar. Em Ferramentas do sistema> Pastas compartilhadas> Abrir arquivos, você poderá ver o usuário que bloqueou o arquivo. Você pode fechar o arquivo a partir daqui e então você pode executar a tarefa de renomear ou excluir o arquivo. Espero que isto ajude

2
Rajesh

Possibilidade adicional, apenas para salvar as pessoas o tempo que passei:

Em versões mais antigas do Windows, você pode obter "Acesso negado - talvez você não tenha direitos ou o arquivo possa estar em uso". Se você descobrir através do Process Explorer que os arquivos não estão, de fato, abertos por ninguém, é provável que exista um problema com a segurança. Usando uma conta de administrador, selecione os arquivos no Explorer, clique com o botão direito do mouse e selecione Propriedades, Segurança, Avançado, Proprietário. As probabilidades são de que os arquivos são de propriedade de uma conta que não existe mais ou não pode mais ser verificada para existir (por causa da alteração das configurações de confiança do Active Directory).

Altere a propriedade para administradores e você é bom para ir.

1
Stu