問題タブ [winsock2]

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.

0 投票する
1 に答える
3077 参照

visual-c++ - Bluetoothペアデバイスを入手する

新しいデバイスの検出を実行する前に、ペアリングされたBluetoothデバイスをスキャンしてサービスを探したいと思います。

winsockとペアリングされたBluetoothデバイスを入手する方法はありますか?

サンプルを教えていただけますか?

ありがとう!

0 投票する
1 に答える
302 参照

windows - Windowsでwinsock2を使用してパケットマングリングを行う方法は?

私はここで例に従っています、

しかし、それらのどれもパケットを変更する方法の例を提供していません(以前は、パケットを読み取ることしかできないことを発見するためにのみwinpcapを使用していました!)。

どの関数が実際に着信/発信パケットを変更できるかについて、誰かが私にいくつかの手がかりを与えることができますか?

0 投票する
1 に答える
525 参照

select - Winsock Select() 関数で 0xC00000FD 例外が発生する

私は選択ベースのサーバーを持っています。ソケットはブロッキング モードですが、select() 関数では 250 ミリ秒を使用しています。タイムアウト。

基本的に、私のサーバーは 1 つのクライアントのみを受け入れ、そのクライアントにデータを送信します。サーバーからクライアントにデータを送信するだけで、何週間も問題なく動作しています。

しかし、select() 行で 3 ~ 4 時間後にクライアントがサーバーにデータを送信すると、スタック オーバーフロー例外 (0xC00000FD) が発生することに気付きました。Select()のMSDNページを何十回も赤くしましたが、これに関連する言及はありません。私は本当に立ち往生しています。どんな助けでも大歓迎です。

ちなみに、ネットで見つけた例。

http://tangentsoft.net/wskfaq/examples/basics/select-server.cpp

ここでは、クライアント接続を受け入れた後、非ブロッキング モードに設定しています。そして、次のようにコメントされています。

上記の「安全」とは何を意味しますか?これは私の問題だと思いますか?私の実装では、接続されているものはブロッキングモードになっているためですか?

前もって感謝します

0 投票する
3 に答える
3177 参照

c - winsockコンパイルエラー

次のエラーは、windowsとwinsock2のみが含まれているファイルからのものです。

すでに試されたこと:winsock.dllファイルをコンパイルするコンパイラおよびプログラムと同じディレクトリに配置し、system32ディレクトリに配置し、regsrv32コマンドを使用してレジストリに入力します。ここからどこに行けばいいのかわからないので、アドバイスをいただければ幸いです。。。

0 投票する
2 に答える
382 参照

c++ - C++ Winsock 2 の質問

MSDN で Winsock2 のドキュメントを読みましたが、まだいくつかの点を明確にする必要があります。

WSAAsyncSelect() を使用したときに得られるセットアップのようなものを作成する予定でしたが、別のスレッドを使用しました。WSAEventSelect() を使用して、複数のソケットを 1 つのイベント オブジェクトにリンクできますか?

代わりに完了ポートを使用した場合、どのイベントが完了ポートを介して取得されますか? MSDN にはファイル操作に関するリストがありますが、完了ポートを介して送信されるイベント (FD_READ、FD_WRITE など) に関連付けるのに苦労しました。どのイベントが完了しているかを知る方法はありますか? または、何かを送信または受信するたびに、これに注意して構造体に保存する必要がありますか?

ありがとうございます *誰かがこれについて私に与えることができる助け = D

編集:さらに良いことに、これを行うには C# に切り替えるだけでよいでしょうか? 非常に人気があり、この特定のタスクにより適しているようです。

0 投票する
2 に答える
1110 参照

visual-studio-2008 - MFC は winsock2 をサポートしていますか?

私は Visual Studio の初心者です。MFC が wi​​nsock1 のみをサポートする場所をいくつか読みました。MFC が wi​​nsock2 をサポートしていないというのは本当ですか?

