通信对象 System.ServiceModel.ServiceHost 无法用于通信,因为其处于“出错”状态。

本文记录了在Windows 10环境下使用WCF编写承载服务过程中遇到的权限问题及其解决方案。作者按照书籍教程编写代码,在Visual Studio中运行时遭遇错误提示,通过尝试不同配置未能解决问题。最终发现使用管理员权限运行可以避免HTTP URL注册失败的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

学习WCF编写承载服务时按照书上代码在VS中运行居然提示:


百度上说有些配置不对,但是加了也没有用。最后用网上的基础代码试试:http://blog.youkuaiyun.com/songyefei/article/details/7363296

又提示:HTTP 无法注册 URL http://+:8000/MyService/。进程不具有此命名空间的访问权限(有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkId=70353)。

又跟着百度,说是权限不够,无奈找到DEBUG目录以管理员身份运行,成功了。

然后又以管理员身份运行之前的代码,也成功了如图:


到最后,还是权限问题(用的是Win10)。网上说明:

 此问题是因为在Win7及以后系统中运行注册URL的程序需要具有管理员特权。

  • 使用管理员权限运行生成的EXE文件

  • 使用管理员权限运行VS,则宿主主机也会使用管理员权限启动


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值