c# - 如何在已安装的服务上授予对 HTTP 命名空间的权限?

标签 c# wcf http deployment windows-services

我写了一个 Windows 服务,它在本地机器的端口 8003 上打开了一个 WCF 服务。或者至少,它是应该的。由于著名的异常,服务无法启动:

System.ServiceModel.AddressAccessDeniedException: HTTP could not register URL http://+:8003/TRConfigurationService/. Your process does not have access rights to this namespace (see http://go.microsoft.com/fwlink/?LinkId=70353 for details).

此问题已解决here ,一个非常简单的答案:在管理员模式下运行命令提示符,然后执行:

netsh http add urlacl url=http://+:8003/ user=DOMAIN\UserName

一切都很好,我可以在我的本地开发机器上手动完成。但是,我如何在客户端安装中执行此操作,而用户除了在系统提示以管理员模式运行时单击"is"(仅在安装后/安装期间单击一次)外,无需执行任何其他操作?

最佳答案

听起来你应该能够 do it using WIX .

关于c# - 如何在已安装的服务上授予对 HTTP 命名空间的权限?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4564959/

相关文章:

c# - 首先使用代码查找带有 Entity Framework 时间戳的更新条目

c# - c# 中是否有一些用于高级元编程的行业 "standard"?

c# - Mono:如何在新的控制台/终端窗口上运行 bash 命令?

vb.net - 我正在开始一个新的 VB 项目,我可以使用一些指导

node.js - Twitter Streaming API - Node.js 返回未经授权的错误 (OAuth)

performance - 网站性能工具?

php - ETag header 不返回 304

C# LINQ 用于类的面向树的数据结构

architecture - OData 是否仅用作向其他方发布数据的方式,或者我可以将其用作我的应用程序的数据层吗

wcf - 启用传输安全性后,Mono WCF 客户端无法与 .NET WCF 服务器通信