2010-03-09 14:05:19 +0000 2010-03-09 14:05:19 +0000
768
768

Descobrir que processo está a bloquear um ficheiro ou pasta no Windows

Como posso descobrir que processo está a bloquear um ficheiro ou pasta no Windows?

Por exemplo, ao tentar apagar uma pasta, o Windows reporta o seguinte:

A acção não pode ser completada porque a pasta está aberta noutro programa

Acontece o mesmo com um ficheiro, mas como posso descobrir que programa ou aplicação o está a utilizar actualmente e impedir-me de apagar o ficheiro ou pasta?

Respostas (10)

776
776
776
2013-09-10 11:43:07 +0000

Pode utilizar o Monitor de recursos* para isto que vem **com Windows 7, 8, e 10.

  1. Abrir Monitor de recursos* , que pode ser encontrado
  2. Procurando por Monitor de recursos* ou resmon.exe no menu Iniciar, ou
  3. Como botão no separador Performance* no seu Task Manager
  4. Vá para o separador CPU*
  5. Utilize o campo search* na secção Associated Handles*
  6. Ver seta azul no ecrã abaixo

Quando encontrar o cabo, pode identificar o processo olhando para a coluna Imagem e/ou PID.

Pode então tentar fechar a aplicação como normalmente faria, ou, se isso não for possível, basta clicar com o botão direito do rato no cabo e matar o processo directamente a partir daí. Fácil fácil!

396
396
396
2010-03-09 14:22:41 +0000

Um par de opções: Microsoft/SysInternals Process Explorer - Ir para Find > Find Handle ou DLL. Na caixa de texto “Handle or DLL substring:”, digite o caminho para o arquivo (por exemplo, “C:\path\to\file.txt”) e clique em “Search”. Todos os processos que têm um handle aberto para esse ficheiro devem ser listados. WhoLockMe - Extensão Explorer que adiciona uma opção de menu com o botão direito do rato

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

203
203
203
2012-03-12 03:35:16 +0000

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

Desde a sua introdução:

Já se perguntou que programa tem um determinado ficheiro ou directório aberto? Agora pode descobrir.

Para descobrir que processo está a utilizar um ficheiro específico siga estes passos:

  1. Vá a Find , Find Handle ou DLL.. ou simplesmente pressione Ctrl+F.

  2. Introduza o nome do ficheiro e prima Search.

  3. O Process Explorer irá listar todos os processos que têm um cabo para o ficheiro aberto. Clique numa entrada para focar o processo na janela principal.

  4. Opcionalmente, pode até fechar o punho manualmente através do painel inferior (Ctrl+L):

76
76
76
2017-04-26 02:59:07 +0000

Método 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 habilitados, executando openfiles /local on e reiniciando.

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

34
34
34
2012-03-13 22:06:52 +0000

LockHunter pode desbloquear quaisquer manipuladores que possam ter bloqueado os seus ficheiros ou pastas. Ao contrário de freewares similares, suporta tanto Windows 32 e 64 bits.

É uma ferramenta gratuita para apagar ficheiros bloqueados por algo que não conhece. O LockHunter é útil para lutar contra malware, e outros programas que estão a bloquear ficheiros sem motivo. Ao contrário de outras ferramentas semelhantes, elimina ficheiros para o caixote da reciclagem para que os possa restaurar se forem eliminados por engano.

  • Mostra processos de bloqueio de um ficheiro ou pasta
  • Permite desbloquear, apagar, copiar ou renomear um ficheiro bloqueado
  • Permite matar processos de bloqueio
  • Permite remover processos de bloqueio do disco rígido
  • Integra no menu do Explorador
  • Apaga ficheiros para a reciclagem, para que os possa restaurar se for apagado por engano
  • Suporta Windows tanto de 32 como de 64 bits
11
11
11
2012-03-12 03:37:04 +0000

