在 Visual Studio 10 中调试 VC++ 6 项目

Posted

技术标签:

【中文标题】在 Visual Studio 10 中调试 VC++ 6 项目【英文标题】:Debugging a VC++ 6 Project in Visual Studio 10 【发布时间】:2013-06-21 14:16:23 【问题描述】:

我是 Visual Studio 的新手。我有 Visual Studio 2010 和 Windows 7。我最近检查了一个 Visual C++ 项目。该项目最初是一个 VC++ 6 项目,但是我签出的项目可以打开一个通用的 VC++ 项目,所以我打开了 VC++ 项目来使用。

当我尝试调试项目时,没有一个断点被命中,而是出现了反汇编窗口。断点有错误:“断点当前不会被命中。没有为此文档加载符号。”

我已经研究了这个错误并且尝试了很多东西都没有结果,但是我想知道在 VS10 中使用不同版本的 Visual Studio 编写的项目是否缺少一些简单的东西。

【问题讨论】:

您是否使用 VC 2010 构建了该项目? VC 2010 不使用来自 VC6 的调试器符号表。因此您必须转换项目并在 VC 2010 中构建它。 【参考方案1】:

在开始调试会话之前,请确保您“重建”以确保您的二进制文件是最新的。如果您遇到构建错误,您将需要修复代码或项目设置。

[添加] 确保您正在构建和调试 Debug 构建配置。发布版本通常不包含调试信息。

如果您有可用的 VC 6,则可以改为安装 VC6 和 Daffodil,然后将项目的平台目标设置为 v60。这样您就可以使用 VC6 构建工具进行构建,从而最大限度地减少对代码更改的需求。

【讨论】:

当我尝试构建项目时,我收到了近 1000 个以 error C2371: 'WCHAR': redefinition; different basic types 开头的语法错误,它指的是 srv.h 中的第 39 行 typedef char DBCHAR;;我不明白为什么它在抱怨微软的代码,我可能是设置错误? 问题出在您的代码或项目设置中。你需要从那里开始。在构建没有错误之前,您无法调试。

以上是关于在 Visual Studio 10 中调试 VC++ 6 项目的主要内容,如果未能解决你的问题,请参考以下文章

在 Visual Studio 10 中带有库的 PDB 文件

visual studio 怎么编译,怎么调试?

visual studio 怎么调试 dll

Visual Studio调试技巧---Output窗口输出定位

如何防止 Visual Studio 警告缺少调试信息?

Visual Studio 中配置openCV问题