#ifdef _UNICODECString trW(LPCTSTR format,

)
{
int len;
va_list arg;
CString text;
if (format==NULL || format[0]==0)
return text;
va_start(arg, format);
len = _vsnwprintf(NULL,0,format,arg);
va_end(arg);
_ASSERT(len>=0);
va_start(arg, format);
vswprintf(text.GetBuffer(len+1),format,arg);
text.ReleaseBuffer();
va_end(arg);
return text;
}
#elseCString trA(LPCTSTR format,

)
{
int len;
va_list arg;
CString text;
if (format==NULL || format[0]==0)
return text;
va_start(arg, format);
len = _vsnprintf(NULL,0,format,arg);
va_end(arg);
_ASSERT(len>=0);
va_start(arg, format);
vsprintf(text.GetBuffer(len+1),format,arg);
text.ReleaseBuffer();
va_end(arg);
return text;
}
#endif#ifdef _UNICODE #define tr trW
#else #define tr trA
#endif