C# 如何在Win 7 visual studio 2012中禁用C中的#if DEBUG#

C# 如何在Win 7 visual studio 2012中禁用C中的#if DEBUG#,c#,windows,visual-studio-2010,debugging,windows-7,C#,Windows,Visual Studio 2010,Debugging,Windows 7,我正在Win7 visual studio 2012中制作C# 我有#if DEBUG,我想禁用它们。但是,当我在visualstudio中使用“启动而不调试”运行C#时,#if DEBUG仍然有效 任何帮助都将不胜感激 更新 当我在发行版中构建代码时,#if DEBUG代码仍然存在,即使它们没有执行?我需要手动删除它们吗?我需要在发布后将它们移除。谢谢 将生成配置从调试更改为发行版。将生成配置从调试更改为发行版。我假设您已经在根据“发行版”生成配置文件进行生成,因此我将解释如何为发行版取消设

我正在Win7 visual studio 2012中制作C#

我有
#if DEBUG
,我想禁用它们。但是,当我在visualstudio中使用“启动而不调试”运行C#时,
#if DEBUG
仍然有效

任何帮助都将不胜感激


更新


当我在发行版中构建代码时,
#if DEBUG
代码仍然存在,即使它们没有执行?我需要手动删除它们吗?我需要在发布后将它们移除。谢谢

将生成配置从调试更改为发行版。

将生成配置从调试更改为发行版。

我假设您已经在根据“发行版”生成配置文件进行生成,因此我将解释如何为发行版取消设置调试常量

在项目上单击鼠标右键,并在“构建”部分中从“定义调试常量”中删除标志。 仅应为“发布”生成配置文件删除此标志,并为“调试”生成配置文件设置此标志

当您选择“启动而不调试”时,您并不是要告诉构建以供发布,而是不要将调试器附加到进程


这是三个不同但相互关联的东西:构建概要文件(调试/发布),从进程附加或不附加调试器开始,并设置/取消设置“定义调试/跟踪常量”。

我假设您已经在根据“发布”构建概要文件进行构建,因此我将解释如何取消设置发布的调试常量

在项目上单击鼠标右键,并在“构建”部分中从“定义调试常量”中删除标志。 仅应为“发布”生成配置文件删除此标志,并为“调试”生成配置文件设置此标志

当您选择“启动而不调试”时,您并不是要告诉构建以供发布,而是不要将调试器附加到进程

这是三个不同但相互关联的东西:构建概要文件(调试/发布),在进程附加或不附加调试程序的情况下启动,以及设置/取消设置“定义调试/跟踪常量”。

“无调试启动”仅意味着VS不会将调试程序附加到正在运行的进程;这不会改变其他任何事情。您可能正在使用调试配置运行-如果您想在版本中编译,应该从工具栏的下拉列表中选择Release,此时您应该看到一个设置为Debug的下拉列表

VisualStudio为要启动的项目创建这些配置,这些配置控制预处理器标志设置为什么,以及一系列其他配置(要使用多少优化等)。如果需要,您可以编辑它们,甚至可以创建新的。

“启动而不调试”仅意味着VS不会将调试器附加到正在运行的进程;这不会改变其他任何事情。您可能正在使用调试配置运行-如果您想在版本中编译,应该从工具栏的下拉列表中选择Release,此时您应该看到一个设置为Debug的下拉列表


VisualStudio为要启动的项目创建这些配置,这些配置控制预处理器标志设置为什么,以及一系列其他配置(要使用多少优化等)。如果需要,您可以编辑它们,甚至可以创建新的。

当我发布代码时,#如果调试代码仍然存在,即使它们没有执行?我需要手动删除它们吗?我需要在发布后将它们移除。谢谢#if DEBUG确实检查编译标志。当您处于调试模式时,将设置该标志。然而,在发布模式下,该标志并没有设置,所以包装在#if调试语句中的代码将不会执行。我知道这一点。但是,如果我想从文件中删除“#if DEBUG”,该怎么办?我不希望别人在我交付c#代码时看到它们。谢谢当我发布代码时,#if调试代码仍然存在,即使它们没有执行?我需要手动删除它们吗?我需要在发布后将它们移除。谢谢#if DEBUG确实检查编译标志。当您处于调试模式时,将设置该标志。然而,在发布模式下,该标志并没有设置,所以包装在#if调试语句中的代码将不会执行。我知道这一点。但是,如果我想从文件中删除“#if DEBUG”,该怎么办?我不希望别人在我交付c#代码时看到它们。谢谢