Visual Studio 2005 VB调试用C++ DLL混合语言调试

Visual Studio 2005 VB调试用C++ DLL混合语言调试,c++,debugging,visual-studio-2005,mixed,C++,Debugging,Visual Studio 2005,Mixed,我有一个vb项目,它调用dll中的函数。 dll是在单独的vs项目portaudio中创建的,该项目是用c编写的 dll c项目编译干净并构建所需的dll,我目前将其放入c:\windows\system中,以便vb运行时可以看到它 VB项目位于c:\devprojects\vbtest中 C项目位于C:\devprojects\portaudio中,项目文件位于C:\devprojects\portaudio\build\msvc中。在此msvc目录下的Win32\debug中创建的Dll 当

我有一个vb项目,它调用dll中的函数。 dll是在单独的vs项目portaudio中创建的,该项目是用c编写的

dll c项目编译干净并构建所需的dll,我目前将其放入c:\windows\system中,以便vb运行时可以看到它

VB项目位于c:\devprojects\vbtest中

C项目位于C:\devprojects\portaudio中,项目文件位于C:\devprojects\portaudio\build\msvc中。在此msvc目录下的Win32\debug中创建的Dll

当我调用dll函数时,vs调试器是否可以单步执行dll中的c函数?我有所有的代码等,但我不知道VS2005是否支持这种混合语言调试

如果这是可能的,你能建议我应该如何设置我的VisualStudio来实现这一点吗

非常感谢
David

使用两个项目创建一个解决方案,使用“添加引用…”对话框->项目将VB项目中的引用添加到C项目中,并在调试模式下构建它们


如何从VB调用C dll?

使用这两个项目创建一个解决方案,使用“添加引用…”对话框->项目将VB项目中的引用添加到C项目中,并在调试模式下构建它们


如何调用VB中的cdll?< /p> < p>如果它的VB.NET很简单,只要在下面设置两个项目的解决方案,设置它们的依赖关系,并确保在VB项目中建立调试版本,链接到从C++项目中生成的调试LIb/DLL。VisualStudio完成其余的工作


我在C应用程序调用C++ DLL之前已经做过几次。我不打算设置这个,但在调试时尝试了单步执行,假设我可以得到程序集列表,并且至少可以找出代码中的一些错误。。。但是,它加载了正确的.CPP文件,并允许我继续通过该代码。

< P>如果它的VB.NET很容易,只要在下面设置两个项目的解决方案,设置它们的依赖关系,并确保在VB项目中建立调试版本到从C++项目中产生的调试LIb/DLL。VisualStudio完成其余的工作


我在C应用程序调用C++ DLL之前已经做过几次。我不打算设置这个,但在调试时尝试了单步执行,假设我可以得到程序集列表,并且至少可以找出代码中的一些错误。。。但是,它加载了正确的.cpp文件,并允许我继续单步执行该代码。

不必将两个项目都放在同一个解决方案中,但您应该在编译这两个项目时启用调试符号

现在,在VB net解决方案项目/属性中,在“调试”选项卡中,确保选中了“启用非托管代码调试”


另外,请确保加载的dll与编译dll的位置相同,否则可能找不到存储调试符号的pdb。

不必将两个项目都放在同一个解决方案中,但应在启用调试符号的情况下编译这两个项目

现在,在VB net解决方案项目/属性中,在“调试”选项卡中,确保选中了“启用非托管代码调试”


另外,请确保加载的dll与编译的位置相同,否则可能找不到存储调试符号的pdb。

在vb中,我声明dll函数如下:例如,私有声明函数Pa_GetVersionText Lib portaudio_x86.dll作为字符串。这是一个问题吗?注意-当我选择AddioReal->项目时,没有列出任何Posits,没有导航按钮或[…]按钮去搜索它。C++项目的类型是什么?我刚刚创建了VB.NET WinApp和C++ Win32 DLL。WINAPP> >添加引用>项目->这里我有C++ DLL Projject Projts属性->配置属性->项目默认:配置类型:动态库。使用MFC的DLL:使用标准的Windows库使用ATL:不使用ATL,这有帮助吗?抱歉!我错了!已添加引用,但在生成时无法引用“项目”CppLibrary。这不是.NET程序集。“。在vb中,我声明dll函数如下:例如,将私有声明函数Pa_GetVersionText Lib portaudio_x86.dll声明为字符串。这是一个问题吗?注意-当我选择AddioReal->项目时,没有列出任何Posits,没有导航按钮或[…]按钮去搜索它。C++项目的类型是什么?我刚刚创建了VB.NET WinApp和C++ Win32 DLL。WINAPP> >添加引用>项目->这里我有C++ DLL Projject Projts属性->配置属性->项目默认:配置类型:动态库。使用MFC的DLL:使用标准的Windows库使用ATL:不使用ATL,这有帮助吗?抱歉!我错了!已添加引用,但在生成时无法引用“项目”CppLibrary。这
s不是.NET程序集。“。这样就可以了。删除我的答案。超级-它有魅力。不太清楚为什么,但让我们做这件事吧!这就行了。删除我的答案。超级-它有魅力。不太清楚为什么,但让我们做这件事吧!