摘要: ```c++ #include #pragma comment(lib, "netapi32.lib") // See more: http://msdn.microsoft.com/en-us/library/windows/desktop/aa370652(v=vs.85).aspx void GetAllUserName(std::vector & allUserName) { ... 阅读全文
posted @ 2017-08-23 14:59 jiangxueqiao 阅读(785) 评论(0) 推荐(0) 编辑
摘要: d 命令 Address :查看address地址处的内存。 ColumnWidth :Windbg每行显示的多少个 数据单位 。默认为16进制数字,十进制需加前缀0n Length :总共显示 地址后的多少个 数据单位 。 如: 表示 显示06beee78之后的128个byte,每行显示32个by 阅读全文
posted @ 2017-08-23 14:58 jiangxueqiao 阅读(3829) 评论(0) 推荐(4) 编辑
摘要:         无论是分析程序崩溃原因,还是解决程序hang问题,我们最常查看的就是程序调用堆栈。学会windbg调用堆栈命令,以及理解堆栈中的各个参数的意义就显得至关重要。 上图就是一个典型的Windbg堆栈,如果不理 阅读全文
posted @ 2017-08-23 14:49 jiangxueqiao 阅读(6599) 评论(0) 推荐(0) 编辑
摘要: 一. 测试代码 二. 死锁原理 程序生成了2个线程(线程1、线程2)和2个互斥体MutexA和MutexB。 观察线程执行代码可知,这是一个典型的死锁用例,2个线程相互等待。 线程1: 拥有MutexA 过一段时间(sleep) 想拥有MutexB 线程2: 拥有MutexB 过一段时间(sleep 阅读全文
posted @ 2017-08-23 14:42 jiangxueqiao 阅读(678) 评论(0) 推荐(0) 编辑
摘要: 一. 准备工作 这里一个有关键区锁死问题的程序,运行之后依次点击“CS锁死”按钮、右上角退出按钮,程序就会卡死。(图1) 对于眼下的这个问题,界面完全失去响应,这说明负责消息处理的UI线程阻塞了。对于几乎所有的windows GUI程序,编号为0的初始线程就是UI线程,windows发现该界面一段时 阅读全文
posted @ 2017-08-23 14:32 jiangxueqiao 阅读(3333) 评论(0) 推荐(1) 编辑
摘要: `R6002 floating point support not loaded` 错误,在Debug模式下会弹出如下错误: “floating point support not loaded”翻译为中文是“浮点指针支持未被加载”。说的不是浮点指针不支持,而是支持的模块没有被加载。 这个错误大多出 阅读全文
posted @ 2017-08-23 14:22 jiangxueqiao 阅读(6071) 评论(0) 推荐(1) 编辑
摘要: 一. 问题描述 前面写过一篇关于打印日志时,日志内容中包含float数据就会崩溃的文章 "R6002 floating point support not loaded" ,今天又遇到了打印日志崩溃的情况,定位到这次还是崩溃在StringCchVPrintfA这个函数。这是个系统API的崩溃,遇到系 阅读全文
posted @ 2017-08-23 14:20 jiangxueqiao 阅读(754) 评论(0) 推荐(2) 编辑