各平台调试方法总结记述一
Windows 日志 可以通过现有日志来观察 当不方便附加进程时,可以通过写文件的方法写日志 Visual Studio 附加到进程 CLion 附加到进程 windbg Linux 日志 应用程序日志 var/log/ 当不方便附加进程时,可以通过写文件的方法写日志 gdb l...
Windows 日志 可以通过现有日志来观察 当不方便附加进程时,可以通过写文件的方法写日志 Visual Studio 附加到进程 CLion 附加到进程 windbg Linux 日志 应用程序日志 var/log/ 当不方便附加进程时,可以通过写文件的方法写日志 gdb l...
spy++相关 使用 打开spy++ 查找窗口 把小圆圈拖动到目标窗口上,比如按钮等等 并且在下面选择消息 在消息窗口查看日志 具体信息看下发示例 示例行为 使用spy++监听了某个窗口上的一个Button的消息 然后移动鼠标到Button上 然后用鼠标左键点击该Button 日...
简述 在Windows中,DLL(动态链接库)可以请求操作系统卸载自己,但这样做是有风险的 要确保在DLL被卸载后不再访问任何DLL内部的资源或函数 FreeLibrary 如果在test.dll的某个函数里面,获取到test.dll的句柄后,调用FreeLibrary释放了te...
有窗口句柄的子窗口 IRealWndHandler 实现 xml 消息响应 由于真窗口是SOUI主窗口的子窗口,因此真窗口的消息可以在SOUI主窗口的消息映射表中处理。 注意 有真窗口时,SOUI主窗口不能设置translucent="1",因为任何子窗口在半...
控件注册机制 使用 TplSWindowFactory NewWindow只会在SOUI模块中调用。 对象的释放 TObjRefImpl里有个虚函数OnFinalRelease。 SWindow和SSkinObjBase是在SOUI中实现的,因此派生这两个类的新的控件类以及皮肤类...
源码实现 模板类函数指针 命名空间宏定义 与或判断选项开关 判断Windows安装某款字体 这里的实现是通过判断注册表来判断是否安装了某款字体。 应用 lbtoast_menu.h lbtoast_menu.cpp 弹出窗口 关于定时器 监听不到想监听的消息 需要在对应的消息映射...
遗弃问题 互斥量概述 互斥量与所有其他内核对象有所不同,这是因为它们具有“线程所有权”的概念。 换句话说,互斥量会记住自己是哪个线程等待成功的。 互斥量的这种特殊性,使得它即使在未触发的状态下,也能为线程所获得。 什么是遗弃问题 当线程调用ReleaseMutex的时候,函数会检...
命令标记 命令分隔符 用于分隔单行上的多个命令 块分隔符 圆括号 一对大括号 ( { } ) 用于包围调试器命令程序中的语句块 方括号 用于访问数组元素或表示寄存器或内存位置 别名解释器 用户别名(以$开头) 用户别名只能在当前调试会话中使用 例如:$myalias 全局别名(以...
GNU 汇编器语法 示例 定义数据 nasm数据操作 GNU汇编器操作 使用直接操作数,要用$ 获取部分内存时,例如 64 寄存器的第一个字节 不在操作数中定义大小,而是在指令中定义 GNU汇编器操作后缀 b:1个字节操作数 w:2个字节操作数 l:4个字节操作数 q:8个字节操...
概述 ATL ATL 本来是为了写 COM 组件(ActiveX、OLE)而生的,顺带提供了最基础的窗口能力 WTL WTL 是微软的一个团队后来单独发布的头文件库,专门填充 ATL 在 UI 方向的空白 关系 wtl是工具箱,不是框架 ATL 概述 下面这些文件,WTL 依赖这...
搜索当前标签