我创建了一个Windows服务,我正试图在服务器上部署。
尝试使用具有管理员角色的命令提示符安装它。
安装程序:
[RunInstaller(true)]
public partial class ProjectInstaller : System.Configuration.Install.Installer
{
public ProjectInstaller()
{
InitializeComponent();
}
protected override void OnAfterInstall(IDictionary savedState)
{
base.OnAfterInstall(savedState);
//The following code starts the services after it is installed.
using (System.ServiceProcess.ServiceController serviceController = new System.ServiceProcess.ServiceController(serviceInstaller1.ServiceName))
{
serviceController.Start();
}
}
private void serviceProcessInstaller1_AfterInstall(object sender, InstallEventArgs e)
{
//this.serviceProcessInstaller1.Account = ServiceAccount.LocalSystem;
}
private void serviceInstaller1_AfterInstall(object sender, InstallEventArgs e)
{
}
}
它会抛出错误,
onafterinstall事件处理程序
中发生异常
还有,
System.InvaldiOperationException:无法在计算机上启动服务。 等
答案 0 :(得分:0)
关于服务的错误消息"没有及时响应"表明您的服务在某种程度上被破坏了。 Start机制不是一种即发即弃的设计,它更像是对服务启动代码的调用。该服务应该(及时)退出其开始代码,以表明它正在运行。您的起始代码可能是内联工作太多而不仅仅是进行基本初始化,然后实例化一个线程来完成服务的主要工作或者它在某个地方挂起。