No Windows, se eu quiser verificar qual processo está usando um arquivo, posso usar programas como o Process Hacker e sua função de pesquisa para digitar o nome desse arquivo.
A partir das informações fornecidas, sei que um processo está fazendo algo com esse arquivo, mas não sei se ele bloqueou ou se está apenas lendo ou escrevendo nele. Como posso obter essa informação?
Mais importante, e o contrário? Quero encontrar o nome dos arquivos que estão sendo bloqueados, gravados ou lidos por um processo.
Como eu posso fazer isso?
Na captura de tela a seguir, você pode ver como é fácil encontrar o nome do processo a partir do nome do arquivo, mas como posso encontrar o nome dos arquivos usados por um determinado processo?
Neste exemplo, estou usando o Acrobat para abrir um arquivo PDF chamado eemeir.pdf
, mas isso não é listado na árvore de processos do Acrobat.
Com o Process Explorer é o mesmo:
PD: @ user173724 sugeriu como fazê-lo usando o Process Explorer, e também descobri como fazê-lo com o PH:
Preciso selecionar a opção "Exibir -> Janela" e uma lista muito grande de informações aparece.
Mas é muito feio e não é confortável encontrar algo lá (o mesmo vale para o Process Explorer), ele não possui uma função de pesquisa nesta seção.
Também clique com o botão direito do mouse em "Processo -> Propriedades -> Alças".
Respostas:
Existe um utilitário da Microsoft chamado process explorer que é como o gerenciador de tarefas com esteróides. Clicar em um programa listado mostra todos os arquivos que estão sendo acessados, e sua função de pesquisa permite que você encontre qual programa está acessando um arquivo.
fonte
Na questão 2:
clique duas vezes no processo e vá para a guia "Alças" (isso não requer nenhum plug-in do PH). Você está interessado em linhas com
Type
= "Arquivo".Na questão 1:
Assim como na resposta acima, você precisa localizar o processo, clicar duas vezes nele, navegar até a guia "Alças" e localizar o arquivo lá.
Então, se você clicar duas vezes no identificador do arquivo, verá
Granted Access
. Por exemplo, se você tentar isso no Excel, "Acesso concedido" é "Leitura" para arquivos TTF (essas são fontes, o Excel não as modifica obviamente), mas "(Gravação, leitura, exclusão)" para arquivos XSLX ou outros dados do usuário arquivos.fonte
Como alternativa, você pode usar o comando sysinternals handle ( https://technet.microsoft.com/en-us/sysinternals/handle ), que faz parte do mesmo conjunto.
mostra todos os processos usando janelas ou um dos arquivos abaixo desse diretório.
Na versão atual 4.1, você não precisa ser um usuário administrador se estiver interessado apenas em seus próprios processos. Você ainda precisa de elevação para ver todos os processos usando um arquivo / diretório.
fonte