C#:检查windows窗体

C#:检查windows窗体,c#,.net,asp.net,vb.net,C#,.net,Asp.net,Vb.net,如何在运行时检查C#应用程序是Windows应用程序还是控制台应用程序? 我想写一个通用输出库(当控制台应用程序运行时,输出到文本框或控制台)。 出于这个原因,如果我能检查一下它是否是asp应用程序也会很有用。我认为您可能用错误的方式解决了这个问题。如果不知道你在这里做什么,我建议: 使用Write(…)方法创建一个名为IOutputWriter之类的接口。然后为每个环境(ConsoleOutputWriter、TextboxOutputWriter等)创建一个实现。每个环境都可以使用适当的实

如何在运行时检查C#应用程序是Windows应用程序还是控制台应用程序?

我想写一个通用输出库(当控制台应用程序运行时,输出到文本框或控制台)。

出于这个原因,如果我能检查一下它是否是asp应用程序也会很有用。

我认为您可能用错误的方式解决了这个问题。如果不知道你在这里做什么,我建议:


使用Write(…)方法创建一个名为IOutputWriter之类的接口。然后为每个环境(ConsoleOutputWriter、TextboxOutputWriter等)创建一个实现。每个环境都可以使用适当的实现,因为它们知道自己是什么类型的应用程序

我认为你可能用错误的方式解决了这个问题。如果不知道你在这里做什么,我建议:


使用Write(…)方法创建一个名为IOutputWriter之类的接口。然后为每个环境(ConsoleOutputWriter、TextboxOutputWriter等)创建一个实现。每个环境都可以使用适当的实现,因为它们知道自己是什么类型的应用程序

是的,这样一个系统已经以TraceListener的形式存在了。是的,这就是我想要做的。但是如上所述,我的问题是如何知道环境(console/win/web),以便我可以将指针/委托转移到使用适当的实现?在应用程序启动时使用依赖项注入来配置输出编写器实现。因此,与输出编写器api在运行时尝试了解环境不同,外部将其配置为适当的类型。如果你能详细说明你到底想做什么,我可以试着给你一个更具体的答案。是的,这样一个系统已经以跟踪侦听器的形式存在了。是的,这就是我想要做的。但是如上所述,我的问题是如何知道环境(console/win/web),以便我可以将指针/委托转移到使用适当的实现?在应用程序启动时使用依赖项注入来配置输出编写器实现。因此,与输出编写器api在运行时尝试了解环境不同,外部将其配置为适当的类型。如果你能详细说明你到底想做什么,我可以试着给你一个更具体的答案。