这是我第一次使用vs独立分析器,所以我开始使用MSDN方式使其工作。
当我运行VSInstr时,我得到以下结果:
Microsoft (R) VSInstr Post-Link Instrumentation 12.0.31101 x86
Copyright (C) Microsoft Corp. All rights reserved.
Usage: VSInstr [/U] filename [options]
这表明我已正确设置了它。然后我右键点击了我的电脑 - >属性 - >高级系统设置 - > Eviroment变量
我添加了一个名为_NT_SYMBOL_PATH的新变量和值symsrv * symsrv.dll * c:\ localcache * http://msdl.microsoft.com/download/symbols
但是当我运行以下命令时:
>vsperfreport c:\localcache\somefile.vsp /summary:all /packsymbols
我收到以下错误:
Microsoft (R) VSPerf Report Generator, Version 12.0.0.0
Copyright (C) Microsoft Corporation. All rights reserved.
Error VSP1710: File not found: c:\localcache\somefile.vsp
Error: VSP1804: Did not successfully open the file.
所以该文件确实不存在,但我认为该文件应该自动创建? 我觉得我应该提到的另一件事是我在Windows 7 VM上这样做,但我不认为这应该是一个问题。
修改
我从不同的方法开始,但现在我有一个不同的问题......
这些是我正在尝试对我的应用程序进行性能测试的步骤。
启动cmd行:
1)设置路径=%path%; c:... \ Performance tools \
2)vsinstre.exe我的应用程序< - 这会创建我的应用程序exe的检测版本(据我所知,我需要一个检测过的应用程序才能跟踪它)
3)打开开发人员命令,我需要重新签名我的应用程序,因为它是强类型的,所以我执行了描述的步骤here
4)回到cmd> vsperfclrenv.cmd / traceon / tracegc
5)vsperfcmd / start:trace /output:test.vsp /launch:myapp.exe
我收到以下错误:
错误VSP1335:无法启动myapp.exe。这是一个仪表化的应用程序 - 不允许采样
现在万一是运行vsperfcmd而不启动应用程序,如果我自动启动它,性能工具实际上会运行,但性能报告不会显示函数名称,只是它们的内存地址,如我没有设置我的符号。当我打开性能报告时,我已经尝试指向vs的符号,但它似乎没有帮助......