.NET2005   WIN2003 环境在一个windows服务项目中,比如Testsvr
系统默认会带有一个Service1.cs
添加了一个windows服务模块 比如svr2
按照正常流程给各服务添加安装程序,生成解决方案
然后再,NET SDK窗口下用命令安装
然后发现只有原先系统自带的那个service1.cs对应的服务能启动
新加的svr2启动:
错误1083:配置成在该可执行程序中运行的这个服务不能执行该服。这个应该怎么解决 

解决方案 »

  1.   

    在程序主入口点更改启动实例...默认在Program类中的Main方法...ServiceBase[] ServicesToRun;
    ServicesToRun = new ServiceBase[] 

    new Service1() //改这里...
    };
    ServiceBase.Run(ServicesToRun)多看看书,打好基础...
      

  2.   

    谢谢楼上老大按照这个修改可以了但是还有一点问题,所有服务的ServiceName,比如这个默认的Service1,
    创建安装程序的时候,默认ServiceName是Service1
    要是我改成别的名字,比如SVR1,启动时就会报
    错误1083:配置成在该可执行程序中运行的这个服务不能执行该服。 应该修改哪里来解决?
      

  3.   

    给服务命名,在对应的ProjectInstaller 中设置即可
      

  4.   

    在ProjectInstaller类的InitializeComponent方法中修改...默认在ProjectInstaller.Designer.cs中...this.serviceInstaller1.ServiceName = "Service1";当然你可以在VS中对ProjectInstaller组件图形化操作...