좀 연세가 있으신(?) 코더 분들중에는
아직도 Visual C++ 6.0 을 아직도 사용하시는 분들도 있다.
이런 분들을 위한 어드바이스...
1) 서비스 팩을 반드시 받아서 설치하라.
마지막 버전은 서비스 팩 6 이며, 사용 국가 언어에 맞추어 설치하라.
(여기서, MFC42.DLL 은 과연 몇 가지나 될까하는 의문도 생기는데,
결론부터 이야기하자면 천개가 넘는다!!!! DA책 참조...
이점은 배포시에도 주의하도록 해야 한다...)
그리고, 프로세스 팩을 설치한다면 반드시 영문(English)에다가
서비스팩 5 를 설치해야 할 것이다.
2) 플랫폼 SDK 를 활용하라.
이거 안 쓰는 분들 많은데, 꼭 써야 기능과 호환성 문제를 가능한한 극복할 수 있다.
참고로 VC+6 용 플랫폼 SDK 는 현재 최근 버전에서는 지원이 종료되었다.
2003년 2월 버전까지만 지원이 되므로, 그걸로 하도록 하자.
3) WIN64 는 당연히 안 된다.
어쩌겠는가... 미리 준비하지 않은 당신...떠나라~...어디로 가?!?!
4) 유니코드 지원은 최소한 미리 해두자.
VC+2005 부터는 유니코드가 디폴트 설정이다. (왜? WIN98은 공식 지원이 끝난 OS 이므로
MS 에서는 더 지원해줄 필요가 없기 때문이다...비스타까지 나왔는데...왜 허겄는가...)
거기에다가, XP, 비스타 등의 OS 가 기본인 대세에서 유니코드 지원은 피할 수 없다!!!
(미리 포팅하지 않고 중간에 할려면 입에서 단내가 날것이다...ㅋㅋ)
5) VC2005에서는 Secure 관련이 강화되었다.
(이것도 중간 코드를 이식하려면 귀찮고도 짜증나는 일이 될 것이다.
전처리기로 막을 수도 있지만, MS 비권장 사항은 절대로 하지 않는 것이 좋다!!!)
이제 strcpy() 등의 함수는 더 이상 안 키운다...
6) 6 타입 위자드도 못 쓴다.
6 까지는 VC위자드가 바이너리이지만, 그후는 XML 기반이다.
다 뜯어 고치던가...접어라....
7) 매니페스트 처리도 추가하라
8) 6 에서 비스타 관련 지원...
당연히 안 된다!!! 특히 보안 필요한 까탈한 API 호출 시는 GG 쳐라...
9) 결론은 빨리 접어라...
위의 방법들은 어쩔 수 없는 경우의 땜빵 처리들이며, 근원적인 문제 해결은 안 된다.
하지만, 팀원들 중 노땅(?)이나 게으른 이들은 포팅을 거부하기도 할 것이다.
그럴 경우, 최종 지원 플랫폼은 윈 98 이나 2000 으로 하던가...말던가...쩝...
그리고, 가능하면 2003 도 빨리 2005 로 포팅하기를 권한다...
여러분의 사장님은 포팅을 위한 별도의 공수(man-hour)를 할당해 주지는 않을 것이다...
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
'C, C++' 카테고리의 다른 글
클래스 win32_file_iterator (0) | 2007.05.11 |
---|---|
TTOF2() 함수 (0) | 2007.05.09 |
CMainFrame IDR_MAINFRAME 확장자 연결 문자열 (0) | 2007.04.26 |
GetProcAddress 과 Unicode (0) | 2007.04.14 |
.NET 프레임워크 인식하기 (0) | 2007.04.07 |