kyuseo의 게임 프로그래밍
WINVER / _WIN32_WINDOWS / _WIN32_WINNT 정의하기 본문
개요.. |
stdafx.h 최상단에 사용가능한 윈도우(Window) 및 익스플러러(Explorer) 버전을 define 함에 따라, 사용가능 한 라이블러리 및 구조체가 바뀝니다. 따라서 지원하는 최소한의 운영체계를 결정하고 그에 따른 WINVER 을 선언하여 사용하면 해당 윈도우 이상 지원됩니다.
예) Windows 98 / Explorer 5.0 지원 할 경우 아래와 같이 정의한다.
#define WINVER 0x0410
#define _WIN32_IE 0x0500
MSDN 에 정의된 정보 |
Minimum system required | Macros to define |
Windows Server 2003 | _WIN32_WINNT>=0x0502 WINVER>=0x0502 |
Windows XP | _WIN32_WINNT>=0x0501 WINVER>=0x0501 |
Windows 2000 | _WIN32_WINNT>=0x0500 WINVER>=0x0500 |
Windows NT 4.0 | _WIN32_WINNT>=0x0400 WINVER>=0x0400 |
Windows Me | _WIN32_WINDOWS=0x0500 WINVER>=0x0500 |
Windows 98 | _WIN32_WINDOWS>=0x0410 WINVER>=0x0410 |
Windows 95 | _WIN32_WINDOWS>=0x0400 WINVER>=0x0400 |
Internet Explorer 6.0 | _WIN32_IE>=0x0600 |
Internet Explorer 5.6 | _WIN32_IE>=0x0560 |
Internet Explorer 5.01, 5.5 | _WIN32_IE>=0x0501 |
Internet Explorer 5.0, 5.0a, 5.0b | _WIN32_IE>=0x0500 |
Internet Explorer 4.01 | _WIN32_IE>=0x0401 |
Internet Explorer 4.0 | _WIN32_IE>=0x0400 |
Internet Explorer 3.0, 3.01, 3.02 | _WIN32_IE>=0x0300 |
예제 |
// stdafx.h : 자주사용하지만자주변경되지는않는 // 표준시스템포함파일및프로젝트관련포함파일이 // 들어있는포함파일입니다.
#pragma once
#ifndef VC_EXTRALEAN #define VC_EXTRALEAN // 거의사용되지않는내용은Windows 헤더에서제외합니다. #endif
// 아래지정된플랫폼에우선하는플랫폼을대상으로하는경우다음정의를수정하십시오. // 다른플랫폼에사용되는해당값의최신정보는MSDN을참조하십시오. #ifndef WINVER #define WINVER 0x0500 // 윈도우 2000 이상 지원 #endif
#ifndef _WIN32_WINNT #define _WIN32_WINNT 0x0400 // 윈도우 NT 4.0 이상 지원 #endif
#ifndef _WIN32_WINDOWS #define _WIN32_WINDOWS 0x0410 // 윈도우 98 이상 지원 #endif
#ifndef _WIN32_IE #define _WIN32_IE 0x0400 // IE 4.0 이상 지원 #endif |