천객만래 [千客萬來] (It has an interminable succession of visitors)

컴파일하는데 이런 에러가 발생한다.
fatal error C1189: #error :  WINDOWS.H already included.  MFC apps must not #include <windows.h>

이런에러에 대한 참고 내용이 아래 링크에 있다. 
http://social.msdn.microsoft.com/forums/en-US/vcgeneral/thread/2ab6862f-0d90-467a-b283-f62f6aef96fe/

그리고 헤더 파일에 다음이 포함된다.

#include <afxcoll.h>.

아래에서 stdafx.h 헤더 파일을 살펴보자.

#pragma once

#ifndef STRICT
#define STRICT
#endif

#include <afxcoll.h>
#define _ATL_ALL_WARNINGS
#include "targetver.h"
#include "atlstr.h"

#define _ATL_APARTMENT_THREADED
#define _ATL_NO_AUTOMATIC_NAMESPACE

#define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS    // some CString constructors will be explicit



#include "resource.h"
#include <atlbase.h>
#include <atlcom.h>
#include <atlctl.h>


using namespace ATL;


이제 에러가 발생하지 않는다.
Posted by SB패밀리


VS2008에서 "fatal error C1083: 포함 파일을 열 수 없습니다.

'windows.h': No such file or directory" 의 에러가 나는 것은 아무래도 Platform SDK가 설치되어 있지 않아서 발생하는 것 같다.
 
처음에 내가 설치를 해서 MFC 응용프로그램의 아주 기본을 생성한 후에 아무런 수정도 하지 않은 상태에서 위와 같은
 
컴파일 에러가 발생해서 VS2008 사용을 포기까지 했었다.

그러다가 어떻게 해서든 2008로 컴파일 되는 모듈을 제작을 해야해서 어쩔 수 없이 검색을 하다가
 
PSDK 설치를 하라는 MSDL의 조언에 따라서 설치를 했더니 깔끔하게 문제는 해결되었다.

다음은 주소가 해당 PSDK를 설치할 수 있게 한다.

http://www.microsoft.com/downloads/deta ··· ang%3Den
( http://www.microsoft.com/downloads/details.aspx?familyid=E6E1C3DF-A74F-4207-8586-711EBE331CDC&displaylang=en )

(Windows SDK for Windows Server 2008 and .NET Framework 3.5(english))

설치를 하려면 C드라이브에 2.5GB의 여유 공간이 있어야 한다.

(Windows Vista이후에 나오는 MS의 제품은 왜이리 용량하고 메모리를 많이 먹는지. 리소스 제어 좀 하지... ㅡㅜ)

출처 :
2010.7.20 MFC컴파일중 no such : windows.h 에러
http://blog.naver.com/nayoungwong/90091817609

Posted by SB패밀리