用于跟踪或分析C ++控制台应用程序执行和差异跟踪的工具的建议

时间:2011-10-09 13:39:00

标签: c++ windows visual-c++ profiling tracing

我想用两组不同的命令参数执行Nmap的执行跟踪,并对结果进行区分,以便我可以看到为什么不同的路径通过代码。

在我的Win32 XP SP3框中,两个命令nmap -F -v -d -n <target_host>nmap -F -v -v -d -n <target_host>应该在代码中采用几乎相同的路径(除了处理额外的-v arg),但是不要。我发现调用getAdapterAddresses返回ERROR_INVALID_PARAMETER时遇到了一些问题,这导致nmap退出时出现错误消息,但是参数稍有不同。我已经提交了一个补丁,似乎解决了getAdapterAddresses问题,但现在我想找出为什么应用程序会在不同的地方退出(请参阅此nmap-dev mailing-list post,并了解更多背景信息)。

该项目已针对Visual Studio Express 2010 VC ++进行设置,我正在寻找一种方法来跟踪上述窗口框中的执行情况,然后对结果进行区分。

我应该寻找哪些工具?

2 个答案:

答案 0 :(得分:0)

如果没有人能够提供更好的东西,你可以使用LukeStackwalker来实现这一点,它会根据它描述的代码生成可视化调用图,这样你就可以直观地比较它们(以及调用计数和在函数中花费的时间)超过所需的样本数量)。

答案 1 :(得分:0)

Visual Studio 2010 PremiumUltimate版本具有很好的分析工具,可以从中导出生成的报告的各种元素(csv或xml)。

我将调用树导出到csv并使用Beyond Compare对它们进行了差异化处理,这对我有很大帮助。