Visual C++ 2008 Feature Pack 사용시 오류
출처 : http://blog.naver.com/astrya/140051681865
Feature pack 설치 후
최초 실행시 지정된 파일을 찾을 수 없다는 에러가 나올 수 있다..
아마도 eror C1189 를 뿌릴것이다. 한글판 메세지는 모르겠다.. 현재는 영문판만 FP가 지원되니..
"Your version of the Windows SDK is earlier than 6.0. Try setting the 'WINVER' and '_WIN32_WINNT' definitions in your project to less than 0x0600."
이 현상은 stdafx.h 에 아래 두줄 추가로 해결이 된다.
#define WINVER 0x0501
#define _WIN32_WINNT 0x0501
2008부터는 Default 로 0x0600값으로 define 되기 때문이다.
targetver.h 파일을 살펴보면 아래와 같은 내용으로 되어 있다.
#ifndef WINVER // 필요한 최소 플랫폼을 Windows Vista로 지정합니다.
#define WINVER 0x0600 // 다른 버전의 Windows에 맞도록 적합한 값으로 변경해 주십시오.
#endif
#ifndef _WIN32_WINNT // 필요한 최소 플랫폼을 Windows Vista로 지정합니다.
#define _WIN32_WINNT 0x0600 // 다른 버전의 Windows에 맞도록 적합한 값으로 변경해 주십시오.
#endif
#ifndef _WIN32_WINDOWS // 필요한 최소 플랫폼을 Windows 98로 지정합니다.
#define _WIN32_WINDOWS 0x0410 // Windows Me 이상에 맞도록 적합한 값으로 변경해 주십시오.
#endif
#ifndef _WIN32_IE // 필요한 최소 플랫폼을 Internet Explorer 7.0으로 지정합니다.
#define _WIN32_IE 0x0700 // 다른 버전의 IE에 맞도록 적합한 값으로 변경해 주십시오.
#endif
보다시피 targetver.h 파일을 수정해도 된다. 그냥 난 익숙한 stdafx.h에 추가를 해버렸다..
중요한건 무작정 변경하는게 아니라 최소 플랫폼을 무엇으로 할것인가를 생각해야한다는 것이다.
참고: WINVER 0x0500 보다 크면 Win2000이상이라는 뜻이다.
[출처] Visual C++ 2008 Feature Pack 사용시 오류|작성자 정신줄
'유용한 것들_etc' 카테고리의 다른 글
빌드 자동화 (0) | 2010.03.10 |
---|---|
Vista Installation - showing Booting GRLDR and some other extra messages (0) | 2010.03.10 |
Property Sheets (0) | 2010.03.04 |
max sdk에서 사용하는 라이브러리 파일 (0) | 2010.01.23 |
zlib 라이브러리 (0) | 2010.01.22 |