首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

我已经在windbg中设置了符号路径,但是为什么每次windbg为相同的exe下载相同的符号?

在Windbg中设置符号路径是为了告诉Windbg在调试过程中如何查找和加载符号文件。符号文件包含了程序的调试信息,可以帮助我们在调试过程中定位问题。

如果每次Windbg都为相同的exe下载相同的符号,可能有以下几个原因:

  1. 符号文件版本不匹配:Windbg会根据程序的版本号来匹配符号文件。如果程序的版本号与符号文件的版本号不匹配,Windbg会重新下载符号文件。确保符号文件与程序版本一致可以解决这个问题。
  2. 符号文件路径设置不正确:请确保在Windbg中正确设置了符号文件的路径。可以通过使用.symfix命令设置符号文件缓存路径,并使用.sympath命令添加符号文件路径。
  3. 符号文件缓存被清空:Windbg会将下载的符号文件缓存在本地,以便下次调试时快速加载。如果符号文件缓存被清空,Windbg会重新下载符号文件。可以通过.symclean命令清空符号文件缓存。
  4. 符号文件服务器不可用:如果Windbg无法连接到符号文件服务器,无法下载符号文件。请确保网络连接正常,并且符号文件服务器可用。

总结起来,如果每次Windbg都为相同的exe下载相同的符号,可以检查符号文件版本、符号文件路径设置、符号文件缓存以及符号文件服务器的可用性。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

win10 uwp 使用 WinDbg 调试

最近因为发现有 Edge 和其他 UWP 程序打不开问题,然而我没有 Edge 和其他 UWP 源代码,于是只能通过 WinDbg 去调试 UWP 程序 找到工具 请不要在网上去下载 WinDbg...,这个版本 WinDbg 路径在 "C:\Program Files\Debugging Tools for Windows (x64)\windbg.exe" 也就是文档里面说路径,打开这个路径程序...x86 和 x64 等版本工具,打开之后可以从标题栏看到版本号,要求版本号是 10.0 以上 附加进程调试 附加到 UWP 程序方法和附加到普通程序方法相同但是附加到 UWP 程序调试难度会比较大...,这样附加效率比较快 附加调试完成之后做什么就看你技术 下面图片是附加调试到照片程序 启动 UWP 程序 通过启动时候进行调试比较好方法,需要使用命令行方式启动 windbg 程序,使用下面命令...App 上面代码就可以打开图床进入调试 挂起应用 有一些 UWP 程序在调试过程就 gg ,一个可以使用方法是在进行符号加载时候先将他挂起 在 UWP 运行时候,有以下状态 suspend

83710

获取和分析Dump几种工具简介

大家好,又见面是你们朋友全栈君。 最近在进一步学习support技能时候,了解到分析Dump重要性,经过学习,做一些笔记。 一、什么是Dump文件。...ProcDump下载地址ProcDump下载及介绍 ,在同一页还有对于ProcDump命令详细说明。...WinDbg下载后应该是一个msi文件,在win7版本以上操作系统可以直接双击安装。安装后在开始菜单中就可以选择WinDbg使用了。 在使用WinDbg时第一步需要做就是设置符号文件位置。...符号路径设置: [File]-[Symbol File Path]或直接快捷键Ctrl+S在弹出窗口中输入你符号路径路径格式只要符合Windows操作系统路径格式即可,路径可以多个,中间以分号间隔...,d:\symbols\win2k3_en; Windbg可以自动到Microsoft服务器上下载符号表文件(.dbg或.pdb,有时DLL和EXE也会下载),只要在符合表路径里做如下设置:srvd

15.8K20

IDA调试Windows 内核

