0

我的程序可以作为控制台程序或 Windows 服务运行。但是,当程序作为服务运行时,它Main(string[] args)也会运行。

而且我的Main()方法有一些不能在 Windows 服务中使用的代码。

如何确定我的程序是否作为服务运行?

4

1 回答 1

1

一种方法是使用命令行参数来指定(并且显然签入Main)。即在将服务集命令行参数配置为“-asservice”时,然后Main检查是否传入了此参数。即

if(args.Any(a => a == "-asservice"))
{ 
     // running as service...
}
于 2013-09-07T02:45:16.643 回答