|
제가 아는데까지 일단 말씀드리면..
프로젝트 옵션에 Directories and Conditionals 에 보면 "_TCHAR maps to" 라는 옵션이 있습니다.
여기서 char 또는 wchar_t 둘 중에 하나를 고를 수 있고, wchar_t 를 선택하면 UNICODE, _UNICODE 가 define 됩니다.
따로 Conditional defines 에 UNICODE;_UNICODE를 안해도 저 옵션을 선택하면 처리됩니다.
그치만 Visual C++처럼 유니코드 라이브러리와, 안시 라이브러리로 따로되어 있지 않고
bpl 들이 모두 이미 UnicodeString 기반으로 만들어져버려서 완전한 유니코드와 ANSI 호환버전을 따로 만들어내기는 어려운것같습니다.
strcpy, strlen 은 애초에 인자가 char* 로 되어 있기때문에 이 함수들은 그냥 그대로 작동되고,
_TCHAR maps to 옵션에 맞게 처리되도록하려면 _tcscpy, _tcslen 등으로 사용하면 됩니다.
(이 부분은 tchar.h 파일을 보시면 좀 더 자세히 아실 수 있습니다.)
안명호.ASURADA 님이 쓰신 글 :
: Visual C++ 의 경우 프로젝트 속성에서 유니코드인이 멀티바이트인지 선택을 할 수 있는데 C++ 빌더에는 그러한 설정이 존재하는지 궁금합니다.
:
: 프로젝트를 유니코드와 ANSI가 호환되게 만들어 각각의 버전을 빌드할 수 있나요?
:
: strlen strcpy 등등의 문자열 함수의 경우 유니코드를 어떤 식으로 지원하는지 궁금합니다.
|