검색어 입력폼

네트워크 프로그래밍 (멀티 쓰레드)

저작시기 2015.02 |등록일 2017.03.25 워드파일MS 워드 (docx) | 13페이지 | 가격 2,000원

목차

없음

본문내용

#pragmacomment(lib, "ws2_32")
#include<winsock2.h>
#include<stdlib.h>
#include<stdio.h>
#define SERVERPORT 9000
#define BUFSIZE 512
// 소켓함수오류출력후종료->심한오류
voiderr_quit(char *msg)
{LPVOID lpMsgBuf;
FormatMessage( ->오류코드를문자열로바꾸는함수
FORMAT_MESSAGE_ALLOCATE_BUFFER|
FORMAT_MESSAGE_FROM_SYSTEM,
NULL, WSAGetLastError(),->WSAGetLastError() ->에러코드가넘어옴
MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
(LPTSTR)&lpMsgBuf, 0, NULL);->&lpMsgBuf ->오류문자열시작주소
//MessageBox(NULL, (LPCTSTR)lpMsgBuf, msg, MB_ICONERROR) ;
->lpMsgBuf -> long point(타입) MsgBuf(의미)
LocalFree(lpMsgBuf);
exit(-1);}
// 소켓함수오류출력->심하지않은에러발생시
voiderr_display(char *msg)
{LPVOID lpMsgBuf;
FormatMessage(
FORMAT_MESSAGE_ALLOCATE_BUFFER|
FORMAT_MESSAGE_FROM_SYSTEM,
NULL, WSAGetLastError(),
MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
(LPTSTR)&lpMsgBuf, 0, NULL);
printf("[%s] %s", msg, (LPCTSTR)lpMsgBuf);->출력만시켜준다.
LocalFree(lpMsgBuf);}
// 사용자정의데이터수신함수// =>추가
intrecvn(SOCKET s, char *buf, intlen, int flags)
{int received;->recv()함수의리턴값을저장하는변수char *ptr = buf;->포인터변수ptr이애플리케이션버퍼의시작주소를가리키고데이터를읽을때마다증가한다.

참고 자료

없음
다운로드 맨위로