状況を詳しく説明すると、2 つのアプリがあります。簡単にするために、それらを A と B と呼びましょう。どちらも Windows 7 で開発および実行されており、UDP/TCP を使用して正常に接続および通信できます。ここで、アプリ B を Windows 8 に変換して、Metro UI を活用したいと考えています。アプリ A のネットワーク コードを大幅に変更する必要がありますか? Windows 7 で実行し続けながら、Windows 8 で実行されているアプリ B と通信できますか? 私が理解していることから、Win8は以前のWindowsとは少し異なる方法でソケットを処理しているため、疑問があります。
3 に答える
これを別の角度から見ると、通信は技術的には可能ですが、明示的に禁止されています(Windowsストアでアプリを公開したい場合)。
3つのWindowsストアアプリは予測どおりに動作します
3.1 Windowsストアアプリの機能を実装するには、WindowsランタイムAPIのみを使用する必要があります
これらのAPIについては、WindowsストアアプリのAPIリファレンスで説明しています。アプリは、Windowsストアにリストされているソフトウェアのみに依存している場合があります。
Windowsストアアプリは、ファイルやレジストリキーなど、ローカルメカニズムを介してローカルデスクトップアプリケーションまたはサービスと通信してはなりません。
これが企業で使用するためにサイドローディングするものである場合は、この回答を無視してください。
アプリ A のネットワーク コードを大幅に変更する必要がありますか?
いいえ、A を変更する必要はありません。
Windows 7 で実行し続けながら、Windows 8 で実行されているアプリ B と通信できますか?
もちろん。
私が理解していることから、Win8 は以前の Windows とは少し異なる方法でソケットを処理します。
Windows 7 と Windows 8 では、IO 完了ポートに関していくつかの違いがありますが、問題にはならないと思います。
これが機能しない理由はありません。
ソケットを使用してサーバーと通信する Windows 8 メトロ アプリが既にあり、テスト目的で、メトロ アプリを 127.0.0.1 に接続しながら Windows 8 マシンでそのサーバーを実行しました。それは完璧に機能しました。