|
단팥크림빵 님이 쓰신 글 :
: 외부 COM을 불러와서 코딩중에 BSTR 타입의 string을 넘기기 위해서 WideString으로 데이터를 넘기고 있습니다.
: 그런데 COM과 연결되는 event callback중에 BSTR 타입으로 파라미터가 넘어오는데, 이걸 비교하는 도중..
: 상수 문자열에 대한 BSTR 타입으로 비교하는 매크로가 있는지요.
: 현재는 파리미터가
: void __fastcall FuncCallback(BSTR code, BSTR recordName)
: {
: ...
: ...
: // 이 두구문 모두 조건에 걸리지 않는군요. 아마 상수 문자열이 UnicodeString으로 둘다 자동 변환이 되는것 같습니다..ㅠㅠ
: if(code == "ABCD") {
: }
: if(code == L"ABCD") {
: }
: }
:
: 본래 Unicode에 대한 prefix macro가 u 가 아니던가요?? L 도 저래서 좀 당황 스럽네요.
: 도움 말씀 부탁드립니다.
void __fastcall FuncCallback(BSTR code, BSTR recordName)
{
if ( WideString(code) == "ABCD" ) {
}
}
|