| [ CnUnix ] in KIDS 글 쓴 이(By): concerto (#2/1) 날 짜 (Date): 2003년 8월 23일 토요일 오전 02시 48분 28초 제 목(Title): Re: [재차질문]VC에서 타입 변환에 대해... 당연히 안되죠. 그리해도, .c 모듈은 char 단위로 argument를 받을 것이고, .cpp는 short 단위로 argument를 받을테니까요. 처음 질문을 대충 읽고 넘어 갔더니, 문제는 아주 간단한 건 데, 답들이 부실해서 이상한곳에서 헤매고 계신 것 같네요. 먼저, precompiled header에 대해 모르시면 쓰지 마세요.(저도 모르고, 안씁니다.) Project->Settings->C/C++->Category->Precompiled Headers->Not using precompiled headers 그리고, #include "stdafx.h"는 필요 없으니 다 빼고요. 원래 질문으로 돌아가서, 왜 CreateEventW를 explicitly call했는지가 매우 궁금하네요. 일반적으로 event를 생성할 때,CreateEvent()를 쓰면 되거든요. 다음과 같이 winbase.h에 UNICODE를 #define하면 CreateEvent가 CreateEventW로, 아니면 CreateEventA로 macro에서 치환해 주는 데... 따라서 ANSI로 하고자 한다면, UNICODE만 explicitly #define하지 않고, CreateEvent(,,,char*)을 사용하면 되는 데... 즉, 다시 말씀드려, ...W()형태의 함수를 쓰지 마시고, ...()을 사용하시면, char string을 그대로 사용하실 수 있습니다. 혹시, CreateEvent()로 했는 데, 저런 메시지가 뜨면, "#define UNICODE"를 찾아 comment 처리하세요. ==== WINBASEAPI HANDLE WINAPI CreateEventA( LPSECURITY_ATTRIBUTES lpEventAttributes, BOOL bManualReset, BOOL bInitialState, LPCSTR lpName ); WINBASEAPI HANDLE WINAPI CreateEventW( LPSECURITY_ATTRIBUTES lpEventAttributes, BOOL bManualReset, BOOL bInitialState, LPCWSTR lpName ); #ifdef UNICODE #define CreateEvent CreateEventW #else #define CreateEvent CreateEventA #endif // !UNICODE 사랑은 아무나 하나... 어느 누가 쉽다고 했나... |