#asp.net #wcf #was #wcf-hosting
#asp.net #wcf #была #wcf-hosting
Вопрос:
Я получаю эту ошибку при размещении моего приложения WCF в службе Windows. Служба размещена на сервере, и я хочу получить к ней доступ через Интернет. Поэтому я дал ему разрешение networkservice.
Service cannot be started. System.ServiceModel.AddressAccessDeniedException: HTTP could not register URL http:// :8085/lupload/. Your process does not have access rights to this namespace (see http://go.microsoft.com/fwlink/?LinkId=70353 for details). ---> System.Net.HttpListenerException: Access is denied
at System.Net.HttpListener.AddAllPrefixes()
at System.Net.HttpListener.Start()
at System.ServiceModel.Channels.SharedHttpTransportManager.OnOpen()
--- End of inner exception stack trace ---
at System.ServiceModel.Channels.SharedHttpTransportManager.OnOpen()
at System.ServiceModel.Channels.TransportManager.Open(TransportChannelListener channelListener)
at System.ServiceModel.Channels.TransportManagerContainer.Open(SelectTransportManagersCallback selectTransportManagerCallback)
at System.ServiceModel.Channels.TransportChannelListener.OnOpen(TimeSpan timeout)
at System.ServiceModel.Channels.HttpChannelListener.OnOpen(TimeSpan timeout)
at System.ServiceModel.Channels.CommunicationObject.Open(Tim...
For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
Ответ №1:
NetworkService
на самом деле это учетная запись с ограниченным доступом, вам нужно перейти к LocalSystem
, которая эквивалентна учетной записи администратора. Это решит вашу проблему.
Комментарии:
1. Вы перезапускались после изменения идентификатора? В противном случае это изменение не будет принято.
2. Ммм, сложная штука… Можете ли вы запустить
netsh http show servicestate
и посмотреть, прослушивает ли уже другой процесс HTTP:8085 ?3. на этом порту не запущен процесс.