출처 :
VS2005에서 ATL프로젝트 컴파일시 unknwn.idl의 QueryInterface 메서드 부분에서 MIDL2025, MIDL2026 에러가 나는 경우가 있다.
에러 메시지:
오류 1 error MIDL2025 : syntax error : expecting ] or , near “annotation” E:Program FilesMicrosoft SDKsWindowsv6.0AIncludeunknwn.idl 108
오류 2 error MIDL2026 : cannot recover from earlier syntax errors; aborting compilation E:Program FilesMicrosoft SDKsWindowsv6.0AIncludeunknwn.idl 108
이 상황은 VS2005의 midl.exe가 구문 해석을 제대로 못해서 그렇다.
이럴경우 해결법은…
1. 최신 Microsoft SDKs를 설치
2. VS2005의 도구 -> 옵션 -> 프로젝트 및 솔루션 -> VC++ 디렉토리로 이동하여 실행파일 경로에서 최신 Microsoft SDKsWindows6.0(또는 6.0A)Bin 디렉토리를 추가 해 준다.
물론 기존 midl.exe가 들어 있는 디렉토리 보다 상위에 있어야 한다.
MS는 Native C++은 지원이 넘 약한거 같다. 툴의 성능 향상을 바래 본다. ㅡㅡ;
본인도 동감한다. ^^: