
二进制基础
文章平均质量分 91
Freizy
二进制安全学习中
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
6.【Windows API程序设计】线程的通信(解决调用线程时CPU开销高居不下的问题)
本文介绍了线程通信的三种方式:全局变量、自定义消息和事件对象。重点讨论了使用自定义消息实现线程间通信的方法,包括主线程与工作线程之间的消息传递机制。通过一个计数线程示例,展示了工作线程如何通过PostMessage和PostThreadMessage向主线程和显示线程发送自定义消息来报告进度和状态。文章指出全局变量可能引发同步问题,而自定义消息更适合工作线程与主线程的通信。示例代码演示了如何利用WM_APP定义自定义消息,实现线程间的协调工作。原创 2025-08-11 12:44:49 · 1153 阅读 · 0 评论 -
5.【Windows API程序设计】为什么使用多线程?
本文首先澄清多线程设计的目的并非单纯利用多核CPU,而是解决主线程无法处理的问题。通过Windows程序示例展示了线程的基础概念:可执行文件是静态的指令数据集合,进程是动态运行实例,线程是执行单元。当主线程进入死循环时(如示例中的Counter函数),会导致界面卡死,这正是需要创建子线程的场景。子线程共享进程资源但拥有独立执行流,通过时间片轮转实现"并发"。文章强调多线程的核心价值在于任务分解,而非硬件利用,单核处理器同样需要多线程来避免主线程阻塞。原创 2025-08-08 15:52:08 · 936 阅读 · 0 评论 -
4.【Windows API程序设计】线程与进程的相关API函数
本文介绍了Windows系统中进程和线程的基本操作。主要内容包括:1) 使用CreateProcess函数创建进程,详细说明其参数和STARTUPINFO、PROCESS_INFORMATION结构体;2) 遍历进程的方法,通过CreateToolhelp32Snapshot、Process32First和Process32Next函数获取系统进程信息;3) 终止进程的ExitProcess和TerminateProcess函数;4) 使用CreateThread创建线程,说明其参数和注意事项。原创 2025-08-05 17:08:50 · 427 阅读 · 0 评论 -
3.【Windows API程序设计】第一个Windows程序:Hello Window
本文简要概括了二进制安全要学的API方向,避免浪费太多时间在没必要的API上,因为我们的目标并不是Windows程序设计师,那是操作系统厂商应该做的,另外介绍如何创建一个窗口。原创 2025-08-04 18:06:19 · 868 阅读 · 0 评论 -
2.【Windows API程序设计】第一章最后的部分:寄存器的变化、程序编译过程、字符集的发展、字符串的处理和结构体数据对齐
Windows API程序设计第一章的后半部分,主要讲解32->64寄存器的变化,程序编译过程,字符集和字符串处理。原创 2025-08-04 10:27:17 · 1071 阅读 · 0 评论 -
1.Windows API程序设计:第一个程序:Hello World!
深入浅出Windows API程序设计:编程基础篇:第一章(上),主要讲解第一个程序Hello World!,对应的函数解释,以及栈帧详解。原创 2025-08-03 23:56:29 · 1063 阅读 · 0 评论