vb.netでソケットプログラミングを使用して、サーバークライアントリモーティングアプリケーションを作成しています。この問題は、勝利7のボックスでクライアントとサーバーの両方を使用する場合に発生します。勝利のxpやクロスプラットフォームのコミュニケーション(例えば、xpを勝ち7に勝つ)はうまくいきます。以下 は、クライアントとサーバの終了時に使用されるコードです:vb.netソケットプログラミングを使用したwin7での接続の問題
クライアント:
Dim ips As IPAddress()
ips = Dns.GetHostAddresses(HostName)
For index = 0 To ips.Length - 1
Next index
======================== ===================================
private sub sendFile(byval ip as string)
Dim client As TcpClient = Nothing client = New TcpClient(ips(index).ToString, 8000)
'Code to send file
End sub
サーバー:
Dim Listener As TcpListener = Nothing
Listener = New TcpListener(IPAddress.Any, 8000)
Listener.Start()
Dim client As TcpClient = Nothing
Dim netstream As NetworkStream = Nothing
If Listener.Pending() Then
client = Listener.AcceptTcpClient()
netstream = client.GetStream()
win7でクライアントとサーバーの両方を実行すると、以下のエラーがスローされます。
接続パーティが適切に一定期間後に応答しなかったため、接続の試行が失敗した、または確立された接続は、接続されたホストが
を応答に失敗したため、どのような問題を把握するために私を助けてください失敗しましたです。それは勝利7の権限のレベルですか?
サーバーは着信接続をどのように受け入れますか? –
TcpClientが作成され、サーバーにデータを送信し、サーバーが(問題の追加された)コードを使用してネットワークストリームを読み取ると、Tcplistenerは任意のIPアドレスで指定されたポートをリッスンします。Dim client As TcpClient = Nothing NetworkStream =何も として 薄暗いNetStreamの場合はListener.Pending()すると クライアント= Listener.AcceptTcpClient() のNetStream = client.GetStream() – Harsh
は、ファイアウォールのポートのブロックを解除しましたか? IPアドレスは正しいですか? –