작성
·
381
·
수정됨
0
해당 강의를 들으며 UE5로 제작한 프로젝트에 네트워크를 추가하고자 connect()와 socket(), WSARecv(), WSASend() 등등의 윈도우 소켓 API 함수를 사용하려고 하니
NetClient.cpp.obj : error LNK2019: __imp_WSARecv"protected: bool __cdecl NetClient::RegistWSARecv(void)" (?RegistWSARecv@NetClient@@IEAA_NXZ) 함수에서 참조되는 확인할 수 없는 외부 기호
NetClient.cpp.obj : error LNK2019: __imp_WSASend"private: void __cdecl NetClient::SendPost(void)" (?SendPost@NetClient@@AEAAXXZ) 함수에서 참조되는 확인할 수 없는 외부 기호
헤더나 라이브러리 추가도 해뒀는데도, 이런 식의 링크 에러가 발생했습니다.
그 외에도 메모리 덤프를 뜨기 위해 호출한 MiniDumpWriteDump()에서도 같은 에러가 발생했구요..
CCrashDump.cpp.obj : error LNK2019: MiniDumpWriteDump"public: static long __cdecl CCrashDump::MyExceptionFilter(struct EXCEPTIONPOINTERS *)" (?MyExceptionFilter@CCrashDump@@SAJPEAU_EXCEPTION_POINTERS@@@Z) 함수에서 참조되는 확인할 수 없는 외부 기호
해당 함수들은 언리얼에서 사용이 불가능한걸까요? 그렇다면 어떤 방식으로 언리얼 클라이언트에서 서버에 연결해야할까요.. 가르침 부탁드리겠습니다..
답변 1
0
이전 회사 프로젝트에서 WSA 류는 아니지만,
select 모델을 사용했던 것으로 보면 되어야 정상입니다.
(다만 모바일 빌드를 하면 윈도우 전용은 못 쓰겠죠)
자세한 내용은 구글신의 가호를 받아보시기 바랍니다.
https://forums.unrealengine.com/t/include-winsock2-h-not-working/137205
https://kclient.tistory.com/archive/202206
언리얼 새 프로젝트를 생성 후 강사님께서 알려주신 두 번째 링크에 올라와있는 코드 그대로 추가해서 실행해도 같은 링크 에러가 발생합니다...