gpt4 book ai didi

windows - 使用 xperf 获取符号

转载 作者:可可西里 更新时间:2023-11-01 11:41:29 25 4
gpt4 key购买 nike

我通读了文档并使用了概述的命令,但是出于某种原因,我似乎没有得到任何符号,只有摘要表函数列中的一系列“未知数”,除了应用程序的最顶层集合我正在尝试调试....我将环境变量设置为 Microsoft 服务器和包含应用程序 pdb 的目录。在显示汇总表之前,我还确保选择了“加载符号”项。

根据我正在阅读的信息,表格在加载符号时应该需要一些时间才能显示,但是对我来说表格几乎立即显示并且只有 sprite.exe->sprite.exe 中最上面的项目有函数名称,函数的其他行为空白或“未知”

我使用的是 Vista SP1。

这是我使用的批处理文件。我是否做了任何会阻止加载符号的事情?

REM start profiler
xperf -on PROC_THREAD+LOADER+INTERRUPT+DPC+PROFILE^
-stackwalk profile -minbuffers 16 -maxbuffers 1024 -flushtimer 0^
-f tmp.etl
REM run the app we want to profile
sprite.exe
REM stop
xperf -d profile.etl
REM set symbol path
set _NT_SYMBOL_PATH = ^
C:\Projects\C++\fl lib\bin;^ REM dlls
C:\Projects\C++\fl lib\samples\bin;^ REM main exe
SRV*c:\symbols*http://msdl.microsoft.com/download/symbols
REM display profile
xperf profile.etl

最佳答案

什么版本的dbghelp.dll它在使用吗?我在使用 kernrate 时遇到了 PDB 符号问题使用 dbghelp.dll 版本时的其他实用程序安装在 %SystemRoot%\system32 中.

您可能需要复制 dbghelp.dllsymsrv.dll从最新版本的 Windows 调试工具到 XPerf 可以找到它的目录。

此外,您需要删除“=”之前的空格,否则您将定义“_NT_SYMBOL_PATH”变量(包括名称中的尾随空格)。

在一行的末尾包含注释也是行不通的。行继续符(例如“^”)通常需要作为行中的最后一个字符。当我运行该语句(在 XP 上)时,我以“_NT_SYMBOL_PATH”等于“C:\Projects\C++\fl lib\bin; REM dlls”和下一行错误结束。

关于windows - 使用 xperf 获取符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/597211/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com