我对Windows服务和线程有点新,所以我希望我不会在这里犯一个明显的错误。我有一个应用程序,用于在C#中运行各种网络维护类型活动。该应用程序在我的本地机器上完美工作,我决定我希望它作为一个Windows服务运行,所以使用相同的代码进行了适当的更改,并再次在我的本地机器上工作。Windows服务不执行代码
当我通过网络上的服务器端口时,出现了问题。非Windows服务代码再次运行良好并按预期运行。然而,Windows服务代码似乎什么都不做。该进程安装正常,并开始/停止罚款,但没有任何代码似乎正在执行,任何帮助调试Visual Studio中的Windows服务也将不胜感激。这是我的OnStart过程中的代码,似乎没有执行。
smThread = new Thread(delegate() { sm.RunServerMonitor(ref run); });
smThread.Start();
dailyThread = new Thread(delegate() { dailyEvents(); });
dailyThread.Start();
由于非Windows服务代码的工作,我不相信我遇到的权限类型的问题,除非有需要进行设置,以使服务能够远程执行任务,比我需要不同的权限为简单的C#代码做同样的事情。
谢谢, 马特
你能告诉我们你用来连接服务的代码吗?当你说windows服务时,你的意思是一个WCF服务? –
它可能是许可问题。运行服务的帐户是什么?您的桌面应用程序可以以管理员身份运行,该服务可以作为不具有权限的另一个运行。 – urlreader
如果您运行的是WCF Web服务,则可能需要更改应用程序池帐户设置。默认的IIS_IUSR帐户没有很多权限。你运行WCF吗? –