Windows Management Instrumentation (WMI) 的使用---一些系统接口的替代者

参考:

1,https://learn.microsoft.com/zh-cn/windows/win32/wmisdk/about-wmi

2,wmi编程示例

3,wmi对象类别

wmi介绍及原理请参考上面链接内容。之前在一些样本里面看到了类似于sql的字符串,一直不太清楚那些是做什么的。哪些语句是wql(大概就是windows系统自己的查询语句),通过执行这些特定的查询语句,可以获取或修改许多系统相关的信息。比如说查询系统中当前运行的进程,系统中服务信息等;之前这些操作一般通过系统底层的api(CreateService,OpenProcess等)来获取。在一些情况下,可以考虑替换使用wmi来实现;用来做一些运行环境检查(虚拟机,杀毒软件等)。

下面通过powershell中演示wmi的一些基本操作:

命令:Get-WmiObject Win32_Process ;获取当前运行的进程数据,部分如下图:

命令:Get-WmiObject Win32_Service; 来获取系统服务列表,详细信息包括服务名称等,部分如下图:

通过上面的截图可以看到,查询一个类(class)的信息,会有多个字段返回,就像sql里面的表(table)。

通过c++调wmi相关接口获取系统服务相关信息,部分如下图:

通过wmi禁用/启用网卡,部分如下图(详细见参考2):

相关推荐
qq_3692243315 天前
Windows全系通用!ntdll.dll文件丢失、报错、闪退问题的完整排查与修复教程
windows·dll·dll修复·dll丢失·dll错误
阿米亚波16 天前
【Windows】QEMU 启动 openEuler aarch64/arm64 架构系统 + 离线软件源
linux·windows·经验分享·笔记·架构·arm
caimouse16 天前
Reactos 第 10 章 网络操作 — 10.3.1 NIC驱动
网络·windows
初圣魔门首席弟子16 天前
Node.js 详细介绍(知识库版)
windows·qt·node.js·知识库
CHENG-JustDoIt16 天前
AI工具 | 爆火开源项目Odysseus AI 工作台:从项目介绍、部署情况及其使用等多方位分析指南(含详细步骤)
大数据·人工智能·windows·python·ai·开源·github
kingbal16 天前
Windows:flutter环境搭建
windows·flutter
未若君雅裁16 天前
Python 数据容器详解,list、tuple、str、set、dict 到底怎么选
windows·python·list
CodeKwang16 天前
Windows 环境 OCCT 8.0 编译构建及与 Qt6 项目集成
windows·qt·opencascade
我是伪码农16 天前
小兔鲜1-25
linux·服务器·windows
vx-Biye_Design16 天前
springboot安阳地区研学旅游服务小程序-计算机毕业设计源码12785
java·vue.js·windows·spring boot·tomcat·maven·mybatis