winsock

    2

    1答えて

    TCPサーバーとして動作するVB6を使用して数年前にソフトウェアを作成し、クライアントから複数の接続を受け取りました。 ソフトウェアの基本的なアイデアは、特定のポートでリッスンし、異なるクライアントからの接続を受け入れ、データを分析する別のwinsockに各接続を渡し、DBを探し、適切なメッセージで応答し、接続を閉じます。アプリケーションの起動時に ソケットの初期化: For i = 1 To M

    0

    1答えて

    これは現在のコードです。複数のクライアントを同時に処理できるようにスレッドを導入しようとしていますが、これを行う方法を理解するのはちょっと困っています。どんな助けもありがとう。 クライアント: int create_client() { WSADATA wsaData; SOCKET ConnectSocket = INVALID_SOCKET; struct addrinfo *res

    -2

    1答えて

    私はwinsock2を使用してC++でソケットプログラムを作成していますが、WSAAcceptを使用して接続を条件付きで受け入れようとしています。以下に示すようにWSDNAceptのlpfnCondition引数のMSDNからConditionalFunctionという例をコピーしました。 ConditionalFunctionWSABUF buffer = *lpCallerDataそのように私

    3

    1答えて

    WindowsパケットキャプチャソフトウェアNpcapを開発しています。そして、Windowsカーネルに基づいてループバックraw IPソケットを送信する必要があります。しかし、WskSocket->Dispatch->WskSendToは常にWin7 SP1上でDRIVER_IRQL_NOT_LESS_OR_EQUAL BSODを引き起こします。奇妙なことは、私のコードはWin8、Win10のよ

    0

    1答えて

    : https://msdn.microsoft.com/pl-pl/library/windows/desktop/ms737526(v=vs.85).aspx 受け入れる機能を使用して、接続確立が送信者間の全体の距離 を通過した前に、関数が を返すことを実感受信機。これは、accept関数 がCONNECT ACKメッセージを受信するとすぐに戻ります。 CONNECT ACKメッセージは、 が

    0

    1答えて

    私は、ブロッキングrecv()コールが含まれているスレッドを持って、このような何か: { while(1) { recv(socket, buffer, sizeof(buffer), 0); } } は今、私が何をしたいのか、それがそのブロッキング状態を終了させるために、別のスレッドからrecv()機能を知らせるためです。 次のいずれか: set

    0

    1答えて

    TcpClient/TcpListenerを使用してローカルマシン上の他のアプリケーションからのリクエストをリスンするためのC#アプリケーションを開発しました。今、どのプロセスが実際にリスナーに接続しているのかを判断する必要があります。 GetExtendedTcpTableを使用して、どのプロセスがどのポートを使用しているかを確認するいくつかの例があります。しかし、それは私のリスナーへのすべての

    0

    1答えて

    私のサーバーは着信接続のためにポート1234をリッスンしています。ソケットの配列を作成しました。その配列をループして、すでに空いているソケット(Closed = 0)ソケット配列で使用可能な空きソケットがない場合は、新しい着信ソケットを保持する配列。これは後で各接続のみを識別するソケットのインデックスになります。それが良いアプローチであるかどうかは分かりませんが、同時に開かれた約15人のクライアン

    7

    1答えて

    接続要求を待機しているスレッドでブロックaccept()呼び出しがあります。アプリケーションが終了しようとしているとき、私はaccept()を待っているスレッドに正常に終了するように通知したいと思います。私はsend()とrecv()のタイムアウト値を設定できますが、私はaccept()でそれを行うことはできません。 ソケットを非ブロックにしてselect()を使用し、select()のタイムアウ

    -1

    2答えて

    最後に受信したパケットのIPアドレスとポートを取得してconst char*として保存するにはどうすればよいですか?しかし、私たちのポートが空白になりますIPを出力します使用されて const char* strIP = inet_ntoa(((struct sockaddr_in*)&RecvAddr)->sin_addr); const char* strPort = std::to_str