【发布时间】:2017-07-06 20:36:37
【问题描述】:
服务无法启动。 System.ServiceModel.CommunicationException: 服务端点未能侦听 URI 'net.tcp://ssis01:9176/SSISService_v2_0/' 因为访问被拒绝。 验证当前用户是否被授予适当的访问权限 SMSvcHost.exe.config 的 allowAccounts 部分。 ---> System.ComponentModel.Win32Exception:访问被拒绝 System.ServiceModel.Activation.SharedMemory.Read(字符串名称,字符串& 内容)在 System.ServiceModel.Channels.SharedConnectionListener.SharedListenerProxy.ReadEndpoint(字符串 sharedMemoryName, String& listenerEndpoint) --- 内部结束 异常堆栈跟踪 --- 在 System.ServiceModel.Channels.SharedConnectionListener.SharedListenerProxy.ReadEndpoint(字符串 sharedMemoryName, String& listenerEndpoint) 在 System.ServiceModel.Channels.SharedConnectionListener.SharedListenerProxy.HandleServiceStart(布尔 isReconnecting)在 System.ServiceModel.Channels.SharedConnectionListener.SharedListenerProxy.Open(布尔 isReconnecting) 在 System.Ser.
我尝试过的 我不是管理员,也许这就是问题所在
1) 在 AllowAccounts 部分的 SMSvcHost.exe.config 中添加了我的用户 SID .. 然后首先重新启动服务 NETSharing 然后是 SSISService
2) 启动 ssis 服务时,它会抛出错误“本地计算机上的服务已启动和停止。如果其他服务和程序未使用某些服务,则会自动停止。以上错误消息来自日志
这里是 SMSvcHost.exe.config 的配置文件
<?xml version="1.0" encoding="utf-8"?>
<!-- The configuration file for SMSvcHost.exe -->
<configuration>
<runtime>
<gcConcurrent enabled="false" />
</runtime>
<system.serviceModel>
<!-- SMSvcHost ETW traces are redirected by default to an etwProviderId different from WCF's default.
To trace to the default provider, remove the etwProviderId attribute below. -->
<diagnostics performanceCounters="Off" etwProviderId="{f18839f5-27ff-4e66-bd2d-639b768cf18b}"/>
</system.serviceModel>
<system.serviceModel.activation>
<net.tcp listenBacklog="10" maxPendingConnections="100" maxPendingAccepts="2" receiveTimeout="00:00:10" teredoEnabled="false">
<allowAccounts>
<add securityIdentifier="S-1-5-21-873128402-3342024598-2051005476-53521"/>
</allowAccounts>
</net.tcp>
</system.serviceModel.activation>
</configuration>
【问题讨论】:
-
我也尝试在 CMD 命令提示符 Netsh http add urlacl url=http://+:9176/SSISService_V2_0 user =domain\user 中添加服务
-
WCF 服务只能在管理员权限下运行。从管理员 cmd 提示符运行服务主机,或者以管理员身份运行 VS。
标签: wcf