2011-01-22 8 views
2

私はWCFの発見メカニズムを.NET 4.0で使用しようとしています。これはWindows 7で動作しますが、「要求されたアドレスがそのコンテキストで有効ではない」というソケット例外を持つXPマシンでは失敗します(エンドポイントはsoap.udp://239.255.255.250:3702)。WCFの検出に失敗し、XPのコンテキストでソケットが無効になる

Windows 7 vs XPは赤ちゃんですか? netstatは矛盾を表示していないようです。私はここで何が欠けていますか?

<configuration> 
    <system.serviceModel> 
    <behaviors> 
     <serviceBehaviors> 
     <behavior> 
      <serviceMetadata/> 
      <serviceDiscovery /> 
     </behavior> 
     </serviceBehaviors> 
     <endpointBehaviors> 
     <behavior> 
      <endpointDiscovery /> 
     </behavior> 
     </endpointBehaviors> 
    </behaviors> 
    <services> 
     <service name="HelloWorldService"> 
     <host> 
      <baseAddresses> 
      <add baseAddress="http://localhost/Demo"/> 
      </baseAddresses> 
     </host> 
     <endpoint kind="mexEndpoint" /> 
     <endpoint kind="udpDiscoveryEndpoint" /> 
     <endpoint contract="Test.IHelloWorld" 
        address="/Hello" 
        binding="basicHttpBinding" /> 
     </service> 
    </services> 
    </system.serviceModel> 
</configuration> 

答えて

1

Microsoft Connectログオン問題があり:

私は、次の設定を使用して問題を示して単純化されたテスト・サービスを作成しました。残念ながらこの問題を回避すると、Microsoftの応答は現在ありません、あなたが言及している例外が有効 ないIPアドレスに ソケットをバインドしようとしたとき、通常はヒット ある

です。可能であれば、 を確認してください。別のOSの のマシンで試してみてください。現時点では、XP上のWCF Discovery 機能の既知の制限は、 です。

+0

これは私が見ているもののように不快に感じます。これはおそらく答えですが、私はそれを幸せな結末を望むようにマークしておきます! – Russ

+0

@Russ:あなたはこれに対する解決策を得ることを願っています...私の気持ちには問題があり、MSはHotFixを発行する必要があります。 Microsoft Connectに投稿することをお勧めします。少なくとも別の人が問題を報告します。幸運:) –

+0

本当に答えはそれ自体ではなく、私はおそらく取得するつもりの良いリードとして。ありがとう! – Russ

0

XPマシンはファイアウォールやルーターの後ろにありますか?具体的には、アドレス239.255.255.250は実際にXPマシンに属していますか、または実際にはNATアドレスを使用していますか? ipconfigを実行して、それがどのようなものかと考えてみてください。

+0

XPマシンはルータの後ろにあります。マシンのIPアドレス(ipconfigから)は192.168.1.104です。これでどこに行くのかは分かりませんが、私は大部分を試してみます! 239.255.255.250のアドレスはサービス発見のためのよく知られたマルチキャストアドレスだと思いましたか? – Russ

+0

私は自分自身は確かではありませんが、実際には、それは愚かでした。私の答えは本当の解決策だとは思わないが、同じ問題があったら、これが私の最初のリードだろう。 –

関連する問題