我正在使用VB Express 2008.我知道如何判断代码是在debug more或release中构建的,但现在我想知道如何判断它是否在Visual Studio IDE中运行(所以我可以添加一些调试MsgBox(),如果我偶然发送调试版本,不要担心它们。)
答案 0 :(得分:1)
如果您正在构建Test and Prod,请考虑在代码中使用预处理器指令。
#If DEBUG Then
MsgBox("Foo")
#End If
当然,如果您将调试构建的二进制文件发送到非开发环境,这就会失败。我知道这是从您提出问题(IDE)的另一个角度攻击问题。
答案 1 :(得分:1)
System.Diagnostics.Debugger.IsAttached你正在寻找什么?
答案 2 :(得分:1)
尝试检查System.Diagnostics.Debugger
的IsAttached属性答案 3 :(得分:1)
如果您想确保永远不向用户显示调试消息,可以使用Debug.Write()
和Debug.WriteLine()
。这些命令将输出提供给调试输出窗口的文本。请注意,您可以将调试输出窗口攻击到客户机器上运行生产代码的程序,而无需安装开发环境!
测试附加的调试器并不表示调试器也在IDE中。在许多环境中,将调试器连接到客户系统上运行的生产代码以识别特定客户的安装和使用出错是很常见的。测试调试器然后假设您在IDE中将在生产环境中调试这种调试器的使用。