代码之家  ›  专栏  ›  技术社区  ›  Moshe Levi

如果没有Internet连接,如何获得Microsoft的dlls\assembly的正确符号?

  •  0
  • Moshe Levi  · 技术社区  · 16 年前

    由于安全原因,我无法将计算机连接到Internet。因此,我不能使用符号服务器。我已经安装了Windows XP SP2的符号包,但某些PDB与我的计算机上安装的DLL不匹配(我想是因为我的计算机上安装了某些特定的更新)。

    看起来,微软发布的唯一软件包是完整的xp sp2符号软件包。我无法从服务器下载特定符号。

    有什么建议吗?

    2 回复  |  直到 13 年前
        1
  •  4
  •   Joachim Sauer    16 年前

    我不知道这是否有可能取决于安全约束,但如果允许您执行步骤1,它将起作用。

    1. 对要调试的进程进行小型转储。
    2. 将windbg中的小型转储加载到允许您连接到Internet的系统上。
    3. 配置符号路径以指向公共符号服务器( .symfix+ 是你的朋友)
    4. 通过运行重新加载所有模块” .reload /f
    5. 通过运行创建一个包含所有符号的.cab文件“ .dump /m /ba mycab.cab
    6. 将.cab文件带回要调试的系统,并将pdb文件提取到本地文件夹中,并将符号路径指向该文件夹。
        2
  •  0
  •   Daniel Goldberg    13 年前

    我不知道你从哪里得到关于微软发布的信息。

    事实是微软 published 每个版本的Windows和几个测试版的符号包。

    没有符号的是第三方代码,以及未与Windows捆绑的Office和其他Microsoft产品。