C# 在Windows Server 2012 R2上运行Windows服务
我已经编写了一个Windows服务,并在自己的PC上进行了测试和调试,它可以正常工作!但是,当我在生产服务器(Windows server 2012 R2)上部署该服务时,该服务将无法工作。服务启动和停止时没有任何错误,但服务启动后不会执行任何操作。服务没有在我的日志文件中写入任何内容 这是我到目前为止在服务器上所做的工作:C# 在Windows Server 2012 R2上运行Windows服务,c#,windows-services,windows-server-2012-r2,C#,Windows Services,Windows Server 2012 R2,我已经编写了一个Windows服务,并在自己的PC上进行了测试和调试,它可以正常工作!但是,当我在生产服务器(Windows server 2012 R2)上部署该服务时,该服务将无法工作。服务启动和停止时没有任何错误,但服务启动后不会执行任何操作。服务没有在我的日志文件中写入任何内容 这是我到目前为止在服务器上所做的工作: 将所有文件从本地PC复制到服务器(.exe、.exe.config、.pdb、.vshost、.vshost.exe、.exe.manifest和我自己的文件Settin
- 将所有文件从本地PC复制到服务器(
和我自己的文件.exe、.exe.config、.pdb、.vshost、.vshost.exe、.exe.manifest
和Settings.xml、envetest.txt
)LogFile.txt
- 复制的文件放在
上,我已经编写了一个安装和卸载C:\SomeFolderName\
脚本.bat
- 我已将具有
完全控制权的网络服务用户添加到目录中
- 我以管理员身份登录
- 该服务从SQL SERVER 2012 Express数据库获取数据。数据库与服务位于同一台服务器上。数据库可以从任何应用程序查询(我已经测试过了!)
- 服务将日志添加到与服务可执行文件位于同一目录中的日志文件中
- 服务写入ASCII文件,该文件也位于同一目录中
- 该服务从同样位于同一目录中的XML文件获取配置
C:\SomeFolderName\
目录中的许多文件
我不明白为什么服务在服务器上不能工作。我需要做什么吗
如果有什么不同,这里是我的OnStart()的代码
如果您需要更多代码,请告诉我。您是否已使用服务安装工具正确注册了服务?我们无法复制此信息。Windows Server 2012和该操作系统上的Windows服务没有什么特别之处。问题一定在您的代码中。添加更多日志记录以确保日志记录正常工作,如果没有帮助,请附加(远程)调试器。可能只是一些权限问题。如果以交互方式运行应用程序会发生什么?您是否检查了服务器的事件日志?
protected override void OnStart(string[] args)
{
mainTask = new Task(PollDatabase, cts.Token, TaskCreationOptions.LongRunning);
mainTask.Start();
}