在 Visual Studio 中将输出锁定到输出窗口
我的应用程序使用 TRACE
宏将调试数据发送到 Visual Studio 中的输出窗口。其中一些输出字符串是使用多次调用 TRACE
宏构建的,如以下代码片段所示:
BYTE i, len;
len = pMsg[APP_LEN_OFFSET] + sizeof(appPktHead_t) - APP_MSG_CODE_LEN;
TRACE(_T("%s: "), fnName);
TRACE(GetCmdIdStr( pMsg[APP_MSG_CODE_OFFSET] ));
TRACE(_T(" 0x"));
for ( i = 0; i < len; i++ )
{
TRACE(_T("%.2X "), pMsg[i]);
}
TRACE(_T("\r\n"));
如何在此函数的持续时间内将输出锁定到输出窗口,或者在一次调用 TRACE
中发送整个字符串?谢谢。
My application sends debug data to the Output Window in Visual Studio using the TRACE
macro. Some of these output strings are built using several calls to the TRACE
macro, as is shown in the following snippet of code:
BYTE i, len;
len = pMsg[APP_LEN_OFFSET] + sizeof(appPktHead_t) - APP_MSG_CODE_LEN;
TRACE(_T("%s: "), fnName);
TRACE(GetCmdIdStr( pMsg[APP_MSG_CODE_OFFSET] ));
TRACE(_T(" 0x"));
for ( i = 0; i < len; i++ )
{
TRACE(_T("%.2X "), pMsg[i]);
}
TRACE(_T("\r\n"));
How can I either lock the output to the Output Window for the duration of this function, or send the entire string in a single call to TRACE
? Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我不相信有办法在 Visual Studio 中锁定输出窗口。我认为最简单的方法是将整个消息构建到 std::stringstream 或 wchar_t[] 对象中,然后将该单个值输出到>TRACE 宏
自从我使用
stringstream
以来已经有一段时间了,所以这里可能有一些错误,但以下内容应该会让您走上正确的轨道I don't believe there is a way to lock the output window in Visual Studio. I think the easiest way to do this is to build up the entire message into a
std::stringstream
orwchar_t[]
object and then output that single value to theTRACE
macroBeen awhile since I used
stringstream
so there are likely a few errors here but the following should get you on the right track在使用
TRACE
宏之前构建单个字符串。Build a single string, before using the
TRACE
macro.