WTL이란 Windows Template Library의 약자로 윈도우 어플리케이션이나 UI를 개발하기 위한 라이브러리이다. ATL을 확장했고 컨트롤, 다이얼로그, 프레임 윈도우 등을 제공한다. 작고 빠르다는 장점이 있지만 MS에서 만들기만 하고 공식적으로 지원을 하지 않기 때문에 관련된 문서가 찾기 힘들다.
비주얼 스튜디오에 포함이 되어 있지 않으므로 사용하려면 다운을 받아 설치를 해야 한다. 그런데 WindowsCE에 설치를 해 사용하려면 아래와 같은 에러가 나타난다.
1>_ATL_NO_HOSTING was defined because _CE_ACTIVEX was not defined.
1>C:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\atlbase.h(4621) : error C2059: syntax error : 'string'
1>C:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\atlbase.h(4621) : error C2059: syntax error : ')'
1>C:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\atlbase.h(4621) : error C2143: syntax error : missing ')' before 'throw'
이를 해결하기 위해서는 stdafx.h의 #pragma once 밑에 아래를 적어주면 된다.
#define _ATL_WINCEINTERNAL