Windows

Windows 核心编程 _ 线程优先级与关联性

Windows 核心编程 _ 线程优先级与关联性

bingliaolong 5年前 26 0

概述 在调度程序给另一个可调度线程分配CPU之前,CPU可以运行一个线程大约20ms。 这是在所有线程的优先级都相同的情况下。实际上,线程间的优先级是不同的。 每个线程都会被赋予0(最低)到31(最高)的优先级数。 当系统确定给哪个线程分配CPU时,它会首先查看优先级为31的线程...

一些问题二:libcurl静态链接相关问题

一些问题二:libcurl静态链接相关问题

bingliaolong 5个月前 12 0

概述 从vcpkg安装了libcurl的静态库,把该静态库拷贝到了项目同级目录,并在项目中引用了这个libcurl.lib 问题 现象 编译出test.exe的时候发现,同时会多出两个文件 libcurl.dll zlib1.dll 分析 在项目同级目录放进去的是静态库,也在项目...

COM组件_1

COM组件_1

bingliaolong 3年前 33 0

简介 组件对象模型(COM)是一个独立于平台的分布式面向对象的系统,用于创建可交互的二进制软件组件 是OLE(复合文档),ActiveX(Internet组件)等的基础技术 不是一种语言,而是一种标准,用于创建运行时进行交互的可重用的软件库,无须编译到应用程序中,即可使用COM库...

Windows机制:消息处理

Windows机制:消息处理

bingliaolong 6年前 25 0

概述 Windows 是事件驱动的,事件驱动围绕着消息的产生与处理展开,事件驱动是靠消息循环机制来实现的。也可以理解为消息是一种报告有关事件发生的通知。 消息(Message)指的就是Windows 操作系统发给应用程序的一个通告,它告诉应用程序某个特定的事件发生了。 比如,用户...

Windows 核心编程 _ 内核对象:线程同步三

Windows 核心编程 _ 内核对象:线程同步三

bingliaolong 5年前 24 0

遗弃问题 互斥量概述 互斥量与所有其他内核对象有所不同,这是因为它们具有“线程所有权”的概念。 换句话说,互斥量会记住自己是哪个线程等待成功的。 互斥量的这种特殊性,使得它即使在未触发的状态下,也能为线程所获得。 什么是遗弃问题 当线程调用ReleaseMutex的时候,函数会检...

WindowsHOOK相关

WindowsHOOK相关

bingliaolong 1年前 199 0

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

Windows 核心编程 _ 用户模式:线程同步一

Windows 核心编程 _ 用户模式:线程同步一

bingliaolong 5年前 9 0

概述 当所有线程都能独自运行而不需要相互通信的时候,Microsoft Windows将进程最佳运行状态。 系统中的所有线程必须访问系统资源,比如堆、串口、文件、窗口以及无数其他资源。 如果一个线程独占了对某个资源的访问,那么其他线程就无法完成它们的工作。 以下两种基本情况下,线...

Windows开发相关简记二:exe和dll双形态

Windows开发相关简记二:exe和dll双形态

bingliaolong 11个月前 24 0

启动流程 BasicEntry 作为dll导出接口 PrepareEnv 先构建运行时 ntdll.dll kernel32.dll 获取当前dll句柄 EXE被当做DLL加载时,首先修复重定位数据,此时的全局变量等还无法访问 因为Windows操作系统不会修复当做DLL加载的E...

Spy++相关

Spy++相关 4

bingliaolong 2年前 22 0

spy++相关 使用 打开spy++ 查找窗口 把小圆圈拖动到目标窗口上,比如按钮等等 并且在下面选择消息 在消息窗口查看日志 具体信息看下发示例 示例行为 使用spy++监听了某个窗口上的一个Button的消息 然后移动鼠标到Button上 然后用鼠标左键点击该Button 日...

Windows 核心编程 _ 线程内幕

Windows 核心编程 _ 线程内幕

bingliaolong 5年前 33 0

概述 对CreateThread函数的调用,导致系统创建了一个线程内核对象。 该内核对象最初的使用计数为2,除非线程终止,而且从CreateThread返回的句柄被关闭,否则线程内核对象不会被销毁。 该线程内核对象的其他属性也被初始化: 暂停计数被设为1 退出代码被设为STILL...

扫一扫二维码分享