VStudio-调试模式与发布模式和“;启动而不调试”;

本文关键字:模式 调试 启动 布模式 VStudio- | 更新日期: 2023-09-27 18:00:27

我正在使用Visual Studio 2008进行一个项目。

  1. 有一个下拉菜单,您可以选择"调试/发布"
  2. 还有一个"启动而不调试"(CTRL+F5)选项

如果我选择调试模式,但在不进行调试的情况下启动,会发生什么情况?这不是冲突吗?

这两个菜单之间有什么关系?

VStudio-调试模式与发布模式和“;启动而不调试”;

这些特性是完全正交的。

构建的选择(默认情况下,您可以单独更改这些设置并创建新的构建目标):

  • 调试生成生成调试信息,禁用IL优化并定义debug条件符号
  • 发布版本不生成调试信息,启用了IL优化,并且未定义debug符号

Run与Run without Debugger决定调试器是否附加在启动的进程上。默认情况下,从调试器启动也会禁用JIT优化。

调试模式影响编译;它禁用优化并生成完整的调试符号。

Start Without Debugging只需正常运行EXE,不附带调试器。(就像您在Explorer中双击它一样)

如果您在没有调试的情况下启动,您将在调试模式之外的VS localhost服务器中运行您的项目。如果您选择调试,同样的事情也会发生,但您可以使用断点逐步执行程序,并在运行时检查变量的值,还可以使用VS酷调试工具查看它们的内存管理。

它的开始没有调试。CTRL+F5基本上是根据您通过下拉菜单选择的可执行文件来运行可执行文件(不带调试器),即可执行文件的调试版本或发布版本。

我的理解是,无论应用程序是如何编译的,从调试开始都会附加调试器。在不进行调试的情况下启动只是正常运行应用程序,而不管它是如何编译的。

在这种情况下,我认为您混淆了编译和调试。您可以为x86编译它,但它是x86这一事实对于调试来说并不重要。

我刚刚意识到,当你使用Start Without Debugging时,它会影响文件的创建和断点的工作。无论是创建文件还是使用断点都不起作用。如果您需要这些功能,请使用Debug选项。