私が作成したプログラムについて助けが必要です。
これは単純なクライアント サーバー接続プログラムであり、完全に正常に動作しますが、#include に関連する openCV を追加するとすぐに、試みさえしなかったかのように、接続が即座に失敗します。
私がオンラインで見つけた唯一の関連するものは、この投稿でした: opencvライブラリが追加されたときにソケットが機能しません
コードは次のとおりです。opencv #include がコメント アウトされている限り問題なく動作しますが、追加された場合は常に接続に失敗します。
#define _WINSOCK_DEPRECATED_NO_WARNINGS
#include <iostream>
#include <winsock2.h>
#include <string>
//#include <opencv2/opencv.hpp>
//#include <opencv2/objdetect.hpp>
//#include <opencv2/imgcodecs.hpp>
//#include <opencv2/highgui/highgui.hpp>
//#include <opencv2/imgproc/imgproc.hpp>
using namespace std;
//using namespace cv;
#pragma comment(lib, "Ws2_32.lib")
int main()
{
WSADATA WSAData;
SOCKET server, client;
SOCKADDR_IN serverAddr, clientAddr;
WSAStartup(MAKEWORD(2, 0), &WSAData);
server = socket(AF_INET, SOCK_STREAM, 0);
serverAddr.sin_addr.s_addr = inet_addr("addresshere");
serverAddr.sin_family = AF_INET;
serverAddr.sin_port = htons(porthere);
bind(server, (SOCKADDR*)&serverAddr, sizeof(serverAddr));
listen(server, 0);
cout << "Listening for incoming connections..." << endl;
int clientAddrSize = sizeof(clientAddr);
client = accept(server, (SOCKADDR*)&clientAddr, &clientAddrSize);
cout << client << "\n";
}