当前位置: 首页 > news >正文

微软NativeApi-NtQuerySystemInformation

微软有一个比较实用的Native接口:NtQuerySystemInformation,具体可以参考微软msdn官方文档:NtQuerySystemInformation, 是一个系统函数,用于收集特定于所提供的指定种类的系统信息。ProcessHacker等工具使用NtQuerySystemInformation这个函数获取当前系统的处理器CPU核数,系统进程信息(包括CPU使用率、IO等)。

Native API乃Windows用户模式中为上层Win32 API提供接口的本机系统服务。平常我们总是调用MS为我们提供的公用的Win32 API函数来实现来实现我们系统的功能。今天我们要谈的是如何通过本机系统服务(Native API)来探测本机系统信息。当然,微软没有为我们提供关于本机系统服务的文档 (Undocumented),也就是不会为对它的使用提供任何的保证,所以我们不提倡使用Native API来开发软件。不过在特殊情况下,本机系统服务却为我们提供了通向“秘密”的捷径,详细介绍了NtQuerySystemInformation的技术秘密。

使用 NTQuerySystemInformation 列出 Windows 进程

有一篇文章介绍了使用 NTQuerySystemInformation 列出 Windows 进程,具体地址为:Windows Process Listing using NTQuerySystemInformation,对应Github代码地址为:WinAPI-RedBlue
WinAPI-RedBlue源代码

具体的位置为:WinAPI-RedBlue/Process Listing/NT Query System Api/
NT Query System Api

下载WinAPI-RedBlue源代码后,对应目录结果如下:
WinAPI-RedBlue
使用VS2022打开【WinAPI-RedBlue\Process Listing】下的Process Listing.sln解决方案工程文件,然后运行其中的NT Query System Api项目,可以获取当前系统中所有运行的进程信息,如下图所示:

