![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
核心编程-WIN32(课程讲义)
文章平均质量分 86
核心编程-WIN32(课程讲义)
0xCC说逆向
交流873485550(企鹅群) -- 视频0xCC说逆向(BILIBILI)
展开
-
WIN32核心编程 - 动态链接库
动态链接库(DLL)导出函数导入库代码重用模块化内存效率。原创 2024-07-09 18:28:30 · 808 阅读 · 0 评论 -
WIN32核心编程 - 文件系统 - 文件搜索和遍历 - 目录操作 - 路径解析
路径解析:将路径分解为各个组成部分,如驱动器、目录、文件名等。绝对路径:从根目录开始到文件或目录的完整路径。相对路径:相对于当前工作目录的路径。规范化:去除路径中的冗余部分,如。原创 2024-07-08 18:18:41 · 683 阅读 · 0 评论 -
WIN32核心编程 - 文件系统 - 文件操作 - 目录操作
层次结构(Hierarchy):文件系统中文件和目录之间的组织关系形成了层次结构,通常是树状结构,其中根目录是顶层目录,包含其他目录和文件,而子目录可以包含更多的子目录和文件。文件可以是文本文件、图像文件、音频文件、视频文件等,每个文件都有一个唯一的文件名。目录可以包含文件和其他目录,形成文件系统的层次结构。文件内容的读取和写入可以通过标准C++库中的fstream类或Windows API的。:表示文件是系统文件,这通常表示操作系统用于内部用途的文件。针对一个打开的文件,将当前文件位置设为文件末尾。原创 2024-07-08 18:12:10 · 901 阅读 · 0 评论 -
WIN32核心编程 - 线程操作(三) 线程优先级 - 生产者与消费者模式
进程优先级类决定了进程内所有线程的基本优先级,并且每个线程可以在此基础上有自己的优先级设置。线程调度与时间碎片Windows使用抢占式调度来分配CPU时间给线程。每个线程都会被分配一个时间片,它是线程可以在被挂起之前连续运行的时间量。Windows中的实时优先级类别允许线程以最小的延迟执行。这些线程几乎总是优先于其他线程运行,除非有其他更高优先级的实时线程。这对于需要精确计时或快速响应的任务至关重要。生产者(Producer) - 负责生成数据并将其放入缓冲区的线程或进程。原创 2024-07-07 16:05:28 · 738 阅读 · 0 评论 -
WIN32核心编程 - 线程操作(二) 同步互斥
自动重置事件(Auto Reset Event):当事件被一个等待的线程接收(signaled)后,系统会自动将事件状态重置为非信号状态(non-signaled)。同一时刻下只有一个线程可以拥有互斥体的所有权,如果一个线程拥有了互斥体的所有权,则其他请求该互斥体的线程将会被阻塞,直到互斥体权限释放。如果信号量的值为0,则线程阻塞,直到信号量的值变为大于0。在Windows编程中,事件是一种同步机制,用于在多个线程之间发送信号。共享资源的线程同步机制,临界区在同一进程的线程之间提供了互斥访问。原创 2024-07-07 15:57:29 · 1177 阅读 · 0 评论 -
WIN32核心编程 - 线程操作(一) 线程信息 - 线程控制
线程是通过CreateThread来创建的,该API会为线程分配必要的资源并返回一个内核对象句柄。创建线程是可以通过参数指定线程的属性,线程运行状态(创建运行线程 、创建挂起线程),以及堆栈大小。每条线程都拥有自己的一套寄存器以及堆栈信息,并且线程可以同时共享同一进程中的数据以及代码资源。线程作为进程的一部分,是进程内部的执行单位,一个进程至少包含一个线程,即主线程。一个进程可以并发多条线程,每条线程分别执行不同的任务。线程是进程的一部分,共享相同的内存空间。线程间可以直接读写进程中的数据资源等。原创 2024-07-06 21:39:38 · 1027 阅读 · 0 评论 -
WIN32核心编程 - 内存管理 内存页面
【代码】WIN32核心编程 - 内存管理 内存页面。原创 2024-07-06 21:30:36 · 380 阅读 · 0 评论 -
WIN32核心编程 - 进程操作(二) 遍历进程 - 进程通信
【代码】WIN32核心编程 - 进程操作(二) 遍历进程 - 进程通信。原创 2024-07-04 19:59:15 · 425 阅读 · 0 评论 -
WIN32核心编程 - 进程操作(一) 进程基础 - 创建进程 - 进程句柄
什么是进程?进程可以被定义为一个执行中程序的实例。进程提供了程序执行所需的所有资源和环境。进程与程序的区别程序是一组指令和静态数据的集合,它是存储在磁盘或其他永久存储设备上的一个文件。进程,与之相对,是程序的动态执行实例。程序本身不执行任何操作;当它被操作系统加载到内存并开始执行时,它变成一个或多个进程。原创 2024-07-04 19:52:46 · 1291 阅读 · 0 评论 -
WIN32核心编程 - 数据类型 错误处理 字符处理
提高代码的可移植性:当你的代码需要在不同的Windows版本之间移植时,使用Win32 API的数据类型可以减少因为数据类型大小差异导致的问题。满足API调用要求:许多Win32 API函数要求使用特定的数据类型作为参数,或者返回这些类型的数据。Win32 API定义了自己的一套数据类型,这些数据类型的大小在所有Windows平台上都是固定的,从而确保了应用程序的兼容性。应优先使用它们的安全版本(例如,使用。增强代码的阅读性和可维护性:通过使用明确定义的数据类型,代码的可读性会提高,同时也便于维护和更新。原创 2024-07-03 22:46:35 · 978 阅读 · 0 评论