这是什么意思?要求源文件与原始版本完全匹配

时间:2011-11-17 21:46:57

标签: visual-studio debugging

此调试选项:要求源文件与原始版本完全匹配

这是来自MSDN:

  

告诉调试器验证源文件是否与用于构建正在调试的可执行文件的源代码版本匹配。如果版本不匹配,系统将提示您查找匹配的源。如果找不到匹配的源,则在调试期间不会显示源代码。

但我还是不明白!那么选择它或取消选择它会更好吗?

5 个答案:

答案 0 :(得分:11)

情况:  您已在编辑器中加载了一个文件版本,该文件与编译到正在调试的可执行文件中的版本不同。

如果选择了该选项,并且您尝试调试该文件中的代码,系统将提示您找到正确的代码,否则您将无法进入或中断该文件的任何功能。 (我认为弹出式对话框还允许您选择“无论如何都使用此版本”)。

如果未选择该选项,您将看到该文件的版本。但是,您看到的代码可能与正在执行的代码非常不同。断点将显示在与旧文件匹配的行号上。它可能会显示在空白行,评论或其他一些功能中。

一般情况下,您应该选择它,以便您知道所看到的就是您正在运行的内容。

答案 1 :(得分:5)

我会选择该选项。

考虑以下情况:

  • 构建一些代码
  • 对源文件进行更改
  • 开始调试

现在,在进行调试时,源文件不再与编译期间使用的文件相匹配。这可能会为您留下断点或行号,这些断点或行号不再与调试器中实际发生的内容相匹配。

如果您想要查看本地代码,请取消选择该选项。

答案 2 :(得分:0)

尝试重建整个解决方案而不是仅重建项目并保持......这对我有用。

答案 3 :(得分:0)

要更改此设置,请执行以下操作:

Tools -> Options -> Debugging -> Require source files to exactly match the original version

你可以从这里改变它。

另一个是:

Tools -> Options -> Debugging -> Enable Edit and Continue (with all its children checked)

此选项仅适用于调试模式,是有用的事情

如果你喜欢这个答案请注意投票。

答案 4 :(得分:-2)

尝试查看您的文件是否不是只读的!!! 旧代码有时会具有这种技巧