9/3 API WinMain

정수현·2024년 9월 3일

API Programming

목록 보기
2/10

엔트리 포인트 함수 (Entry Point)

#include <windows.h>
#include <tchar.h>

int _tWinMain()
{
  return 0;
}

헤더 파일

  • #include <windows.h>
    : 데이터 타입, 함수 원형, 매크로 상수 등을 정의한다.

  • #include <tchar.h>
    : 범용 타입을 사용하기 위한 헤더

메인 함수

종류

WinMain - 유니코드 X
wWinMain - 유니코드 O
_tWinMain - 매크로, 범용적 형태

인자

int _tWinMain(HINSTANCE hInst, HINSTANCE hPrev, LPSTR lp, int nshow)
{
  return 0;
}

hInstance - 프로그램의 인스턴스 핸들
hPrev - 바로 앞에 실행된 현재 프로그램의 인스턴스 핸들 (없을 경우 NULL)
IpCmdLine 명령행으로 입력된 프로그램 인자
nShowCmd - 프로그램이 실행될 형태 (최소화, 보통, 최대화 모양 등이 전달됨)

MessageBox 함수

MessageBox(0, TEXT("문자열이다."), TEXT("타이틀문자열"), MB_OKCANCEL | MB_ICONHAND);

⑴ 윈도우의 핸들
⑵ 메시지 출력 내용
⑶ 타이틀바 문자열
⑷ 버튼의 모양 및 ICON 모양

exe 타입

프로젝트 생성 두 가지 방법

① Win32 프로젝트 방식

  • [ 구성속성 > 링커 > 모든 옵션 > 하위 시스템 > 창 ]

② 콘솔 프로그래밍

  • 코드 상단에 전처리 구문을 사용하여 변경 가능하다
    #pragma comment (linker,"/subsystem:windows")
    #pragma comment (linker,"/subsystem:console")

데이터 타입

  • API에서 사용되는 타입들은 대문자로 구성된다.
    P - Pointer
    LP - Win32에서 L 키워드는 의미 없다. (PSTR==LPSTR)
    T, t - 범용 타입
    W - Unicode Type
    C - const
    STR - 문자열

0개의 댓글