首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >调试InProc COM Dll

调试InProc COM Dll
EN

Stack Overflow用户
提问于 2010-06-01 18:37:35
回答 4查看 546关注 0票数 1

我在VC++ 6.0中有一个项目,其中有一个可执行文件和一个InProc COM Dll。我希望能够在InProc COM动态链接库中的某个位置设置断点,但VC++不允许我设置断点。

我有这个DLL的源代码,但是我不知道如何在代码中放置断点并调试它?

谁能帮帮我。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-06-04 00:36:24

  1. 附加到process
  2. 打开项目->设置(Alt+F7)
  3. 打开调试选项卡,类别Additional DLL
  4. Add you in-proc server DLL

<代码>H19关闭调试器时保存.opt文件<代码>H210<代码>G211

这样,下次您附加到进程或手动打开.opt文件时,进程内服务器DLL将被加载,其PDB将被解析,最后一个开放源代码文件将被加载,断点将被加载。

这里需要“额外的dll”设置的原因是,直到his的一个实例为CoCreated时,进程内服务器才会加载。因此,调试器不会加载其PDB文件,并且源文件被视为未知的文本文件,因此其中的断点处于非活动状态(白色)。

票数 0
EN

Stack Overflow用户

发布于 2010-06-01 19:47:19

我使用COM已经有一段时间了,但是IIRIC在您的COM项目中将可执行文件配置为启动应用程序。它应该可以工作(对不起,我在这里没有安装VC++ 6.0 :()。

如果不起作用,您可以尝试将调试器附加到正在运行的应用程序。

在这两种情况下,请确保您的COM服务器中有完整的调试信息。

希望这能有所帮助。

票数 1
EN

Stack Overflow用户

发布于 2010-06-01 18:51:09

你可以研究两件事

  1. 在调试选项对话框
  2. 中取消选中要求源文件与原始版本完全匹配如果失败,请重新编译DLL (最好禁用优化/Od),然后将新DLL与其PDB文件一起使用。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2949012

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档