C# “怎么说?”;“是否在开发环境上?”;?
我想在Visual Studio中开发的C#程序中添加一个条件:C# “怎么说?”;“是否在开发环境上?”;?,c#,visual-studio,C#,Visual Studio,我想在Visual Studio中开发的C#程序中添加一个条件: #If onEditor do something 如果Application.isEditor Visual Studio上的“常规”(WinForms或ASP.NET)C应用程序中是否存在某些内容?您可以使用: #if DEBUG DEBUG常量是为所有默认Visual Studio项目模板中的调试配置定义的。#如果是编译指令,那么无论发生什么,都将在编译时检查,而不是在运行时检查。有一个#if DEBUG,它实际
#If onEditor
do something
如果Application.isEditor
Visual Studio上的“常规”(WinForms或ASP.NET)C应用程序中是否存在某些内容?您可以使用:
#if DEBUG
DEBUG
常量是为所有默认Visual Studio项目模板中的调试配置定义的。#如果
是编译指令,那么无论发生什么,都将在编译时检查,而不是在运行时检查。有一个#if DEBUG
,它实际上意味着“这是在调试模式下构建的”,而不是“发布模式”。如果您的程序运行,它不会告诉任何关于运行的起源的信息
我认为您需要的是:它检查是否附加了调试器。如果该值为
true
,则该程序要么从Visual Studio运行,要么随后附加了调试器。在Visual Studio中使用该值来测试您是否在调试模式下运行:
if (Debugger.IsAttached)
{
Debugger.Break();
}
使用
#if DEBUG
在调试模式或发布模式下有条件地编译代码。另请参阅:或调试器。根据反调试的需要,您可以PInvoke检查RemoteDebuggerPresent