Pergunta

Meu aplicativo compila com o VC6 SP6, usa o dbghelp.lib para obter informações da pilha. O código é semelhante nas compilações de depuração e liberação. O problema é que, ao executar a versão de depuração, o dbghelp.dll carrega msvcrt.dll (a versão de liberação). de qualquer maneira, de qualquer maneira. Então, acabo tendo msvcrtd.dll e msvcrt.dll no processo na versão de depuração. O DSP está definido para carregar bibliotecas padrão e o msvcrt (d) .lib não são mencionados diretamente. Se eu retirar o código que usa dbghelp.dll e remover dbghelp.lib da lista de links DSP, o msvcrt.dll não será carregado.

Como faço para corrigir isso?

Eu preciso ter apenas msvcrtd.dll na minha execução de depuração.

Existe uma versão especial do dbghelp.dll para depuração (que usaria msvcrtd.dll)?

Foi útil?

Solução

Qual é o problema de ter o MSVCRT.lib e o msvcrtd.dll carregado? De qualquer forma, isso é apenas na sua construção de depuração, eu teria pensado, como você parece notar na pergunta.

Eu não acho que você realmente queira começar a mexer com as DLLs de depuração OS - é isso que o dbghelp.dll é - isso não é mais desejável do que seu aplicativo carregar um kernel32.dll, por exemplo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top