WSAEventSelect 는 스레드로 처리한다. WSAAsyncSelect 는 클라이언트의 이벤트(FD_READ, FD_CLOSE 등) 에 대해 메시지를 보내지만 WSAEventSelect 는 클라이언트의 이벤트에 대해 함수를 호출한다. 스레드는 64개 까지만 가능하다. 1 2 3 4 5 6 7 8 9 10 11 wile(1) // 스레드 { WSAEventSelect(SOCKET, h이벤트, FD_READ | FD_CLOSE) WSAEnumNetworkEvents(sock, g_hEvent[n], &netEvt); if(netEvt.lNetworkEvents & FD_ACCEPT) OnAccept(); if(netEvt.lNetworkEvents & FD_READ) OnRead(sock); if(ne..
CBN_SELCHANGE 알림 코드 사용자가 콤보 상자의 목록 상자에서 현재 선택 영역을 변경할 때 전송됩니다. 사용자는 목록 상자를 클릭하거나 화살표 키를 사용하여 선택을 변경할 수 있습니다. 콤보 상자의 부모 창은 이 알림 코드를 WM_COMMAND 메시지 형식으로 받습니다. CBN_SELCHANGE WPARAM wParam; LPARAM lParam; 매개 변수 wParam LOWORD에는 콤보 상자의 컨트롤 식별자가 포함되어 있습니다. HIWORD는 알림 코드를 지정합니다. lParam 콤보 상자에 대한 핸들입니다. CBN_SELCHANGE 메시지 도움말이 위 처럼 되어 있다. - https://learn.microsoft.com/ko-kr/windows/win32/controls/cbn-selc..
VisualStudio2022 업데이트하다가 다운로드 속도가 느려 업데이트 실패가 반복되어 정지시키고 수정을 하는 바람에 C++에서 MFC가 해제된 상태에서 수정이 되어 MFC 관련 설치 내용들이 삭제되어 열지 못하는 상태가 되어 결국 VisualStudio2022 를 다운받아 설치하는 과정까지 되풀이 되면서 설치 후 프로젝트를 열어보니 위 그림과 같이 호환되지 않음으로 되면서 컴파일이 안된다. 인스톨러에서 MFC 관련 패키지와 Windows 11, 10 SDK 를 수정 추가해도 같은 문제가 반복되어 기존에 다른 MFC 프로젝트 열어보니 문제 없이 열린다. 결국, 문제의 프로젝트 폴더에서 .vs 폴더 이름을 바꾸고(혹시 복구할 필요가 있을것을 대비) VisualStudio2022 에서 문제의 프로젝트를 ..
포트번호는 unsigned short int 를 사용하기 떄문에 이론상 0~65,535 사이 값을 사용할 수 있지만 아래와 같이 구분해서 적용해야 한다. 0~1,023 : 잘 알려진 포르트라고도 하며, 표준화된 프로토콜이 이미 사용하고 있는 포트 번호이다. (21 :FTP, 80:http 등) 1,024~49,151 : 등록된 포르트라고도 하며, 상업적인 어플리케이션을 개발하는 회사들이 등록하여 사용하는 포트 49,152~65,535 : 동적(Dynamic) 포트 라고도 하며, 즉흥적으로 할당되는 포트 일반적인 어플리케이션은 1,024~65,535 사이를 사용하는 것이 안전하다.