作成中のゲームで UDP 接続を確立しようとしています。ソケットへの入力は 2 番目のスレッドを介して読み取られるため、メッセージを待機している間もゲームを実行し続けることができます。別のプロジェクトで動作するようになりましたが、ゲーム コードに移植すると、未解決の外部シンボル エラーが発生します。
LNK2019: 未解決の外部シンボル "void __cdecl receiveThread(void *)" (?receiveThread@@YAXPAX@Z) が関数 "public: bool __thiscall Network::setupServerUDP(void)" (?setupServerUDP@Network@@QAE_NXZ) で参照されています。
私はこれをグーグルで検索しましたが、誰もがランタイム ライブラリをマルチスレッドに設定する必要があると言っています。 . どこかで間違ったものに設定されたばかげたオプションだと確信しています。ただ、それが何なのか、ちょっと思いつきません。
ws2tcpip.h をインクルードし、正しいライブラリにリンクしました: #pragma comment(lib, "Ws2_32.lib")。
テスト プロジェクトとゲーム プロジェクトの唯一の違いは、テスト プロジェクトがコンソール アプリケーションで、もう一方が Windows アプリケーションであることですが、それが問題になる理由がわかりません。考え?
ご協力いただきありがとうございます!
乾杯、
マキシム