C# 服务+;服务安装程序

C# 服务+;服务安装程序,c#,service,installation,dependencies,C#,Service,Installation,Dependencies,我正在为我们的一个web应用程序准备一个简单的轮询器服务,但是我希望能够通过简单地交换DLL来更新服务 我添加了dll作为一个依赖项,它可以很好地工作。代码可以在VS中看到它,它编译,安装程序编译,它安装并运行,但是,当我排除安装程序中依赖的dll时,它仍将编译,然后它无法启动,并抱怨它找不到所需的文件,即使它位于正确的位置并且有权访问它 这是可以实现的(我很确定是可以实现的) 提前感谢。我发现dll与服务安装在同一文件夹中,而不是windows文件夹中(使用procmon在服务启动时查找错误)

我正在为我们的一个web应用程序准备一个简单的轮询器服务,但是我希望能够通过简单地交换DLL来更新服务

我添加了dll作为一个依赖项,它可以很好地工作。代码可以在VS中看到它,它编译,安装程序编译,它安装并运行,但是,当我排除安装程序中依赖的dll时,它仍将编译,然后它无法启动,并抱怨它找不到所需的文件,即使它位于正确的位置并且有权访问它

这是可以实现的(我很确定是可以实现的)


提前感谢。

我发现dll与服务安装在同一文件夹中,而不是windows文件夹中(使用procmon在服务启动时查找错误),加载效果更好


也可以将dll放在GAC中(但我更喜欢100%控制该文件)。

为什么不重新启动该服务?你认为这到底能起什么作用?假设服务在执行某种方法的中间,当您切换DLL时应该发生什么?您到底遇到了什么错误?停止/启动服务很好,目前我必须卸载/重新安装服务以更新它。我将在稍后发布错误消息。服务无法启动。System.IO.FileNotFoundException:无法加载文件或程序集“服务,版本=0.0.0.0,区域性=中性,PublicKeyToken=null”或其依赖项之一。系统找不到指定的文件。文件名:System.ServiceProcess.ServiceBase.ServiceQueuedMainCallback(对象状态)中service_Core.service_Core.OnStart(字符串[]args)处的“服务,版本=0.0.0,区域性=中立,PublicKeyToken=null”