問題タブ [tcpclient]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - SocketオブジェクトとTcpClientオブジェクトの間で変換することは可能ですか?
これは、差し迫った必要性よりも単に好奇心に基づいた別のC#/。NETの質問です...
インスタンスがSocket
あり、それをより高いレベルのTcpClient
クラスでラップしたい場合、それは可能であり、どのように実行しますか?
逆に、のインスタンスがある場合TcpClient
、基礎となるものを取得することは可能Socket
ですか?
c# - 抽象基本クラスの TcpClient フィールドが常に破棄されている
TcpClient フィールドを持つ抽象基本クラスがあります。
接続をセットアップする方法があります。
そして、データをリクエストするメソッドより:
requestRawData など、他にもいくつかあります...非常に特定のハードウェア通信プロトコルに必要ですが、それはこの質問の一部ではありません。
次に、このクラスから派生したクラスがあり、基本クラスのメソッドをオーバーライドします。
コードは例外なく動作しますが、setupConnection メソッドが呼び出されるたびに TcpClient インスタンス (tcpClient) が破棄されているように見えるため、新しいインスタンスが作成され、connect メソッドが再度呼び出され、通信プロセスが非常に遅くなります。
注: 子クラスのパブリック メソッドは requestData メソッドを呼び出し、このライブラリを使用して開発者から多くの詳細を抽象化します。
SetDevicePower(byte PowerLevel)、QueryDeviceName() など...
次のようなコード:
connect メソッドが 2 回呼び出される原因となります...呼び出しの間に破棄されるのはなぜですか?
c# - TcpListener.AcceptTcpClient は重要でない例外をスローしますか?
私のアプリケーションでは、現在、AcceptTcpClient (または EndAcceptTcpClient) が例外をスローするとリッスンを停止しています。通常、リスナーを停止すると (ソケット エラー 10004)、またはネットワーク アダプターを切断すると、例外がスローされます。
しかし、クライアントが原因で、例外を無視 (またはログに記録) して AcceptTcpClient の呼び出しを続行する必要がある例外はありますか?
c# - C#FileStreamで「Zip」ファイルを読み取る
TCPClientを使用してリモートコンピューターとのネットワーク接続を確立するプログラムを作成しました。これを使用して、ファイルを100kチャンクでリモート.netアプリケーションに転送し、次にそれらをハードドライブに書き込みます。ZIP ファイルを除いて、すべてのファイル転送は正常に機能します。再構築されたファイルは常に 98K であることに注意してください...ZIP ファイルには、この方法での処理を妨げる暗い秘密があります。ここでも、画像、xls、txt、chm、exe など、他のすべてのファイル転送は正常に機能します。
混乱している
c# - ターゲット マシンがアクティブに拒否したため、接続できませんでした
C# で単純な Hello World TCP/IP クライアント サーバー アプリを作成していますが、クライアントを接続できません。誰でも追加のトラブルシューティング手順を提供できますか? アイデアが枯渇し始めている...
コードの関連セクションは次のとおりです。
サーバ:
クライアント:
クライアント マシンからサーバーに ping を実行できますが、バインドされたポートを使用してサーバーに telnet で接続できません。私はさまざまなポートを試しました (いくつかは 8000 代前半で、いくつかは 40000 前後です)。両方のシステムで Windows ファイアウォールを無効にしました。システムは、インターネット上にないルーターに接続されています。指定されたポートで着信要求をサーバーマシンに転送するようにポート転送を設定して、または設定せずに試しましたが、効果はありませんでした。
私がトラップできた唯一の例外は、クライアントによってスローされます。
ターゲット マシンがアクティブに拒否したため、接続できませんでした。
を確認しましたInnerException
が、何もないようです。これが基本的な例外です。それは正しいでしょうか?
他に何を見ればよいかわからない - 追加のトラブルシューティング手順が役立つ場合があります。
ありがとう!
c# - 「InvalidOperationException」を取得せずにC#で「using」を使用するにはどうすればよいですか?
正常に動作する次のコードを置き換えようとしています
と
しかし、私はInvalidOperationException
ことわざを取得します
接続されていないソケットでの操作は許可されていません。
何が問題で、どうすれば修正できますか?
詳細:私はこのコードの前にoc.Connectを持っているので、接続されています。初めて使用したいときは正常に動作します。その後、その例外が発生します。少し遊んで、今私は得る:
破棄されたオブジェクトにアクセスできません。\r\nオブジェクト名: 'System.Net.Sockets.Socket'。
c# - C# でこの TCP 接続を処理するための推奨される方法は何ですか?
IR コマンドをルーティングする目的で GlobalCache GC-100-12 と通信するサーバー アプリケーション (シングルトンの単純な .NET コンソール アプリケーション) があります。ローカル ネットワーク上のさまざまな .NET WinForm クライアントがサーバー アプリケーションに接続し、ASCII コマンドを送信します。サーバー アプリケーションは、これらの ASCII コマンドをキューに入れ、TCP 接続を介して GC-100-12 に送信します。
私の質問は、サーバーの観点からこの接続を処理する最良の方法は何ですか? 次の 2 つの方法が考えられます。
個々の要求ごとに新しい TcpClient を作成して開きます。リクエストが完了したら、TcpClient を閉じます。
サーバーの起動時に 1 つの TcpClient を作成して開き、(必要に応じて) キープアライブを使用して、サーバー オブジェクトの存続期間中、接続を開いたままにします。
リクエストごとに新しい TcpClient を作成するオーバーヘッドが気になるので、この質問をします。高額な手術ですか?これは悪い習慣ですか?
現在、私は #1 を実行しており、各送信の結果をコンソールに出力しています。時折、一部の接続がタイムアウトし、コマンドがルーティングされないことがあります。これは、毎回新しい TcpConnection を作成するオーバーヘッドが原因なのか、それとも何か他のことが原因なのか疑問に思っていました。
接続が切断された場合は再作成する必要があり、その状況を処理するにはもう少しコードが必要になるため、#2 はより複雑であることがわかります。
これに関する一般的なアドバイスを探しています。TcpClient クラスを扱った経験はあまりありません。
ssl - TCPサーバー上のSslStreamは、RemoteCertificateNotAvailableを使用してクライアント証明書を検証できません
この質問はすべてSslPolicyError.RemoteCertificateNotAvailable
エラーの解決に関するものです。
もう一方の端にSSLStreamとTCPクライアントを備えたTCPサーバーを開発しました。
サーバーを次のように認証します。
クライアントを次のように認証します。
からクライアント証明書を読み込んでいますTrusted Publishers - Local Machine
。
両方とも同じマシンで実行されています。
信頼できる発行元ストアではなく、.cerファイルと.pfxファイルからクライアント証明書をロードしてみました。ただし、サーバーのクライアント(リモート)証明書バリデーターのコールバックSslPolicyErrors
は、RemoteCertificateNotAvailable
エラーがあることを検出して失敗します。
delphi - httpプロキシを介してTTcpClientに接続します
delphiのhttpプロキシサーバーを介してサーバーに接続するにはどうすればよいですか?SOCKS5プロキシはどうですか?
Googleには何の提案もありません!