在调试之前需要安装如下软件: IDA PRO这个想大家都应该有Windbg如果调试过驱动或者系统内核的话这个东西也应该有; VirtualKd 这个东西想大家如果没有做过使用IDA调试内核的话这个东西应该是还没有...,如下图所示: 如果使用设置Windbg调试器方法来设置pipe在使用IDA调试时候是无法正常连接调试器(话说这个东西测试了好久,囧)。...(这一步与自动安装是相同) Vmmon运行界面如下所示: 程序列出了当前运行(其实有的是已经结束虚拟机状态,这里需要记住需要调试虚拟机pipe name....设置IDA/Windbg 运行IDA不要选择任何输入数据库,执行菜单Debugger/Attach/Windbg debugger,如下图所示: 打开如下图所示设置窗口: 在Connection...不过这个进程附加会异常痛苦,尤其是下载符号时候,并且将进程挂起时候可能会让ida假死掉,因而可以多等待一会儿,直到所有的符号下载并且识别之后就可以真正中断在系统int3断点上了(这个过程简直是一种折磨啊

1.3K20

Windbg调试----Windbg入门

Windbg帮助文档翻译 安装Windbg 由于目前微软官网上并没有单独提供Windbg下载安装包,可以通过以下两个途径获取: 下载安装WDK 有网友提供单独MSI安装包,可以通过Goole搜索获取...CsrSetPriorityClass+0x40: 00000000`7743cb70 cc int 3 主要描述3点信息: 没有设置符号信息路径,所以找不到符号...这里就不再展示关闭优化后,用windbg调试打印局部变量了,大家可以自己试一试。 源码调试 习惯于VS调试同学,可能会觉得Windbg命令调试难记难用(事实上,当你熟悉之后可能会改变看法)。...现在将测试源码拷贝到C:\source目录,然后在用Windbg 程序后,设置断点到测试程序main函数入口处,然后继续执行程序: 0:000> bp testforme!...工作空间使用主要分为以下几点: 未加载任何调试文件时候,选择File -> Save Workspace保存默认工作空间,则当每次打开Windbg时候,将采用这个默认工作空间 当调试器已经加载调试文件时候

2.4K32

windbg符号表问题

首先设置符号路径 在系统环境变量添加一个 _NT_SYMBOL_PATH 值srv*d:\symbols*http://msdl.microsoft.com/download/symbols 这样IDA...对于这个路径d:\symbols, 可以自定义任何位置, 最好不要用离线符号表,因为你根本就找不到对应系统版本,而且 对于win10等仍然在更新系统,符号表过一段时间就会有所变化,到时又要重新下载一个多...为什么? 本人经过测试,同一个文件符号表会在该目标目录下生成以hash值命名不同文件夹,例如ntkrnlmp.pdb: ?...否则 如果用32位6.x版本调试win7 64位就会出现 在存储符号目录中下载符号但是只有1KB大小,显然是错, 当时这个问题纠结了很久, 后来换了64位 10.X版本windbg...设置符号路径后 自动解决问题

2.1K20

ObjectDataSource选择业务对象列表探讨

这就奇怪了,虽然这几年来一直碰到这个问题,尽管不知道原因,但是从来没试过解决不了。觉得也许是安装了vs2010sp1原因。    ...苦恼之余,老王告诉,更换到旧版本XCode v6.5就没有问题了。心里一咯噔,v6.5?那是半年前版本,难道说这半年来一直用不了?但是也没听说呀!...太久不用,都生疏,光是设置就花了几个小时。以前WinDbg手册和SOS手册也都找不着……到园子里找了十几二十篇文章临时看了一下,边看边折腾,基本操作终于学会了。     1,设置符号路径。...最好下载操作系统符号库安装。     2,把.Net2.0和.Net4.0sos.dll拷贝到WinDbg目录下,分Clr20和Clr40目录存放,方便加载。    ...7,g吧,vs2010从挂起恢复,正常操作,配置数据源,不动了……果然WinDbg中断下了,你就不能学学OD,断下时候自动把窗口弹出到前面来吗?     。。。。。。

1.4K70

搭建一个自动化分析 DUMP 平台

关于开启文件服务器,推荐使用此方法 dotnet serve 一句话开启文件服务器 通过 HTTP 将文件共享给其他设备 想要被 WinDbg 所使用符号文件服务器,需要将符号文件按照一定格式存放在文件夹...符号文件大概有 10G 左右,大部分都是各个版本系统文件 在 Windows 下可以说 WinDbg 是最强调试工具,自然 WinDbg 工具也可以命令行版本自动化方法,可以将命令通过命令行方式传入到...WinDbg ,让 WinDbg 执行,然后输出本地文件。...如我所在团队,只需要处理甩锅就可以只需要了解到当前 DUMP 大概原因,通过分类算法处理 WinDbg 输出文件,然后分为不同其他团队就可以WinDbg ,可以使用 -c 命令,...可以使用 -z 告诉 WinDbg 将要调试 DMP 文件路径。通过 -y 命令可以指定上面步骤创建符号服务器。

1.6K10

WinDbg调试.NET程序入门

自从来到新公司遇到性能问题后,需要想办法解决这个问题,但是一直没有合适性能分析工具,然后找到StevenChennet 大神帮忙,他用WinDbg工具远程帮我分析一个 dump文件,但是只看到键盘...结果,第二天,性能问题又来了,总不能每次劳烦大神驾到,所以不得不自己开始学习WinDbg,这里记录一个入门过程。...2,创建内存转储文件 可以在任务管理器,进程-》创建转储文件 里面,得到当前进程dump文件,是用下面这个程序来生成转储文件: Procdump 下载地址:https://technet.microsoft.com...tp 这里load命令必须带SOS.dll路径。加载它,然后执行 .loadby sos clr ,表示调试.NET托管程序。...开始漫长等待,程序窗口提示: *BUSY* Downloading symbols for [clr.pdb] / 等到相关符号文件全部下载完毕,终于出现久违成功界面: CPU utilization

1.8K100

使用windbg抓取崩溃文件和分析过程

但是Minidump保存很少信息,在一些场景下,可能不能协助我们准确快速定位问题。        ...但是,如果我们在测试过程,发生了必现崩溃,而minidump又不能让我们发现什么,那该怎么办呢?这儿举一个例子。我们看一下代码 // Dump.cpp : 定义控制台应用程序入口点。...在dump.exe按任意键,重现崩溃路径 崩溃发生,windbg发现异常并中断 ?...一般情况下,最容易配置不正确是下面的第3步。 将dump.exe符号文件拷贝到你希望保存目录,目录是F:\TmpSymbol 用!...analyze –v分析dump文件 ctrl+P打开windbg代码目录(工程根目录) ? Ctrl+S打开windbg符号设置框,设置符号文件路径,并勾选reload ?

2.2K40

异常处理做准备,熟悉一下WinDbg工具

异常处理做准备,熟悉一下WinDbg工具 马上开始异常处理第二讲,但是在讲解之前,还有熟悉一下我们WinDbg工具,当然你如果熟悉这个工具,那么就可以不用看了....(注意,32位程序就用x86 winDbg,64反之) 打开之后就一个命令窗口,但是我们可以通过下面的快捷键设置 ?...7 反汇编窗口 ALT + 8 打开一个记录本 ALT + 9 进程和线程 CTRL + N 命令浏览器 二丶熟悉WinDbg调试时候注意事项以及常用快捷键 1.注意符号路径设置,如果不设置,那么你反汇编时候...,将看不到WinDbg翻译出来函数了 这个是OD做不到,你调用什么函数,WinDbg都能知道,归功于符号路径设置 CTRL + S 打开符号路径设置,或者在菜单点击 ?...:\symbolsloca,你可以随便改动,就是符号路径下载位置是哪里. 2.常用调试手法 WinDbg和OD不一样,快捷键也有区别了 它快捷键适合VC++6.0一样 F9 设置断点 F5 运行

1.1K110

浏览器开发系列第五篇:Debugging with WinDBG

Windbg是一个强大免费工具,它比起VisualStudio调试器还要强大,能够看到当前内存栈等信息,但是也比那个难用(和Linux下gdb差不多)。...初始化 1.设置符号路径 打开windbg,文件菜单->符号文件路径(快捷键ctrl+s) 这里假设c:\code\symbols这个是你符号文件存储位置(这个可以自己随意设置但是必须保证有足够空间...,找个空盘符有个10G左右,新建一个文件夹,以后就别管了),设置符号路径如下: SRV*c:\code\symbols*http://msdl.microsoft.com/download/symbols...4.设置源码路径 如果想直接定位到源码位置,可以设置源码路径:文件->源码路径,最好是本地代码,直接指定chromium网络地址不太现实: ?...【0当前调试会话进程号;047调试会话线程号】 (6) 当命令提示符显示*BUSY*时,即使命令输入框可以输入命令,但输入命令不会立即被执行,要等windbg空闲时才能执行。

1.7K90

Windbg来分析.Net程序dump

WinDbg是微软很重要诊断调试工具: 可以查看源代码、设置断点、查看变量, 查看调用堆栈及内存情况。 Dump文件是进程内存镜像, 可以把程序执行状态通过调试器保存到dump文件 2....打开windbg之后,需要设置symbol path,可以按快捷键Ctrl+S。把下面的路径粘贴进去保存。...系统进行dump解析等操作时候会自动下载需要符号表 srvc:\symcachehttp://msdl.microsoft.com/download/symbols;c:\symcache; 3....下面一条语句示例 procdump -ma -c 0 -s 3 -n 2 sqlservr.exe -o E:\dumps\ 这条语句意思:当sqkservr.exe这个进程运行时间cpu占用超过...\v4.0.30319\SOS.DLL 这里只是写一些比较常用命令,想要详细了解更多命令以到官网查看 3.高内存占用示例 ?

2.6K60

Windows下dump文件生成与分析

大家好,又见面是你们朋友全栈君。 一 生成Dump文件 生成dump文件有三种方式:任务管理器生成,windbg抓取,源码添加dump转储代码。需要根据实际情况选择。...测试时 dmp文件时本地产生,因此VS会依据dmp文件自行找到exe,pdb和源代码路径。因此直接点击调试,程序会出错代码行中断。...但若dmp文件是exe在另一台机器上产生,则我们最好把exe,pdb,dmp放到同一文件夹下,必须保证pdb与出问题exe是同一时间生成,用VS打开dmp文件后还需要设置符号表文件路径和源代码路径...: (1) 当把pdb文件与dmp文件放入同一目录下时,就不需设置路径,否则需要设置 工具->选项->调试->符号: (2)还需设置源代码路径: 属性->调试源代码: 这样点击“使用仅限本机进行调试...”,即可在出错代码行中断: 2.2 WinDbg调试 (1)设置pdb路径:File ->Symbol File Path (2)设置exe路径:File -> Image File Path (

3.9K20

IDA 6.1调试驱动

大体看了一下可能是由于搜索路径造成,重新将windbg安装到program files下之后问题就结局。...网上也有关于用IDA调试驱动文章,这里只是再整理一下,用IDA载入驱动分析完成之后选择调试器Windbg debugger,如图1所示: 图1 然后执行菜单Debugger->Debugger...设置完成后关闭设置窗口,然后执行菜单Debugger->Process options打开进程选项设置窗口,在Connet string输入要连接字符串,也就是com接口名称,这里是com:port...图4 设置完成后关闭设置窗口,执行菜单Debugger->Attach Process,打开进程附加窗口,如图05所示。 图5 附加之后等待符号库加载完就可以进行调试了。...否则在调试过程如果设置断点将会询问本地文件与远程文件是否一样,并且设置断点将无法触发。

1.1K20

Windows程序Dump收集

前面一篇写过《Windbg调试----Windbg入门》,可能不少新手会问,在本地用Visual Studio去做调试就行了,为什么还需要那么抽象Windbg去进行调试呢?...在微软Sysinternals可以下载。 procdump.exe -ma test.exe -t -e -o C:\dumps 当然也可以指示进程ID去获取dump。...如果设置Windbg作为JIT调试器,则程序出现crash情况,将自动弹出windbg attach到程序异常位置。...使用提升后管理员权限,运行如下命令: windbg -IS 实际上windbg这个命令就是设置windows注册表项,在HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node...表示当有程序crash时候利用ntsd产生dump到路径D:\dumps,dump文件名包含有时间和进程名字,避免了不同进程dump文件覆盖问题。

99450

dotnet 使用 windbg 运行脚本方式自动批量调试处理 dump 文件

利用 windbg 执行调试脚本能力,可以实现自动化调试 dump 文件,将调试 dump 文件获取信息进行输出,方便进行统一处理 在开始之前先说一下需求点是什么。...本文介绍自动化分析方法比较适合用在有大量 dump 文件,人工调试不过来情况,如果本身团队规模比较小,那就只能用于满足领导们汇报需求,比如用于吹质量设计 在 windbg 工具,可以使用 -...c 参数带上脚本文件,大概命令行格式如下 windbg.exe -z [DUMP文件] -logo [日志输出文件] -c "$<[脚本文件]" 一般来说会先组织工作文件夹,将 dump 文件、脚本文件...c "$<script.txt" 如在 C# 代码里面,可以在 Process 时指定工作路径,例子代码如下 Process.Start(new ProcessStartInfo("windbg.exe...如此就完成了自动编写 DUMP 分析工具平台。额外,在现实使用,可能还会带上 -y 参数,用于指定符号文件夹,减少加载符号时,拉取符号耗时,参数是 -y [符号文件夹] 格式

26010

0x000000fc (ATTEMPTED EXECUTE OF NOEXECUTE MEMORY)

暂定各种错误码对照 //断点相关 bp + 地址 设置断点 bl 显示已经设定断点 bu + 地址 设置断点,但是这种类型断点再下一次启动时被记录 bc 清除断点 对于断点范围,可以用...vc 生成调试符号*.pdb windbg不认识,需要设置c++/General/DebugInfo= C7 compatible ===== sympath + c:\nasm 添加符号搜索路径....sympath 显示符号搜索路径 //显示一定范围内存 !...*main* //在我们程序模块搜索包含main地址(注意:如果未加载symbol是不能显示!) 3), 如果存在,在our_exe_name!...“Wrong”,就不用多解释,就是我们要寻找字符串。不过WinDbg不支持模糊搜索,所以这里输入字符串必定要完全正确。

1.3K10
领券