VBでいくつかのゲームを成功させて、マルチプレイヤーゲームを作ろうとしています。しかし、私はこれをやっている経験がなく、私を助けるためにインターネット上でほとんど見つけることができないので、私は解決策を見つけることができない問題があります。私は代わりにそれを使用して解決策を理解することができるので、私はタグとしてc#
を入れましたが、私はVBの言語として使用しています。TCPClientクラスを使用しています: 'ターゲットマシンが積極的にそれを拒否したため、接続できませんでした'
私は、プレイヤー間を接続するためにTCPを使用してゲームを2プレイヤーにしようとしました。
これは、サーバーコードとクライアントコードのTcpClient
クラスのTcpListener
クラスを使用して、かなり番目のドキュメントが与えテンプレート使用しています:serverを、clientを。
サーバー:
server = New TcpListener(IPAddress.Any, 48000)
とクライアント:
Dim client As New TcpClient()
client.Connect(hostAddr, 48000)
私は、同じマシン上のサーバーとクライアントの両方を使用してコードをテストしています。 hostAddr
を自分のコンピュータのローカルIPアドレスにすると、コードは正常に動作し、2つのプログラム間でメッセージを正常に送信できます。私はhostAddr
私の外部IPアドレスを与えるとき
しかし、クライアントコードは、エラーのために動作しない:「対象のコンピュータによって拒否されたため、接続できませんでした」。
私は私のために動作しません、以下を試してみました:
は
は、すべてのポート
私はVMでWindows 10を使用しています(これは影響しないことを望みます)。
他にどんなことが起こりうるかについての提案や、それが真であるかどうかを調べるためのデバッグ方法はありますか?また、同じネットワークにないコンピュータでクライアントを実行するように友人に依頼すると、同様の問題が発生するかどうかを知りたいと思います。
私は今のところ同じマシンを使用していますので、ファイアウォールをオフにするだけで動作します(最初の部分)。 – Shuri2060
また、私は自分のVMにVirtualBoxを使用しており、インターネットに接続できるように実際のコンピュータを使用するのと同じだと考えました。これは真実ではないと思いますか? – Shuri2060
ありがとう! VM経由のポートフォワーディングを使用して問題を解決しました。本当に問題だったことが判明しました。 – Shuri2060