CnUnix

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ 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 

 

 사랑은 아무나 하나...
 어느 누가 쉽다고 했나...


[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.