Partilhar via


Visão geral da API de Extensão WdbgExts

Cada DLL de extensão WdbgExts exporta uma ou mais funções usadas para implementar comandos de extensão. Essas funções são nomeadas de acordo com a convenção C padrão, exceto que as letras maiúsculas não são permitidas.

O nome da função e o nome do comando de extensão são idênticos, exceto que o comando de extensão começa com um ponto de exclamação ( ! ). Por exemplo, quando você carrega Myextension.dll no depurador e digita !stack na janela Comando do Depurador, o depurador procura uma função exportada chamada stack no Myextension.dll.

Se Myextension.dll ainda não estiver carregado ou se houver outros comandos de extensão com o mesmo nome em outras DLLs de extensão, você poderá digitar !myextension.stack na janela Comando do Depurador para indicar a DLL de extensão e o comando de extensão nessa DLL.

Cada DLL de extensão WdbgExts também exporta várias funções de retorno de chamada. Essas funções são chamadas pelo depurador quando a DLL é carregada e quando os comandos de extensão são usados.

O mecanismo de depurador fará uma tentativa/exceto bloqueará uma chamada para uma DLL de extensão. Isso protege o mecanismo contra alguns tipos de bugs no código de extensão. No entanto, como as chamadas de extensão são executadas no mesmo thread que o mecanismo, elas ainda podem fazer com que o mecanismo falhe.