2017-01-04 9 views
0

Cで書かれたネットワークライブラリを使用してP2P(UDP)ウィンドウ10 UWPアプリケーションを作成しようとしています(enetとlibuvの両方を試しました)。 問題は、アプリケーションがクライアントのように動作し、すべてが正常に動作するときです。ただし、サーバー部分をテストしているときに、アプリケーションはイベントを受信することを拒否します(enetとlibuvからのメッセージ)。私は単純なコンソールアプリケーションからコードを試して、enetとlibuvの両方で動作します! また、ファイアウォールにルールを追加して、デフォルトポートのすべてを許可しました。UWPアプリケーションがP2Pサーバパートのデータ受信を拒否しました

私の質問は、UWPアプリケーションを受信するために追加の設定を行う必要がありますか?

答えて

0

MSDNのsame threadについての説明によると、サーバーとクライアントは同じデバイス上にあります。 IPループバックアドレスを使用して

ネットワーク通信が正常にユニバーサルのWindowsプラットフォーム(UWP)アプリケーションとは異なるプロセス間のプロセス間通信のために使用することができない(異なるUWPアプリまたはデスクトップ:DatagramSocketのofficial sampleのノートによれば これはネットワークの隔離によって制限されるためです。

同じマシン内の他のアプリケーションとuwpアプリケーションを通信することはできません。ループバック免除さえありません。これは設計通りです。サーバーとしてc#コンソールプロジェクトを使用し、クライアントとしてuwpアプリケーションを使用すると、正常に通信することができます。しかし、それはあなたが要件を満たすために起こるかもしれない動作させるために特別な手順(例えば、管理者としてコンソールを実行する)が必要です。詳細はthis threadを参照できます。

+0

ありがとうございます。問題はありますが、インターネット(クライアント&サーバー)機能を追加していないという問題がもう1つありました。 –

関連する問題