0

我想使用 Intel Inspector 分析 DLL。此 DLL 用于插件应用程序。它转到一个扩展文件夹,是从另一个应用程序 mainApp.exe 运行的。

但是,在 Intel Inspector 中,当我从 UI 创建一个新项目时,打开的选项卡需要对应用程序进行分析,并且只接受扩展名为 .exe 的文件。

我无法在 .exe 文件中编译源代码。这是因为我没有主。我必须启动另外两个 .exe 来运行 DLL:mainApp.exe,然后是 SDKapp.ex,我从 mainApp 的菜单栏中运行它。我尝试编译,具体来说,我得到了 LNK 2019 错误,它不会消失将子系统更改为控制台。

那么,我应该继续使用其他分析器,例如 AQTime,还是有办法从 Intel Inspector 分析我的 DLL。

4

1 回答 1

0

如果 DLL 应附加到进程 myApp.exe,则目标选项卡应用程序应为 myApp.exe。

Inspector 将显示所有内存泄漏,包括在 myApp.exe 运行时启动的 DLL 中的那些。

在此处查看更多信息:https ://software.intel.com/en-us/forums/topic/285260

好吧,在执行过程中的某个任意点将 Intel Inspector 附加到进程和在应用程序结束之前测试 DLL 是两个非常不同的任务。而在前者中,当 Intel Inspector 开始分析时,它不知道之前发生了什么、进行了哪些内存分配、它们的边界在哪里,甚至已经进行了多少次分配——忘记任何分配的泄漏测试和边界测试发生在附加之前。选择一个特定的 DLL(或一组)进行测试假定该工具从一开始就存在(至少在 DLL 运行时),并让该工具有机会在 DLL 活动期间捕获此类分配数据。巧合的是,英特尔刚刚发布了适用于 Windows* Update 5 的 Intel Inspector XE 2011,以提供这样的功能:

配置项目以供分析时增强模块包含/排除功能 - 例如,您可以检查特定模块并禁用对所有其他模块的检查,或禁用对特定模块的检查并检查所有其他模块

于 2014-05-24T15:16:43.877 回答