C#Windows服务主方法

C#Windows服务主方法,c#,.net,windows-services,C#,.net,Windows Services,我很好奇Main()方法在与服务控制管理器相关的windows服务中究竟是如何工作的。什么时候执行?它是如何连接到操作系统的?它是在安装服务时执行的吗?我知道它是在SCM调用OnStart()时执行的,OnStop()它已经在运行,所以我们不会再次执行它 如果有人知道这方面的很多情况并能详细说明,我将不胜感激 我是一名经验丰富的程序员,我不需要对主要方法的一般功能进行说明……只需要说明它如何与windows服务结合使用。当您使用控制面板小程序通知服务启动时,SCM启动该过程;这将导致Main()

我很好奇
Main()
方法在与服务控制管理器相关的windows服务中究竟是如何工作的。什么时候执行?它是如何连接到操作系统的?它是在安装服务时执行的吗?我知道它是在SCM调用OnStart()时执行的,OnStop()它已经在运行,所以我们不会再次执行它

如果有人知道这方面的很多情况并能详细说明,我将不胜感激


我是一名经验丰富的程序员,我不需要对主要方法的一般功能进行说明……只需要说明它如何与windows服务结合使用。

当您使用控制面板小程序通知服务启动时,SCM启动该过程;这将导致Main()中的代码运行。Main()方法中的ServiceBase.Run()行将关联的服务挂接到SCM中,SCM然后为ServiceBase.Run()方法调用中指定的每个服务调用OnStart()方法。

您应该知道Main方法仅对编译器而言是“Main”,因此这与启动windows服务无关。如果Main()抛出异常?控制面板小程序是否通知用户出了问题?