O EMCO UnlockIT pode identificar o processo que bloqueou o ficheiro, bem como desbloqueá-lo para que possa apagá-lo/editá-lo/motivá-lo. O programa é completamente gratuito, embora a versão mais recente seja um pouco mais lenta e inchada do que a original (que tinha uma GUI simples e sem pele, mas carregada praticamente instantaneamente e sem uma irritante tela de splash). Além disso, a versão original usada para aparecer automaticamente sempre que o erro que mencionou é accionado, permitindo-lhe desbloquear instantaneamente o ficheiro e executar a operação que estava a tentar.

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

4
4
4
2013-02-01 06:42:25 +0000

Se não conhece o programa que está a utilizar, pode ir ao Meu Computador; clique com o botão direito do rato; seleccione Gerir. Em System Tools > Shared folders > Open Files, você deve ser capaz de ver o usuário que bloqueou o arquivo. Pode fechar o ficheiro a partir daqui e depois pode executar a tarefa de renomear ou apagar o ficheiro. Espero que isto ajude

4
4
4
2019-09-22 12:39:35 +0000

Muitos dos programas aqui estão desactualizados. Finalmente acabei por utilizar o OpenedFilesView do nirsoft que funcionou muito bem.

Embora a melhor parte seja a integração do menu explorer, que é fácil de activar. Conforme o site

Explorer Context Menu

A partir da versão 1.10, pode iniciar o OpenedFilesView directamente a partir do Explorador do Windows, e visualizar apenas as pegas do ficheiro ou pasta que pretende inspeccionar. Para activar esta funcionalidade, verifique o ‘Enable Explorer Context Menu’ no menu Options (Opções). Depois de activar esta funcionalidade, pode clicar com o botão direito do rato em qualquer ficheiro ou pasta no Explorador do Windows e escolher o item ‘OpenedFilesView’ a partir do menu. Se executar a opção ‘OpenedFilesView’ para uma pasta, esta irá mostrar todos os ficheiros abertos dentro dessa pasta. Se executar a opção OpenedFilesView para um ficheiro, irá mostrar todas as pegas abertas para esse ficheiro.

Esta ferramenta ainda funciona de forma fiável em 2019

3
3
3
2012-10-13 09:43:30 +0000

Aqui estava a minha descoberta & solução.

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

Até tentei usar o UNLOCKER que se revelou inútil.

O meu problema foi o do Memeo Autosync Backup

Aparentemente, este processo de cópia de segurança deixa um “arquivo tipo fantasma” suficiente. Este “ficheiro tipo fantasma”, aparecia sempre que eu ALT-TAB do meu computador (Windows Professional XP), ou seja, via DOIS programas MS Excel a correr, quando só tinha UM visível, no meu TASK BAR.

Encontrei esta solução quando pensei que poderia ter sido a Protecção SYMANTEC Endpoint (Anti-Virus); e desactivei o programa. No entanto, continuei a receber a mensagem de erro:

cannot delete (ficheiro LARGE.xls): Está a ser utilizado por outra pessoa ou programa. Feche quaisquer programas que possam estar a utilizar este ficheiro e tente novamente.

Posteriormente, continuei a ver o aviso do Memeo de “sincronizar” e SAIR do programa.

Posteriormente, SEM ERRO.

Para si, pode ser QUALQUER uma destas salvas de fundo.

2
2
2
2012-09-26 16:56:37 +0000

Possibilidade adicional, apenas para poupar às pessoas o tempo que acabei de gastar:

Nas versões mais antigas do Windows, pode obter “Access Denied - pode não ter direitos, ou o ficheiro pode estar em uso”. Se verificar através do Process Explorer que os ficheiros não são, de facto, abertos por ninguém, as probabilidades são de haver um problema de segurança. Utilizando uma conta de administrador, seleccione os ficheiros no Explorer, clique com o botão direito do rato e seleccione Propriedades, Segurança, Avançado, Proprietário. As probabilidades são que os ficheiros sejam propriedade de uma conta que já não existe ou que já não pode ser verificada a sua existência (devido à alteração das definições de confiança do Active Directory).

Altere a propriedade para Administradores e está pronto a partir daí.