下面的程式將OutputDebugString包裝成printf介面,有需要的人可以自行copy回去使用,這對於輸出Debug資訊上有一定程度的幫助,另外對於看Debug message的工具,個人推薦使用DbgView ,目前最新版本已經可以在Vista 32/64-bit平台下面使用。實在是一個非常方便的工具。
#ifdef DBG
void __cdecl DbgPrint(LPCTSTR format, ...)
{
static TCHAR DbgMsg[DBG_MAX_BUFFER_SIZE];
size_t len;
TCHAR *p = DbgMsg;
va_list args;
va_start(args, format);
StringCchVPrintf(p, sizeof(DbgMsg) - 1, format, args);
StringCchLength(DbgMsg, sizeof(DbgMsg) - 1, &len);
p += len;
va_end(args);
*p++ = '\r';
*p++ = '\n';
*p = '\0';
OutputDebugString(DbgMsg);
}
#endif // DBG
留言