1

Windows 8.1 でホスト exe を介して WCF サービスをホストすると、AppContainer 関連のエラーが発生します。スタック トレースの上部にあるメソッドに関する適切なドキュメントが見つかりません。ここでストローをつかむようなものです。

「System.ComponentModel.Win32Exception (0x80004005): アクセスが拒否されました\r\n\r\nサーバー スタック トレース: \r\n
System.ServiceModel.Channels.AppContainerInfo.GetCurrentProcessToken() で\r\n
System.ServiceModel.Channels で.AppContainerInfo.RunningInAppContainer()\r\n
で System.ServiceModel.Channels.AppContainerInfo.get_IsRunningInAppContainer()\r\n
で System.ServiceModel.Channels.PipeSharedMemory.BuildPipeName(String pipeGuid)\r\n
で System.ServiceModel.Channels .PipeSharedMemory.get_PipeName()\r\n
at System.ServiceModel.Channels.PipeSharedMemory.GetPipeName(AppContainerInfo appInfo)\r\n
at System.ServiceModel.Channels.PipeConnectionInitiator.GetPipeName(Uri uri, IPipeTransportFactorySettings transportFactorySettings)\r\n
System.ServiceModel.Channels.NamedPipeConnectionPoolRegistry.NamedPipeConnectionPool.GetPoolKey(EndpointAddress アドレス、Uri 経由) で\r\n
System.ServiceModel.Channels.CommunicationPool`2.TakeConnection(EndpointAddress アドレス、Uri 経由、TimeSpan タイムアウト、TKey& キー) で\r \n
System.ServiceModel.Channels.ConnectionPoolHelper.EstablishConnection(TimeSpan タイムアウト)
で\r\n System.ServiceModel.Channels.ClientFramingDuplexSessionChannel.OnOpen(TimeSpan タイムアウト) で\r\n
System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)\r\n
System.ServiceModel.Channels.ServiceChannel.OnOpen(TimeSpan タイムアウト)\r\n
System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan タイムアウト)\r\n
System.ServiceModel.Channels.ServiceChannel.CallOpenOnce.System.ServiceModel.Channels.ServiceChannel.ICallOnce.Call(ServiceChannel チャネル、TimeSpan タイムアウト) で\r\n
System.ServiceModel.Channels.ServiceChannel.CallOnceManager.CallOnce(TimeSpan タイムアウト、CallOnceManager) でcascade)\r\n
System.ServiceModel.Channels.ServiceChannel.Call(String アクション、Boolean oneway、ProxyOperationRuntime 操作、Object[] ins、Object[] outs、TimeSpan timeout)\r\n
at System.ServiceModel.Channels. ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall、ProxyOperationRuntime オペレーション)\r\n
System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage メッセージ)\r\n\r\n [0] で再スローされた例外: \r\n System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)\r\n
System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
で\r\n IAuthenticationService.AuthTempTokens(TokenSet トークン、CAMSSystem systemId、文字列 accountId、文字列 ipAddress、文字列 uniqueId) で\ r\n
at login_Default.AuthenticateAndRedirect() in c:\Source\RiverTam\Source\Systems\Web\PMI\PMI\Default.aspx.cs:line 167"

4

2 に答える 2

0

名前付きパイプ バインディングを使用しようとしているようですが、WinRT ベースのアプリケーションでは名前付きパイプを使用できません。

于 2014-01-23T18:17:41.553 に答える
0

したがって、IIS サイトは偽装するように構成されており、そのユーザーには権限がありません! Process Monitor を使用してユーザーを特定しました。当然のことながら、次の行を削除しても、管理者である私のユーザーには問題なく権限があるため、機能することができました。

<system.web>    
    <identity impersonate="true" username="user" password="password" />
</system.web>
于 2014-01-28T16:14:25.953 に答える