0

我在双工模式下设置了一个小型 WCF 服务。该服务在 Windows 8 应用程序中使用。客户端计算机是 Windows 域的成员。如果存在与域控制器的连接,则会出现错误:

TCP error code 10013: An attempt was made to access a socket in a way forbidden by its access permissions

如果与 DC 的连接已建立但服务器和客户端在同一台计算机上运行,​​则不会发生这种情况。通过网络连接但是它失败了。

奇怪的是,如果我通过不同的网络连接服务器和客户端而不连接到 DC,一切正常。我尝试设置 accesspolicy.xml 但这没有帮助。

这是服务器配置:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>

  <appSettings>
    <add key="aspnet:UseTaskFriendlySynchronizationContext" value="true" />
  </appSettings>
  <system.web>
    <compilation debug="true" />
  </system.web>
  <!-- Bei der Bereitstellung des Dienstbibliothekprojekts muss der Inhalt der Konfigurationsdatei der app.config-Datei 
  des Hosts hinzugefügt werden. System.Configuration unterstützt keine Konfigurationsdateien für Bibliotheken. -->
  <system.serviceModel>
    <bindings>
      <netTcpBinding>
        <binding name="netTcpBindConfig">
          <security mode="None" />
        </binding>
      </netTcpBinding>
    </bindings>
    <services>
      <service name="PizzaService.PizzaGame">
        <endpoint address="" binding="netTcpBinding" contract="PizzaService.IPizzaGame" bindingConfiguration="netTcpBindConfig">
        </endpoint>
        <endpoint address="mex" binding="mexTcpBinding" contract="IMetadataExchange"  />
        <host>
          <baseAddresses>
            <add baseAddress="net.tcp://host:8733/Design_Time_Addresses/PizzaService/Service1/" />
          </baseAddresses>
        </host>
      </service>
    </services>
    <behaviors>
      <serviceBehaviors>
        <behavior>
          <!-- Legen Sie die Werte unten vor der Bereitstellung 
          auf "false" fest, um die Veröffentlichung von Metadateninformationen zu vermeiden. -->
          <serviceMetadata />
          <!-- Damit in Fehlern Ausnahmedetails zum Debuggen angezeigt werden, 
          legen Sie den Wert unten auf "true" fest. Legen Sie ihn vor der Bereitstellung auf "false" fest, 
          um die Veröffentlichung von Ausnahmeinformationen zu vermeiden. -->
          <serviceDebug includeExceptionDetailInFaults="False" />
        </behavior>
      </serviceBehaviors>
    </behaviors>
  </system.serviceModel>

</configuration>
4

1 回答 1

0

好的,这可以认为解决了。Windows 8 应用需要在 Visual Studio 的应用设置中请求的“专用网络(客户端和服务器)”权限。

于 2012-09-10T08:44:59.213 回答