Хостинг служб WCF через хост exe в Windows 8.1 Я получаю связанную с AppContainer ошибку. Я не могу найти хорошую документацию по методам в верхней части трассировки стека. Здесь хватается за соломинку.Доступ запрещен (System.ComponentModel.Win32Exception) При вызове службы WCF
«System.ComponentModel.Win32Exception (0x80004005): доступ запрещен \ г \ п \ г \ Nserver трассировки стека: \ г \ п
в System.ServiceModel.Channels.AppContainerInfo.GetCurrentProcessToken() \ г \ п
в System.ServiceModel.Channels.AppContainerInfo.RunningInAppContainer() \ г \ п
в System.ServiceModel.Channels.AppContainerInfo.get_IsRunningInAppContainer() \ г \ п
в System.ServiceModel.Channels.PipeSharedMemory.BuildPipeName (String pipeGuid) \ r \ n
at System.ServiceModel.Channels.PipeSharedMemory.get_PipeName() \ r \ n
at System.ServiceMode l.Channels.PipeSharedMemory.GetPipeName (AppContainerInfo AppInfo) \ г \ п
на System.ServiceModel.Channels.PipeConnectionInitiator.GetPipeName (Uri Uri, IPipeTransportFactorySettings transportFactorySettings) \ г \ п
в System.ServiceModel.Channels.NamedPipeConnectionPoolRegistry.NamedPipeConnectionPool .GetPoolKey (EndpointAddress адрес, Ури через) \ г \ п
на System.ServiceModel.Channels.CommunicationPool`2.TakeConnection (EndpointAddress адрес, с помощью Uri, TimeSpan тайм-аут, TKey & ключ) \ г \ п
в системе. ServiceModel.Channels.ConnectionPoolHelper.EstablishConnection (TimeSpan timeout) \ r \ n
в System.ServiceModel.Channels.ClientFramingDuplexSessionChannel.OnOpen (TimeSpan timeout) \ Г \ п
в System.ServiceModel.Channels.CommunicationObject.Open (TimeSpan тайм-аута) \ г \ п
в System.ServiceModel.Channels.ServiceChannel.OnOpen (тайм-аут TimeSpan) \ г \ п
в System.ServiceModel .Channels.CommunicationObject.Open (TimeSpan тайм-аут) \ г \ п
на System.ServiceModel.Channels.ServiceChannel.CallOpenOnce.System.ServiceModel.Channels.ServiceChannel.ICallOnce.Call (ServiceChannel канала, TimeSpan тайм-аута) \ г \ п
на System.ServiceModel.Channels.ServiceChannel.CallOnceManager.CallOnce (TimeSpan тайм-аута, CallOnceManager каскада) \ г \ п
в System.ServiceModel.Channels.ServiceChannel.Call (String, Boolean действия, ProxyOperationRuntime односторонней Operat иона, объект [] модули, Object [] выходы, TimeSpan тайм-аута) \ г \ п
в System.ServiceModel.Channels.ServiceChannelProxy.InvokeService (IMethodCallMessage methodCall, операция ProxyOperationRuntime) \ г \ п
в System.ServiceModel.Channels .ServiceChannelProxy.Invoke (сообщение с сообщением) \ r \ n \ r \ n Исключение, указанное в [0]: \ r \ n в System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage (IMessage reqMsg, IMessage retMsg) \ r \ п
на System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke (MessageData & msgData, тип Int32) \ г \ п
на IAuthenticationService.AuthTempTokens (TokenSet жетоны, CAMSSystem SystemID, String AccountId, String IPaddress, String UniqueID) \ r \ n
в login_Default.AuthenticateAndRedirect() в c: \ Source \ RiverTam \ Source \ Systems \ Web \ PMI \ PMI \ Default.aspx.cs: строка 167 "
Да, мы используем привязку именованного канала, но приложение является простым языком, который по какой-то причине работает в контексте AppContainer? Хост не является приложением WinRT. Это меня озадачило. – Montane
Хм, это может быть просто * проверка *, если он работает в AppContainer. Если мы просто перейдем только к сообщению об ошибке, я бы сказал, что пользователь работает, так как не имеет прав на открытие канала. Какой адрес вы пытаетесь открыть? Какие права имеет пользователь, с которым вы работаете? Можете ли вы попытаться запустить администратора как можно быстрее? –
Итак, полный стек ... Запуск кодированного теста пользовательского интерфейса в VS 2013 против локально размещенного веб-сайта, который вызывает WCF, размещенный в EXE по адресу net.pipe: // localhost/CAMS/AuthenticationService. Я попытался запустить EXE в качестве администратора без эффекта. Веб-сайт работает на сервере разработки ASP.NET, поэтому я предполагаю, что он работает под моей личностью, и я являюсь администратором на компьютере. – Montane