0 投票する
2 に答える
1255 参照

visual-studio-2008 - winsock2でTransmitPackets関数を書くには?

UDP を使用して VC++(サーバー) でファイル転送アプリケーションを作成しています。winsock2で知ったのですが、ファイル転送に役立つ機能がいくつかあります。誰でも私を助けることができますか?また、winsock2 の TransmitPackets のサンプル アプリケーションを探していますが、gettng はありません。私を助けてください。ありがとうございました。

0 投票する
1 に答える
237 参照

c++ - MFC winsock1 および 2

私は自分のプロジェクトで深刻な問題を抱えています。

2 つのレーダーを自分のプログラムにリンクする必要がありますが、最初のレーダーには winsock を使用する独自のライブラリがあり、2 番目のレーダーには winsock2 を使用したいと考えています。

どうやってやるの?

現時点では、winsock.hおよび内のインクルードから多くの再定義エラーが発生しますwinsock2.h

最初のレーダー ライブラリは既に DLL であることを考慮してください。ヘッダーと lib ファイルしかありません (ソースはありません)。

ご回答ありがとうございます。

0 投票する
1 に答える
3728 参照

winsock2 - WSAEAFNOSUPPORTエラー

こんにちは私はサーバーが接続ピアへのIPとポートを交換するための仲介者となるP2Pチャットアプリケーションを実装しています。WSAEAFNOSUPPORT10047エラーが発生します。

UDPソケットを作成しました

sockfd = socket(AF_INET、SOCK_DGRAM、IPPROTO_UDP); 次に、それをローカルIPとポートにバインドするiam。

if(bind(sockfd、(struct sockaddr *)&localaddr、sizeof(localaddr))<0){Error_Code( "create_socket:bind()"); -1を返します。}

それから私はサーバーに連絡しています。

//サーバーに接続します

sendto(sockfd、pBuffer、sizeof(nMessageType)、0、(const sockaddr *)&config.serverAddr、size);

サーバーは、接続されている他のピアを追跡します。ピアがサーバーに接続すると、他のピアのIPとポートを返します。そのため、ピアはIPとポートを使用して他のピアに直接接続できます。しかし、他のピアにデータを送信しているときにエラーが発生します

//データをピアに送信

int ret = sendto(sockfd、sendBuf、sizeof(nMessagetype)、0、(const sockaddr *)&m_peer.publicaddr、sockAddLen); 10047WSAEAFNOSUPPORTエラーを返します。

ここで私はサーバーと他のピアに接続するために同じソケットを使用していますが、これはこの理由ですか?ここで何が悪いのかわかりません。サーバーとは正しく接続できますが、他のピアとの接続に失敗しています。

0 投票する
0 に答える
1609 参照

c++ - select() と WSAEventSelect() と WSAWaitForMultipleEvents() のパフォーマンスの違い

社内で開発されたクロス プラットフォーム ライブラリを使用するアプリケーションがあります。さまざまな理由から、少なくとも Windows ではこのライブラリを使い続ける必要があります。

そのライブラリには、使用する必要があるソケット クラスが含まれており、select を呼び出しています。

ライブラリを少し変更する機能があります。WSAWaitForMultipleEvents または WSAEventSelect に移動すると、パフォーマンスが向上しますか?

クライアント ライブラリはブロッキング I/O に基づいていることに注意してください。

つまり、select を呼び出して、recvfrom を発行する前に最初に読み取りをチェックし、書き込みについても同じことを行います。

私が見ることができることから、選択のためだけにかなり多くの設定があり、LinuxベースのUDPサーバーが時々それを失速させる受信機を圧倒しているため、Windowsネイティブバージョンに行くことでポーリング速度を改善できるかどうか疑問に思いました. つまり、多くのことをしていないときのレシーバーは、ついていくのに苦労します。受信バッファを増やすことは非常に役に立ちましたが、今は選択を見ています。