Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O common linguagem runtime (CLR) depuração API oferece suporte a depuração no ambiente do tempo de execução. Este é uma descrição passo a passo de como um processo em tempo de execução estiver depurado:
O depurador cria uma instância do ICorDebug interface. O depurador chama CComPtrBase::CoCreateInstance usando o CLSID CLSID_CorDebug Para obter uma instância do ICorDebug.
O depurador inicializa a API de depuração, chamando o ICorDebug::inicializar método.
O depurador registra um gerenciado evento manipulador. O depurador chama a ICorDebug::SetManagedHandler método para registrar uma instância do ICorDebugManagedCallback interface sistema autônomo o retorno de chamada para o recebimento de notificação e informações sobre eventos no código gerenciado.
O depurador opcionalmente registra um manipulador de eventos não gerenciado. Se o depurador quer depurar o código não gerenciado, ele invoca o ICorDebug::SetUnmanagedHandler método para registrar uma instância de ICorDebugUnmanagedCallback sistema autônomo o retorno de chamada para o recebimento de notificação e informações sobre eventos em código não gerenciado.
O depurador cria o processo de depuração. O depurador chama a ICorDebug::CreateProcess método para criar um processo.
A API de depuração notifica o depurador sobre o novo processo de depuração. De chama a API de depuraçãoICorDebugManagedCallback métodos, começando pelo ICorDebugManagedCallback::CreateProcess. Isso pode ser seguido por chamadas para ICorDebugManagedCallback::LoadModule, ICorDebugManagedCallback::LoadClass, ICorDebugManagedCallback::CreateThread e assim por diante.
O depurador interrompe a depuração. Em algum momento, o depurador irá obter um ICorDebugManagedCallback::ExitProcess evento, indicando que o elemento a ser depurado não está em execução. Em algum momento depois disso, o depurador libera todas as referências a quaisquer interfaces que ele tem e, em seguida, chama o ICorDebug::terminar método.
Consulte também
Outros recursos
Conceitos chave na API de depuração