调试输出信息OutPutDebugString c outputdebugstring

调试输出信息OutPutDebugString c outputdebugstring

调试输出信息OutPutDebugString

OutPutDebugString(TEXT("在调试器里输出的类容"));

#define MAXDUGBUFF 20
#define OutError(ErrorEvent) {  
  wchar_t DebugChar[MAXDUGBUFF];
   ZeroMemory(DebugChar, MAXDUGBUFF * sizeof(wchar_t));
   wsprintfW(DebugChar, L"%s Error(%d) at line(%d)n", ErrorEvent, GetLastError(), __LINE__);
   OutputDebugStringW(DebugChar);
}

上面这段代码适用于执行函数出错之后要打印错误代码的一段宏。

#define MAXNUMBUFF 10
#define OutError(Number) {
wchar_t NumberChar[MAXNUMBUFF];
ZeroMemory(NumberChar, MAXNUMBUFF * sizeof(wchar_t));
wsprintfW(NumberChar, L"%dn", Number);
OutputDebugStringW(NumberChar);
}

上面这段代码适用于打印数字。

可以很方便的捕获系统实时输出的Debug信息,并保存为日志文件。可以远程捕获服务器上的Debug信息。比较方便开发人员在系统发布前监控一些系统流程和异常,甚至在系统不大的情况下,更能在部署后进行远程监控功能。

1、DbgView界面和监控方法

打开软件后,顶部工具栏中选择监控主机。先看连接本地机调试,点击“Connect Local”即可。

在这个工具栏上,主要看几个图标

此按钮,表示是否开启捕获服务

此按钮,表示是否捕获系统内核的Debug信息

此按钮,表示是否捕获一般Win32应用,也就相当于我们的应用的Debug信息

注意:只有调用了WinDebug中方法的地方的输出Debug信息才能被DebugView捕获。

再来看看捕获的应用信息:将打开两个按钮的叉叉去掉,就会看到DebugView可能输出一些信息。如下图:

这些都是系统中的应用调用WinAPI所输出的Debug信息。但是只有红色部分是我们的Demo所输出的信息。

此时我们可以新建过滤器,只查看我们自己想看到的信息打开后我们看到下图

在Include和Exclude,分别表示Debug Print的内容“包含”“不包含”的字符串。

例如在include中输入:GTA

点击OK后

DebugView就会只显示GTA开头的Debug信息,因此在写程序时,为了监控方便,我们可以将Debug信息分类,以不同的前缀或标志为约束,统一Debug输出格式,方便以后排除和捕获系统异常等情况。

Exclude与之相反,这里不介绍了。

另外说说,这个按钮表面显示的记录条数。

2、远程捕获

可以在本机调试捕获服务器上的Debug信息。

在服务器上新建dbgView.exe程序的快捷方式

在快捷方式的“目标“后键入:空格+/c字符。然后确定。

再运行快捷方式,服务器就会等待连接。

此时客户端打开自己的dbgview.exe

点击connect后,输入服务器的IP地址,便连上服务器了。这样,用户可以在本地直接捕获服务器上的Debug信息了。

主要功能就是这些。另外,如果要在运行时应用不输出debug信息,可以将web.config或app.config中的

<system.web>

<compilation debug="true"targetFramework="4.0"/>

设置为false,然后在调用WinDebug的地方就不会再输出Debug信息了

原文链接:http://archive.cnblogs.com/a/2230326/

  

爱华网本文地址 » http://www.aihuau.com/a/25101017/365910.html

更多阅读

betwin各破解版说明注册版注册机 betwin win7破解版

betwin 各破解版说明 注册版 注册机 BETWIN1.13破解方法 设置好工作站,保证工作站可以用,一切OK后 把KEYGEN目录里面的东西复制到BETWIN安装目录,点开始-〉运行-〉CMD 出现DOS窗口,进入BETWIN目录,运行betwin_kg -r注册。会返回类似信息:

学习 VC 管道技术CreateProcess,pipe cmd回显

////通过管道技术回显cmd输出信息//SECURITY_ATTRIBUTES sa;HANDLE hRead,hWrite;sa.nLength = sizeof(SECURITY_ATTRIBUTES);sa.lpSecurityDescriptor = NULL; //使用系统默认的安全描述符sa.bInheritHandle = TRUE; //创建的进程

声明:《调试输出信息OutPutDebugString c outputdebugstring》为网友指尖上的星空分享!如侵犯到您的合法权益请联系我们删除