问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

VS2008怎么调试通过LoadLibrary动态加在的DLL

发布网友 发布时间:2022-04-12 17:43

我来回答

2个回答

懂视网 时间:2022-04-12 22:05

关于Bug调试的技巧,现将罗列如下,以后还会继续补充: 1,跳到当前光标处(CtrlF10) 先将光标定位到要测的代码上,同时按下CtrlF10,程序将会直接跳到该行代码处停下。 2, 条件中断 当程序满足开发人员设定的条件后,条件断点才会被触发,调试器中断。 首


关于Bug调试的技巧,现将罗列如下,以后还会继续补充:

1,跳到当前光标处(Ctrl+F10)

先将光标定位到要测的代码上,同时按下Ctrl+F10,程序将会直接跳到该行代码处停下。

2,条件中断

当程序满足开发人员设定的条件后,条件断点才会被触发,调试器中断。

首先在特定代码行上,设定断点,在断点处右键,在弹出的快捷菜单上选择“Condition…”,弹出BreakPoint Condition对话框,

在编辑框中输入条件,当条件为真时,条件断点才会被触发,调试器中断;否则,该断点将被跳过。

3,记录到达断点次数

只有当第n次满足条件,运行到断点时,才中断程序运行,

首先在特定代码行上,设定断点,在断点处右键,在弹出的快捷菜单上选择“Hit Count...”,弹出BreakPoint Hit Count对话框,

1)break when the hit count is equal to

当满足条件,并且第5次进入断点时,断点命中一次。

2)break when the hit count is a multiple of

当满足条件,并且进入断点的次数是5的倍数时,断点被命中。

3)break when the hit count is greater than or equal to

当满足条件,并且进入断点的次数大于5时,断点被命中。

4,机器/线程/进程过滤

首先在特定代码行上,设定断点,在断点处右键,在弹出的快捷菜单上选择“Filter...”,弹出BreakPoint Filter对话框,

5,跟踪点—进入断点时的自定义操作

跟踪点是种特殊的断点,当命中跟踪点时,会触发一系列自定义操作。如果你想观察程序的行为,又不想中断调试的时候,这个功能尤其有用。

首先在特定代码行上,设定断点,在断点处右键,在弹出的快捷菜单上选择“When Hit...”,弹出When BreakPoint Is Hit对话框,

一旦命中断点就打印跟踪信息,我们已经把局部变量x的值作为跟踪信息的一部分进行输出。局部变量可以通过{变量名}语法进行输出。

还可以利用系统内置的命令($CALLER, $CALLSTACK, $FUNCTION等等),在跟踪信息中输出常用的值。

在上面的例子中,同时选中了Continue execution选项,因为我们不想中断调试,而是想程序继续运行。每次断点满足条件时,我们自定义的信息都会被输出。

跟踪信息显示在VS2008的“输出”窗口中。

6,跟踪点—运行自定义的宏

上面的跟踪点调试,只是输出了某个局部变量的信息,当命中跟踪点时,如果我们想输出所有局部变量的信息。可以这样做:

VS没有这样的内置功能,需要我们通过自定义宏来实现,然后在命中跟踪点时,调用该宏。

首先打开VS的宏编辑器,工具-宏-宏IDE,然后在项目资源管理器MyMacros节点下,New一个Module,随便命名(例如“UsefulThings”),

再把下面的VB宏代码贴到模块中进行保存。

[vb] view plaincopyprint?

  1. Public Module UsefulThings
  2. Sub DumpLocals()
  3. Dim outputWindow As EnvDTE.OutputWindow
  4. outputWindow = DTE.Windows.Item(EnvDTE.Constants.vsWindowKindOutput).Object
  5. Dim currentStackFrame As EnvDTE.StackFrame
  6. currentStackFrame = DTE.Debugger.CurrentStackFrame
  7. outputWindow.ActivePane.OutputString("*Dumping Local Variables*" + vbCrLf)
  8. For Each exp As EnvDTE.Expression In currentStackFrame.Locals
  9. outputWindow.ActivePane.OutputString(exp.Name + " = " + exp.Value.ToString() + vbCrLf)
  10. Next
  11. End Sub
  12. End Module

上述宏代码将循环当前的堆栈,把所有的局部变量输出到“输出”窗口。

下面使用上面自定义的宏:

首先在特定代码行上,设定断点,在断点处右键,在弹出的快捷菜单上选择“When Hit...”,弹出When BreakPoint Is Hit对话框,

调试运行程序,当命中跟踪点时,宏会自动列出每个局部变量的名称和值,并在VS的“输出”窗口中显示。

热心网友 时间:2022-04-12 19:13

其实方法是很简单的,就是在DLL的项目属性里,"调试" - "命令" 那填上exe,在设置一下exe的工作目录,按F5即可调试,

我之所以调试不了,即断点无法名命中,是因为,我的"链接器" - "调试" - "生成调试信息" 填的居然是"否", 应该填"是(/DEBUG)"
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
轻度慢性萎缩性胃炎 活动期,伴轻度肠 化 胃角多发糜烂。医生说了我... 胃窦粘膜慢性轻度萎缩性炎伴轻度肠化胃窦粘膜慢性轻度萎缩性炎? 芬兰留学读研费用是多少 芬兰留学读研时间 去芬兰留学学费生活费一年要多少 芬兰留学读研费用是多少? 芬兰留学读研学费多少? 感冒好多天了,可不可以打蓝球或者其它运动出出汗啊? 感冒打喷嚏,鼻塞然后可以让自己多出出汗吗 宝宝感冒了能去游泳吗 求一个网名,最好是孤独些的,是女孩用的,好听,好看的。最好带个 cx . 桃子肌积雪草补水修护面膜可以天天用吗? 例假推迟了14天,现在来了,为什么是黑色的 表示孤独,冷滇的女性网名 上个月天前来的例假这个月推迟了而且颜色是黑色的量比较少 GDP折算数和消费价格指数(CPI)的联系和区别 好听的女生网名比如寂寞,只留下悲伤 09年1月到4月上海的GDP和CPI分别是多少 知道CPI数据怎么换算成通货膨胀率 关于CPI,5年后的上海市CPI大概上涨多少? 27省份平均工资出炉,哪个省份最让你震惊? 为什么CPI中上海的居民消费价格指数中交通通讯那块很低,和真实感觉完全相反呢? 中国CPI最高的城市是哪个城市? 英语作文:我的寒假计划 我的计划 英语作文 my plan英语作文(我的计划) 英语作文:My winter plan,50字以上 我将来的计划英语作文怎么写 《我的计划》英语作文,带翻译 英语作文题目:周末计划 50字 偶然例假少颜色偏黑且推迟是怎么回事? 例假推迟一周来了颜色却是黑红色的这是为什么 如果经期推迟后,量少,颜色黑是说明有炎症吗 月经推迟一两天,就是颜色黑红,有时还有一点血块,没有腹痛,是什么原因 例假推迟十天才来,颜色血块发黑,稀少 例假推迟了半个月。颜色发黑是怎么回事 诗词鉴赏 经典古诗 看动画学诗词 赋得古原草送别——白居易 月经推迟颜色黑色怎么调理 例假推迟了二十多天,来了量不多,颜色很黑,为什么? 月经l量非常少 颜色黑色 一般都推迟 求救 赋得古原草送别插画 《赋得古原草送别》 巧虎古诗赋得古原草送别 赋得古原草送别的内容是什么 赋得古原草送别赋得古原草送别怎么写 花开了,解梦 300字《赋得古原草送别》所描绘的画面 宁波定海区邮政编码 浙江省舟山市定海的邮政编码是多少? 舟山的邮编