Windows 服务可以使用由另一个 Windows 服务托管的 WCF 服务吗?
Posted
技术标签:
【中文标题】Windows 服务可以使用由另一个 Windows 服务托管的 WCF 服务吗?【英文标题】:Can a windows service use a WCF service hosted by another Windows Service? 【发布时间】:2020-11-24 20:46:41 【问题描述】:我创建了一个 WCF 服务并将其托管在我机器的 Windows 服务中,我的机器 IP 在基地址中。我有另一个需要使用这个 WCF 服务的 Windows 服务(比如说服务 2)。安装 Service 2 时,出现以下错误:
【问题讨论】:
是的。我已经发布了我的答案。 【参考方案1】:是的,你可以。我测试了它,发现它有效,所以这是一个关于windows服务的问题。这个错误通常发生在你在尝试卸载服务或/和一些相关进程之前没有停止服务或句柄被挂起,导致无法卸载服务。
解决方案
1.关闭服务管理器(services.msc或mmc.exe工具)即可解决。
2.同时检查以确保任务管理器中没有正在运行 mmc.exe 的实例。
3.如果以上解决方法无效,可以尝试重启电脑。
可以参考这个链接,这个问题有很多解决方法:
How to solve "The specified service has been marked for deletion" error
【讨论】:
【参考方案2】:我在 Windows 服务上托管了 WCF 服务,并制作了一个类库来使用托管的 WCF 服务。然后在另一个 Windows 服务(服务 2)中使用该 DLL。 问题发生是因为服务 2 的 App.config 没有使用该服务的 Dll 的配置中存在的信息。 添加配置后,没有出现这个错误。
【讨论】:
以上是关于Windows 服务可以使用由另一个 Windows 服务托管的 WCF 服务吗?的主要内容,如果未能解决你的问题,请参考以下文章