VS2022中打开运行NT Query System Api`项目

参考资料

  • NtQuerySystemInformation函数
  • Windows Process Listing using NTQuerySystemInformation
  • Breaking Down System Routines #2 [NtQuerySystemInformation]
  • procprv.c

相关文章:

微软NativeApi-NtQuerySystemInformation

微软有一个比较实用的Native接口:NtQuerySystemInformation,具体可以参考微软msdn官方文档:NtQuerySystemInformation, 是一个系统函数,用于收集特定于所提供的指定种类的系统信息。ProcessHacker等工具使用NtQuerySys…...

灵活与高效的结合,CodeMeter Cloud Lite轻云锁解决方案

众多软件开发商日渐认识到,威步推出的一系列尖端软件产品在维护知识产权、精确控制及有效管理软件授权方面发挥着不可或缺的作用。这些产品的核心功能包括将许可证及其他关键敏感数据安全地存储于高端复杂的硬件设备、经过专业加密的文件,或者置于受严格…...

Flink 系列文章汇总索引

Flink 系列文章 一、Flink 专栏 本专栏系统介绍某一知识点,并辅以具体的示例进行说明。 本专栏的文章编号可能不是顺序的,主要是因为写的时候顺序没统一,但相关的文章又引入了,所以后面就没有调整了,按照写文章的顺…...

计算机网络——期末考试复习资料

什么是计算机网络 将地理位置不同的具有独立功能的多台计算机及其外部设备通过通信线路和通信设备连接起来;实现资源共享和数据传递的计算机的系统。 三种交换方式 报文交换:路由器转发报文; 电路交换:建立一对一电路 分组交换&a…...

【数据结构】面试OJ题——链表

目录 1.移除链表元素 思路: 2.反转链表 思路: 3.链表的中间结点 思路: 4.链表中的倒数第K个结点 思路: 5.合并两个有序链表 思路: 6.链表分割 思路: 7.链表的回文结构 思路: 8.随机链表…...

flask web开发学习之初识flask(三)

文章目录 一、flask扩展二、项目配置1. 直接配置2. 使用配置文件3. 使用环境变量4. 实例文件夹 三、flask命令四、模版和静态文件五、flask和mvc架构 一、flask扩展 flask扩展是指那些为Flask框架提供额外功能和特性的库。这些扩展通常遵循Flask的设计原则,易于集成…...

【设计模式-3.1】结构型——外观模式

说明:本文介绍设计模式中结构型设计模式中的,外观模式; 亲手下厨还是点外卖? 外观模式属于结构型的设计模式,关注类或对象的组合,所呈现出来的结构。以吃饭为例,在介绍外观模式之前&#xff0…...

flutter学习-day2-认识flutter

📚 目录 简介特点架构 框架层引擎层嵌入层 本文学习和引用自《Flutter实战第二版》:作者:杜文 1. 简介 Flutter 是 Google 推出并开源的移动应用开发框架,主打跨平台、高保真、高性能。开发者可以通过 Dart 语言开发 App&#…...

解决selenium使用.get()报错:unknown error: unsupported protocol

解决方法 将原来的: url "https://www.baidu.com" browser.get(url)替换为: url "https://www.baidu.com" browser.execute_script(f"window.location.replace({url});") # 直接平替 .get()问题解析 之前运行都是正…...

关于加密解密,加签验签那些事

面对MD5、SHA、DES、AES、RSA等等这些名词你是否有很多问号?这些名词都是什么?还有什么公钥加密、私钥解密、私钥加签、公钥验签。这些都什么鬼?或许在你日常工作没有听说过这些名词,但是一旦你要设计一个对外访问的接口&#xff…...

容器重启后,Conda文件完整保存(虚拟环境、库包),如何重新安装conda并迁移之前的虚拟环境

Vim安装 容器重启后默认是vi,升级vim,执行命令 apt install -y vim安装 Anaconda 1. 下载Anaconda 其他版本请查看Anaconda官方库 wget https://mirrors.bfsu.edu.cn/anaconda/archive/Anaconda3-2023.03-1-Linux-x86_64.sh --no-check-certificate…...

gitee对接使用

1.创建一个文件夹 2.进入Gitee接受对方项目编辑 3.打开终端初始化一开始创建的文件夹 git init 3.1打开终端 3.2输入git.init 4.克隆对方的项目 4.1进入Gitee复制对方项目的路径 4.2在编辑器终端内克隆对方项目 git clone 网址 如此你的编辑器就会出现对方的项目 …...

C语言中的一维数组与二维数组

目录 一维数组数组的创建初始化使用在内存中的存储 二维数组创建初始化使用在内存中的存储 数组越界 一维数组 数组的创建 数组是一组相同类型元素的集合。 int arr1[10]; char arr3[10]; float arr4[10]; double arr5[10];下面这个数组能否成功创建? int count…...

【Linux】地址空间

本片博客将重点回答三个问题 什么是地址空间? 地址空间是如何设计的? 为什么要有地址空间? 程序地址空间排布图 在32位下,一个进程的地址空间,取值范围是0x0000 0000~ 0xFFFF FFFF 回答三个问题之前我们先来证明地址空…...

作为一个产品经理带你了解Axure的安装和基本使用

1.Axure的简介 Axure是一种强大的原型设计工具,它允许用户创建交互式的、高保真度的原型,以及进行用户体验设计和界面设计。Axure可以帮助设计师和产品经理快速创建和共享原型,以便团队成员之间进行沟通和反馈。Axure提供了丰富的交互组件和功…...

接口测试总结及其用例设计方法

接口测试的总结文档   第一部分:主要从问题出发,引入接口测试的相关内容并与前端测试进行简单对比,总结两者之前的区别与联系。但该部分只交代了怎么做和如何做?并没有解释为什么要做? 第二部分:主要介绍…...

2023团体程序设计天梯赛——模拟赛和总决赛题

M-L1-1 嫑废话上代码 Linux 之父 Linus Torvalds 的名言是:“Talk is cheap. Show me the code.”(嫑废话,上代码)。本题就请你直接在屏幕上输出这句话。 输入格式: 本题没有输入。 输出格式: 在一行中输出…...

智能优化算法应用:基于人工蜂鸟算法无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于人工蜂鸟算法无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于人工蜂鸟算法无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.人工蜂鸟算法4.实验参数设定5.算法结果6.参考…...

视频中自监督学习:「我的世界」下指令理解与跟随

本文介绍了北京大学人工智能研究院梁一韬助理教授所带领的 CraftJarvis 团队在「我的世界」环境下探索通用智能体设计的新进展,题为“GROOT: Learning to Follow Instructions by Watching Gameplay Videos”。 ​ GROOT 该研究的核心目标是探索能否摆脱文本数据的标…...

Spring基于xml半注解开发

目录 Component的使用 依赖注解的使用 非自定义Bean的注解开发 Component的使用 基本Bean注解&#xff0c;主要是使用注解的方式替代原有的xml的<bean>标签及其标签属性的配置&#xff0c;使用Component注解替代<bean>标签中的id以及class属性&#xff0c;而对…...

Android混淆配置终极指南:基于Awesome Android库的完整ProGuard规则

Android混淆配置终极指南&#xff1a;基于Awesome Android库的完整ProGuard规则 【免费下载链接】awesome-android A curated list of awesome Android packages and resources. 项目地址: https://gitcode.com/gh_mirrors/awe/awesome-android 在Android应用开发中&…...

企业级“衣依”服装销售平台管理系统源码|SpringBoot+Vue+MyBatis架构+MySQL数据库【完整版】

&#x1f4a1;实话实说&#xff1a;有自己的项目库存&#xff0c;不需要找别人拿货再加价&#xff0c;所以能给到超低价格。摘要 随着电子商务的快速发展&#xff0c;服装行业对高效、智能化的销售管理平台需求日益增长。传统的线下销售模式在库存管理、订单处理及客户服务等方…...

OpenClaw家庭相册:Qwen3.5-9B-VL自动识别人物与场景分类

OpenClaw家庭相册&#xff1a;Qwen3.5-9B-VL自动识别人物与场景分类 1. 为什么需要智能相册管理 作为一个摄影爱好者和两个孩子的父亲&#xff0c;我的手机和硬盘里堆积了超过5万张家庭照片。每次想找特定场景&#xff08;比如"去年夏天在海边的全家福"&#xff09…...

千问3.5-2B部署教程:GPU利用率监控脚本(nvidia-smi + prometheus exporter)

千问3.5-2B部署教程&#xff1a;GPU利用率监控脚本&#xff08;nvidia-smi prometheus exporter&#xff09; 1. 引言 在部署和使用千问3.5-2B这类视觉语言模型时&#xff0c;GPU资源的高效利用至关重要。本教程将手把手教你如何搭建一个轻量级的GPU监控系统&#xff0c;实时…...

不止于GPS轨迹:用Mapviz插件玩转ROS多传感器数据融合可视化(附点云、图像叠加实例)

不止于GPS轨迹&#xff1a;用Mapviz插件玩转ROS多传感器数据融合可视化&#xff08;附点云、图像叠加实例&#xff09; 在机器人感知系统开发中&#xff0c;数据可视化从来不只是锦上添花——当激光雷达点云、相机图像和GPS轨迹需要在同一坐标系下呈现时&#xff0c;传统ROS工…...

探索高压柔性输电系统中6脉冲与12脉冲晶闸管控制HVDC仿真模型

高压柔性输电系统6脉冲&#xff0c;12脉冲晶闸管控制HVDC的仿真模型&#xff0c;说明文档在电力传输领域&#xff0c;高压柔性输电系统&#xff08;HVDC&#xff09;以其高效、灵活等特性占据着重要地位。其中&#xff0c;6脉冲和12脉冲晶闸管控制的HVDC仿真模型更是关键部分&a…...

ESC固件底层开发:寄存器级驱动与无传感器换相实现

1. ESC固件底层技术解析&#xff1a;电子调速器固件架构与驱动实现电子调速器&#xff08;Electronic Speed Controller, ESC&#xff09;是无人机、电动航模、机器人驱动系统中的核心执行单元&#xff0c;其本质是一个高动态响应的三相逆变器控制器。ESC固件并非简单的PWM输出…...

Claude Code开源第一人,竟是华人辍学博士!CC之父回应:纯手误

51万行Claude Code代码全网裸奔&#xff0c;背后泄密第一人竟是他。就在刚刚&#xff0c;CC之父回应来了&#xff1a;是人&#xff0c;不是Bun。爆出Claude Code源码第一人&#xff0c;竟被全网扒出来了&#xff01;3月31日凌晨4点23分&#xff0c;安全研究员Chaofan Shou在X上…...

论文写作“智多星”:书匠策AI,开启期刊论文新纪元

在学术的广袤天地里&#xff0c;论文写作宛如一场充满挑战的冒险之旅。尤其是期刊论文&#xff0c;它不仅是学者研究成果的集中展现&#xff0c;更是学术交流与进步的重要桥梁。但面对选题迷茫、资料繁杂、结构搭建困难等诸多难题&#xff0c;许多学者常常感到力不从心。别担心…...

三维建模师必看:Blender中坐标变换的数学原理与操作技巧

三维建模师必看&#xff1a;Blender中坐标变换的数学原理与操作技巧 在Blender的世界里&#xff0c;每个顶点、每条边、每个面都在三维空间中占据着精确的位置。当我们移动一个物体、缩放一个模型或旋转一个摄像机时&#xff0c;背后是一套精密的数学机制在运作。对于艺术背景的…...