我有一个C# Windows服务。
编辑:我刚刚发现程序集未经过签名,其他都已签名。它使用了一些已签名的程序集,但服务本身并没有签名。
此代码在虚拟机中运行,每当主机运行缓慢且此VM正在引导时,服务将无法启动,并显示以下错误:
OnStart方法:
感谢您的选择。
OnStart()
方法包含3行代码,它们的作用仅是启动一个线程。该类本身没有静态对象会导致延迟。它就像一个服务可以这么简单。我的代码由自制密钥签名。编辑:我刚刚发现程序集未经过签名,其他都已签名。它使用了一些已签名的程序集,但服务本身并没有签名。
此代码在虚拟机中运行,每当主机运行缓慢且此VM正在引导时,服务将无法启动,并显示以下错误:
将服务设置为延迟启动可以解决问题,但是这是一个长时间的延迟,非常烦人。有没有其他人遇到过.NET服务(2.0)的这个问题?等待ServiceName服务连接时达到超时(30000毫秒)。
OnStart方法:
protected override void OnStart(string[] args)
{
Thread startThread = new Thread(new ThreadStart(StartThread));
startThread.IsBackground = true;
startThread.Start();
}
StartThread方法中,我只是调用另一个类,这样OnStart就不必等待静态变量初始化或构造方法结束。
private void StartThread()
{
Worker mainThread = new Worker(this);
mainThread.RunWorker();
}
感谢您的选择。
OnStart
中展示你的代码。 - jgauffinOnStart()
基本上与您上面的代码相同。您是否找到了明确的原因? - khargoosh