Como depurar exceção de registro DLL pós-compilação regsvr32?
-
03-07-2019 - |
Pergunta
Estou usando o Visual Studio 2008 (no Windows 2003 Server / 32 bit) para compilar uma biblioteca e depois da DLL é produzido o "Custom Desenvolver Passo" -> "Geral" executa uma linha de comando:
regsvr32 / s / c "($ TargetPath)"
que gera a exceção:
Um não tratada Win32 excepção ocorreu em regsvr32.exe [212].
Isso gera uma sessão de depuração, o que mostra notavelmente pouca informação.
Executando o regsvr32 a partir da linha de comando em uma janela cmd inicia uma excepção (se o número no final é diferente).
Os ponteiros apreciada!
Solução
executar o dll no depurador, regsvr32 definido como o destino de depuração.
Você vai querer colocar um ponto de interrupção na função DllRegisterServer.
Outras dicas
O código deve implementar DllRegisterServer, adicione um MessageBox lá, e quando você executar regsvr32 deve ser hit, anexar ao processo naquele tempo