Handle v5.0
Por Mark Russinovich
Publicado em: 26 de outubro de 2022
Baixar o Handle (729 KB)
Já se perguntou qual programa tem um arquivo ou diretório específico aberto? Agora você pode descobrir. o Handle é um utilitário que exibe informações sobre identificadores abertos para qualquer processo no sistema. Você pode usá-lo para ver os programas que têm um arquivo aberto ou para ver os tipos de objeto e nomes de todos os identificadores de um programa.
Você também pode obter uma versão baseada em GUI deste programa, Process Explorer, aqui no Sysinternals.
Você executa o Handle digitando "identificador". Você deve ter privilégio administrativo para executar o Handle.
O Handle é direcionado à pesquisa de referências de arquivo aberto, portanto, se você não especificar parâmetros de linha de comando, ele listará os valores de todos os identificadores no sistema que se referem a arquivos abertos e aos nomes dos arquivos. Ele também usa vários parâmetros que modificam esse comportamento.
uso: handle [[-a [-l]] [-v|-vt] [-u] | [-c <handle> [-y]] | [-s]] [-p <process>|<pid>] [name]
Parâmetro | Descrição |
---|---|
-a | Despejo de informações sobre todos os tipos de identificadores, não apenas aqueles que se referem a arquivos. Outros tipos incluem portas, chaves do Registro, primitivos de sincronização, threads e processos. |
-l | Mostre apenas os identificadores de seção apoiados em arquivo de página. |
-c | Fecha o identificador especificado (interpretado como um número hexadecimal). Você deve especificar o processo por seu PID. AVISO: fechar identificadores pode causar instabilidade do aplicativo ou do sistema. |
-g | Imprimir acesso concedido. |
-y | Não solicite confirmação de identificador próximo. |
-s | Contagem de impressão de cada tipo de identificador aberto. |
-u | Mostrar o nome de usuário proprietário ao pesquisar identificadores. |
-v | Saída CSV com delimitador de vírgula. |
-vt | Saída CSV com delimitador de guia. |
-p | Em vez de examinar todos os identificadores no sistema, esse parâmetro restringe a verificação do Handle aos processos que começam com o processo de nome. Assim: handle -p exp despejaria os arquivos abertos para todos os processos que começam com "exp", o que incluiria o Explorer. |
name | Esse parâmetro está presente para que você possa direcionar o Handle para pesquisar referências a um objeto com um nome específico. Por exemplo, se você quisesse saber qual processo (se houver) tem "c:\windows\system32" aberto, você poderia digitar: identificar windows\system A correspondência de nome não diferencia maiúsculas de minúsculas e o fragmento especificado pode estar em qualquer lugar nos caminhos nos quais você está interessado. |
Quando não está no modo de pesquisa (habilitado especificando um fragmento de nome como um parâmetro), o Handle divide sua saída em seções para cada processo para o qual está imprimindo informações do identificador. As linhas tracejadas são usadas como um separador, imediatamente abaixo do qual você verá o nome do processo e sua ID de processo (PID). Abaixo do nome do processo estão listados valores de identificador (em hexadecimal), o tipo de objeto ao qual o identificador está associado e o nome do objeto, se ele tiver um.
Quando no modo de pesquisa, o Handle imprime os nomes de processo e as IDs são listadas no lado esquerdo. Os nomes dos objetos que tinham uma correspondência estão à direita.
Você pode encontrar mais informações sobre o Gerenciador de Objetos no Windows Internals, 4ª Edição ou navegando pelo espaço de nome do Gerenciador de Objetos com WinObj.
Baixar o Handle (729 KB)