Pergunta

Eu tenho um projeto vb que chama funções em uma dll. A dll é criado em um separado vs projeto (PortAudio), que é escrito em c.

O projeto dll c compila limpa e constrói a dll necessária, o que estou actualmente a cair em c:. \ Windows \ system para vb tempo de execução pode vê-lo

VB Projeto vive em c: \ devprojects \ vbtest

C Projeto vive em c: \ devprojects \ PortAudio com o arquivo de projeto em c: \ devprojects \ PortAudio \ build \ msvc. Dll criado em Win32 \ debug neste diretório msvc.

Quando eu chamar a função dll, é possível para o vs depurador para percorrer a função c na dll - Eu tenho todo o código etc, mas eu não sei se VS2005 suporta este tipo de depuração linguagem mista.

Se isso for possível, você poderia aconselhar como devo montar o meu Visual Studio para alcançar este objectivo.

Muito obrigado David

Foi útil?

Solução

Não é necessário ter ambos os projetos na mesma solução, mas você deve compilar ambos os projetos com símbolos de depuração habilitado.

Agora, em sua solução líquida VB Projeto / Propriedades, na Debug guia verifique se "Ativar depuração de código não gerenciado" está marcada.

Certifique-se também que a dll carregado está no mesmo lugar onde ele foi compilado, então ele pode não encontrou o pdb, onde os símbolos de depuração são armazenadas.

Outras dicas

Criar uma solução com dois projetos, adicionar a referência no projeto VB para projeto C usando 'Adicionar referência ..' diálogo -.> Project e construir-los todos em modo de depuração

Como você chama C DLL do VB?

Se o seu VB.NET, então isso é muito fácil, basta configurar uma solução com dois projetos sob ele, criar as suas dependências e garantir que em construir a versão de depuração dos links do projeto VB para a depuração lib / dll produzido a partir de o C ++ projeto. Visual Studio faz o resto.

Já fiz isso antes de um par de vezes com C # aplicações chamar uma DLL C ++. Eu não tinha a intenção de definir isso, mas tentou percorrendo enquanto depuração assumindo que eu iria receber o listando montagem e poderia, pelo menos, trabalho fora somethig do que estava acontecendo de errado com o meu código ... no entanto, ele carregou o arquivo .cpp correta e permitiu-me para continuar percorrendo esse código.

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