首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

求教C#怎么动态地创建多个Windows服务

2012-10-14 
求教C#如何动态地创建多个Windows服务?如果是静态地创建一个的话那是没有什么问题的,C#里新建一个Windows

求教C#如何动态地创建多个Windows服务?
如果是静态地创建一个的话那是没有什么问题的,C#里新建一个Windows服务的工程就能简单的新建一个Windows服务出来了,但我想能不能通过动态的方式创建多个Windows服务?请问下有没谁搞过的?求教,谢谢!

[解决办法]
当然可以,你查看下工程下Program.cs文件就会发现:

C# code
    static class Program    {        /// <summary>        /// 应用程序的主入口点。        /// </summary>        static void Main()        {            ServiceBase[] ServicesToRun;            // 同一进程中可以运行多个用户服务。若要将            // 另一个服务添加到此进程中,请更改下行以            // 创建另一个服务对象。例如,            //            //   ServicesToRun = new ServiceBase[] {new Service1(), new MySecondUserService()};            //            ServicesToRun = new ServiceBase[] { new FolderManagerServer() };            ServiceBase.Run(ServicesToRun);        }    }
[解决办法]
不是任何程序都可以成为服务的,必须继承ServiceBase的类才行,而你说的动态创建是动态注册系统服务还是外部加载?外部加载的话,你需要监视本地文件夹,插件形式加载dll;动态注册很简单,只要sc命名执行即可。

热点排行