C#如何判断程序处于调试状态?

如题所述

看上面的图标


没有调试

正在调试


温馨提示:内容为网友见解,仅供参考
第1个回答  2015-11-20
  1.通过#if预编译指令对DEBUG进行判断,如下:
  
#if DEBUG
// 调试用代码
……
……
#endif

  2.DotNet程序的调试,是DotNet程序员必备的技能之一,开发出稳定的程序、解决程序的疑难杂症都需要很强大的调试能力。DotNet调试有很多方法和技巧。现在本文就介绍一下借助DebugView工具进行调试的方法,以及由DebugView引申出来的知识点。

  3.C#判断是否运行在调试模式下

  很多情况下我们希望一些调试信息不输出,但又不至于用到trace和debug的一些功能,仅仅是包一下几句话,非调试状态就不运行,有这些用法

using
System.Diagnostics;

class
XY

{

[Conditional(
"DEBUG ")]

public
static
void
DebugLog(string
in_string)

{

Console.WriteLine(in_srting);

}

public
static
int
Main(string[]
in_args)

{

DebugLog(
"This
is
a test ");

return
5;

}

}

if
(System.Environment.StackTrace.ToLower().IndexOf(
":line ")> =0)

Console.WriteLine( "debug ");

else

Console.WriteLine( "release ");

string
buildtype;

try

{

bool
found
=
Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(DebuggableAttribute),
false).Length
>
0;

buildType
=
found
? "Debug "
:
"Release ";

}

catch

{

buildType
= " <error>
";

}

#If
DEBUG
Then

'调试状态下运行

Else

#End
If
第2个回答  2013-05-14
#if DEBUG
//这里的代码在 DEBUG 模式下编译
#else

//这里在非 DEBUG 模式下编译
#endif追问

能否具体点呢?谢谢!

追答

这个... 还怎么具体...
中间的代码就是你想怎么写就则么写,
#if DEBUG
这里就是普通的 C# 代码。
比如你要在 DEBUG 状态下,登录窗口默认输入你的登录帐号。
那就写
textBox1.Text ="帐号名";
textBox2.Text ="密码";
#endif

这样就行了,编译器会在 DEBUG 模式下,将你中间那两行编译,如果在 Release 状态下,中间那两行赋值代码将不会被编译。

本回答被提问者采纳
第3个回答  2013-05-14
你按F5默认就是调试模式!设置断点就可以调试了!

...在生成EXE直接打开时不运行。即,只在调试状态下运行?
你添加断点(快捷键F9)后,鼠标右键点击断点,弹出 输入满足调试的相关条件后,直接进入调试模式,可以满足你的要求

c#中怎样判断一个程序是否正在运行?
判断代码如下:string name = "进程名";if (GetPidByProcessName(name) == 0){ MessageBox.Show("程序未运行");return;} public static int GetPidByProcessName(string processName){ Process[] arrayProcess = Process.GetProcessesByName(processName); foreach (Process p in arrayProcess)...

C#怎么判断某程序是否在运行
比如要监听A程序的运行状态.在A里面写一个更新数据库字段的动作,每过一段时间更新一次.写一个服务,隔一段时间查询数据库里A程序更新的字段两条记录之间的时间间隔.如果间隔远大于正常时间,就说明A挂掉了,你这时候可以让服务重启A或者反馈给自己.基本思想就是这样.

如何调试c#的程序?
解决方法:“设置应用程序池默认属性”\/“常规”\/”启用32位应用程序”,设置为 true。 如下图所示:需要注意的问题和解决方法:1、Microsoft.Jet.OLEDB.4.0不要写成 Miscrosoft.Jet.OLEDB.4.0。2、Data Source不要写成“Data Sourse”。3、检查是否安装了Office。4、重新安装注册 MDAC28.exe (一般...

C#远程调试程序,无法显示调试值
调试选项的设置问题。1.无法进入调试状态需要进行如下设置,首先在VS上选择“工具”——>"选项"菜单项,在弹出的对话框中将“启用仅我的代码”不选中。2.在VS上选择“工具”——>"选项"菜单项,在弹出的对话框中将“在模块加载时取消JIT优化(仅限托管)”选中。

C#如何调试代码调试技巧篇
Shift + F11 执行当前执行点所处函数的剩余行。Shift + F5 停止运行程序中的当前应用程序。可用于“中断”模式和“运行”模式。拖动断点在调试中,我们可以拖动断点,使得程序运行到我们想要运行的地方。通常是用来验证这段代码对程序的运行结果有没有影响的。因为我们拖动代码,则被过滤的代码就不会执行...

我用C#调试程序出现了这个问题,谁能帮我.
我用C#调试程序出现了这个问题,谁能帮我. “CaculatorR.vshost.exe”(托管):已加载“C:\\WINDOWS\\assembly\\GAC_MSIL\\System\\2.0.0.0__b77a5c561934e089\\System.dll”,已跳过符号加载。已对模块进行了优化并启用了调试器选项“... “CaculatorR.vshost.exe”(托管): 已加载“C:\\WINDOWS\\assembly\\GAC_MSIL\\...

C#中控制台应用程序调试窗口一会就没了
不是出问题。你一定是按F5启动调试的,所以控制台窗口会一闪就过了;如果你按Ctrl+F5就会开始执行但不调试,控制台窗口会出现“请按任意键继续……”;这只是两种不同的程序调试方法。你试试看

C#判断程序是否运行
判断程序是否运行,可以利用 Process.GetProcessesByName("进程名");来获取 也可以利用API findwindow 来实现 参考资料:http:\/\/www.zu14.cn\/tag\/findwindow\/

c#中,调试的时候,下面怎么不显示局部变量和监视窗口?
一、监视窗口 1、配置应用程序,使应用程序处于调试状态。2、点击“调试”---“窗口”---“监视”---“监视1”,打开监视窗口。3、在监视窗口中“名称”栏中输入变量名称或html元素id,可查看变量的当前值和数据类型或html元素的属性、方法、事件等。4、亦可选中变量,将其拖到“名称”栏,即可查看...

相似回答