.load, .loadby (DLL de extensão de carga)
Os comandos .load e .loadby carregam uma nova DLL de extensão no depurador.
.load DLLName
!DLLName.load
.loadby DLLName ModuleName
Parâmetros
DLLName
Define a DLL de extensão do depurador a ser carregada. Se você usar o comando .load , DLLName deve incluir o caminho completo. Se você usar o comando .loadby , DLLName deve incluir apenas o nome do arquivo.
Nome do Módulo
Define o nome do módulo de um módulo que está localizado no mesmo diretório que a DLL de extensão que DLLName determina.
Ambiente
Item | Descrição |
---|---|
Modos | Modo de usuário, modo kernel |
Destinos | Ao vivo, despejo de memória |
Plataformas | Tudo |
Informações Adicionais
Para ter mais informações sobre como carregar, descarregar e controlar extensões, consulte Carregando DLLs de extensão do depurador.
Comentários
Ao usar o comando .load, você deve determinar o caminho completo.
Ao usar o comando .loadby, você não determina o caminho. Em vez disso, o depurador localiza o módulo que o parâmetro ModuleName determina, especifica o caminho desse módulo e, em seguida, usa esse caminho quando o depurador carrega a DLL de extensão. Se o depurador não conseguir localizar o módulo ou se não conseguir localizar a DLL de extensão, receberá uma mensagem de erro que determina o problema. Não precisa haver nenhuma relação entre o módulo especificado e a DLL de extensão. Usar o comando .loadby é, portanto, simplesmente uma maneira de evitar digitar um caminho longo.
Depois que o comando .load ou .loadby for concluído, você poderá acessar os comandos armazenados na extensão carregada.
Para carregar uma DLL de extensão, você pode executar um dos procedimentos a seguir:
Use o comando .load ou .loadby .
Execute uma extensão emitindo a sintaxe !DLLName.ExtensionCommand completa. Se o depurador ainda não tiver carregado DLLName.dll, ele carregará a DLL neste ponto se estiver localizado no caminho de pesquisa da DLL atual.
Use o comando .chain para exibir informações sobre o que foi carregado e o caminho de pesquisa da DLL atual.
0:000> .chain
Extension DLL search Path:
C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\WINXP;C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\winext;C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\winext\arcade;C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\pri;C:\Program Files (x86)\Windows Kits\10\Debuggers\x64;
Extension DLL chain:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\SOS.dll: image 4.8.4084.0, API 1.0.0, built Sun Nov 24 00:38:52 2019
Por exemplo, o código gerenciado SOS.dll não está no caminho de pesquisa para DLLs mostrado acima, portanto, use o comando .load com um caminho completo para carregar essa dll.
0:000> .load C:\Windows\Microsoft.NET\Framework64\v4.0.30319\SOS.dll