Windows核心编程_必备知识

Windows核心编程_必备知识

bingliaolong Windows 4年前 7 0

错误处理 调用windows函数时,它会先验证我们传给它的参数,然后再开始执行任务。如果传入的参数无效,或者由于其他原因导致操作无法执行,则函数的返回值将指出函数因为某些原因失败了。 在内部,windows函数检测到错误了,它会使用一种名为"线程本地存储区"的...

Windows动态库(DLL)详细学习:一

Windows动态库(DLL)详细学习:一

bingliaolong Dll Windows 3个月前 9 0

概述 DllMain 是 Windows 动态链接库(DLL)的入口函数,类似于可执行程序的 main 函数 它在以下四种情况下会被系统自动调用: DLL 被加载到进程内存 DLL 被卸载 进程创建新线程 线程退出 参数 保留参数 lpReserved: DLL_PROCESS_...

Soui二

Soui二

bingliaolong Soui 3年前 18 0

锚点布局 size size="width, height" width height full 代表高度或者宽度和父窗口的客户区大小相等 -1 根据窗口内容自动计算窗口大小 int pos | 代表参考父窗口的中心 % 代表在父窗口的百分比 [ 用于X时,参...

breakpad记述:Windows

breakpad记述:Windows

bingliaolong C++ Windows 1年前 12 0

概述 Breakpad 客户端库负责监控应用程序是否发生崩溃(异常)、在崩溃发生时通过生成转储来处理这些崩溃 并提供将转储上传到崩溃报告服务器的方法 客户端 概述 Breakpad 客户端主要负责在应用程序崩溃时捕获崩溃信息,并生成 minidump 文件 该 minidump ...

Windows 核心编程 _ 创建&&终止线程

Windows 核心编程 _ 创建&&终止线程

bingliaolong Windows 4年前 4 0

创建线程 概述 每个进程至少都有一个线程。 线程的组成 线程的内核对象,操作系统用它管理线程。 系统还用内核对象来存放线程统计信息的地方。 线程栈,用于维护线程执行时所需的所有函数参数和局部变量。 进程从来不会执行任何东西,它是线程的容器。 线程必然是在某个进程的上下文中创建的,...

C++程序高级调试与优化_第一篇

C++程序高级调试与优化_第一篇

bingliaolong Windows 3年前 17 0

地址空间 32位系统,CPU可直接寻址4GB空间,这也是每个进程的地址空间大小。 其中,高2GB供内核模块使用,称为内核空间。 低2GB供用户态模块使用,称为用户空间。 使用/3GB开关,可以将用户空间增大到3GB。 Windows内容load到内核空间高地址,主程序load到用...

WindowsHOOK相关

WindowsHOOK相关

bingliaolong Windows 5个月前 4 0

概述 HOOK技术(钩子技术)是Windows操作系统中的一种核心机制,允许程序拦截并处理系统事件、消息或函数调用 通过HOOK,开发者可以监控或修改系统的行为,例如键盘输入、鼠标点击、窗口创建/销毁等 HOOK技术广泛应用于安全防护、自动化工具、调试分析等领域 原理 消息机制与...

Windows 高级调试 _ 内存破坏

Windows 高级调试 _ 内存破坏

bingliaolong Windows 4年前 8 0

调试实践 关于调试实践。 内存破坏 栈内存 在Windows中,栈只是操作系统为线程分配的一块内存。 作用是记录函数调用链(局部变量的分配、参数传递)。 每当调用函数时,都会创建一个栈帧并且把它压入到栈中。 随着线程中调用的函数越来越多,栈也会变得越来越大。 函数结构 函数前导指...

各平台调试方法总结记述一

各平台调试方法总结记述一

Windows 日志 可以通过现有日志来观察 当不方便附加进程时,可以通过写文件的方法写日志 Visual Studio 附加到进程 CLion 附加到进程 windbg Linux 日志 应用程序日志 var/log/ 当不方便附加进程时,可以通过写文件的方法写日志 gdb l...

扫一扫二维码分享