确定正在运行的应用程序的类型(.NET)

Die*_*hon 3 .net c# winforms

如何确定正在运行的应用程序是Windows窗体还是控制台应用程序?

Han*_*ant 5

你不能可靠地做到这一点.例如,从Windows窗体应用程序项目模板启动一个新项目.项目+属性,将输出类型更改为"控制台应用程序".按F5查看其外观.虽然每个合理的测试都会说它是一个控制台模式应用程序,但它是一个非常多的WF应用程序.

相反的情况也是如此,仅仅是System.Windows.Forms.dll的存在并不能使它成为一个WF应用程序.控制台应用程序可能会使用它来显示MessageBox.

此外,它可能都不是.您的代码可能由服务调用.

解决这个问题,应用程序的作者从来没有问题告诉你代码应该做什么.在您的课程中添加一个属性以允许她这样做.