윈소켓 예제

윈소켓 예제
2 Agosto, 2019 fabio

그래서 위의 예에서 우리는 방법을 배웠습니다 : 1. 소켓 2 만들기. 원격 서버 3에 연결합니다. 일부 데이터 4를 보냅니다. 응답을 수신 응용 프로그램은 응용 프로그램을 대신하여 타사 DLL이 WS2_32.DLL을 사용할 수 있도록 모든 성공적인 WSAStartup() 호출에 대해 하나의 WSACleanup() 호출을 호출해야 합니다. 예를 들어 응용 프로그램이 WSAStartup() 을 세 번 호출하는 경우 WSACleanup() 를 세 번 호출해야 합니다. WSACleanup()에 대한 처음 두 호출은 내부 카운터를 분리하는 것 외에는 아무 것도 하지 않습니다. 작업에 대한 최종 WSACleanup() 호출은 작업에 필요한 모든 리소스 할당을 해제합니다. 훌륭한 튜토리얼이지만 스레드의 코드 예제는 어디에 있습니까? 연결 처리 섹션에 빈 상자가 표시됩니다. 다음 콘솔 출력은 Visual C++ 6.0을 사용하고 공용 IP를 사용하여 다시 컴파일된 이전 클라이언트-서버 프로그램 예제입니다.

이전 버전의 Windows SDK에서는 위의 경로의 버전 번호가 변경됩니다. 예를 들어, Winsock 샘플 소스 코드는 Windows Vista용 Windows SDK에 의해 다음 기본 디렉토리에 설치되어 있습니다. 이 프로그램은 TCP 프로토콜을 사용합니다. 함수 전송은 단순히 데이터를 전송합니다. 소켓 설명자, 보낼 데이터 및 크기가 필요합니다. 다음은 google.com IP에 일부 데이터를 보내는 매우 간단한 예입니다 : 함수 recv는 소켓에서 데이터를 수신하는 데 사용됩니다. 다음 예제에서는 마지막 예제와 동일한 메시지를 보내고 서버로부터 회신을 수신합니다. 다음 코드는 이전에 설명한 Winsock 함수 및 구조를 사용한 서버 및 클라이언트 프로그램 예제입니다. 이 경우 클라이언트-서버 통신을 가능하게 하려면 서버 설정을(인수- 프로토콜, 포트 번호 등을 통해) 클라이언트 설정과 일치시켜야 합니다.

예를 들어 UDP 서버를 실행하도록 선택한 경우 클라이언트도 UDP 클라이언트여야 합니다. 먼저 서버 프로그램을 실행하 시고 다른 컴퓨터에서 클라이언트를 실행할 수 있습니다. 이 예제에서는 로컬 Windows Xp Pro 컴퓨터에서 인수의 기본 값을 사용하여 서버와 클라이언트를 실행했습니다. 왼쪽 창에서 프로젝트 이름인 루트 폴더를 확장한 다음 링크 탭을 선택합니다. 개체/라이브러리 모듈의 끝: 필드, 아래와 같이 라이브러리 이름을 입력합니다. 확인 버튼을 클릭하여 프로젝트 설정 페이지를 닫습니다. 그런 다음 다음에 있는 프로그램 예제를 컴파일하고 실행할 준비가 되었습니다. 모든 예제는 디버그 모드에서 성공적으로 컴파일되고 실행됩니다. 릴리스 모드로 실행하는 경우 연결 프로세스와 관련된 몇 가지 오류가 있지만 여기서는 문제가 되지 않습니다.

그림에 사용되는 클라이언트 및 서버 응용 프로그램은 매우 기본적인 클라이언트 및 서버입니다. Microsoft Windows 소프트웨어 개발 키트(SDK)에 포함된 샘플에는 고급 코드 예제가 포함되어 있습니다. HI, “연결 처리”의 코드 예제가 사라졌습니다. 수정하십시오. 일부 단계는 서버와 클라이언트와 비슷합니다. 이러한 단계는 거의 동일하게 구현됩니다. 이 가이드의 단계는 생성되는 응용 프로그램의 유형에 따라 다릅니다. Windows Sockets 2에서 사용할 수 있는 몇 가지 관련 기능, 구조 및 매크로를 살펴보고 프로그램 예제의 사용을 살펴보겠습니다.