获取 Windows 操作系统的系统、网络、硬件、软件等信息

3 篇文章 0 订阅

Github

获取的信息

能获得的信息如下(系统、硬件、网络信息已打码)

---------  系统信息  ---------
计算机名:***
登录用户名:***
操作系统类型:***


---------  硬件信息  ---------
本机的MAC地址:***
主板序列号:***
主板制造厂商:***
主板编号:***
主板编号:***
主板型号:***
CPU序列号:***
CPU编号:***
CPU版本信息:***
CPU名称信息:***
CPU制造厂商:***
物理硬盘序列号:***
磁盘序列号:***
网卡地址:***
网卡硬件地址:***
物理内存:***
显卡PNPDeviceID:***
声卡PNPDeviceID:***


---------  网络信息  ---------
IP地址:***
本地ip地址:***
本地ip地址:***
外网ip地址:***
外网ip地址:***


---------  软件信息  ---------
GitHub Desktop	2.1.0
Mozilla Firefox 68.0 (x86 en-US)	68.0
Microsoft OneDrive	19.103.0527.0003
Python 3.7.2 (32-bit)	3.7.2150.0
Microsoft Visual Studio Code (User)	1.36.1
***

硬件网络信息

硬件网络信息是通过 System.Management 里面的类方法获取的,具体类方法可查看官方文档:

System.Management Namespace

软件信息

软件信息是通过读取注册表的方式获取的,所以软件开发使用的话需要验证一下某些安全管家是否会警告。

  • 都有的信息:名字(DisplayName)
  • 大部分都有的信息:名字(DisplayName)、版本号(DisplayVersion)、发行商(Publisher)、安装日期(InstallDate)
  • 比较多信息的如下图:

软件信息在注册表的路径

计算机\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Uninstall\
计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\

监控读取注册表

测试了一下读取注册表,360,腾讯管家不会警告,但有些软件(如:procmon)能监控进程的读取的行为。

阅读终点,创作起航,您可以撰写心得或摘录文章要点写篇博文。去创作
  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 是的,Golang 可以不依赖 WIM 获取系统硬件信息,包括 BIOS 和 CPU 信息。Golang 提供了对系统底层的访问能力,可以通过调用操作系统的 API 来获取硬件信息。例如,可以通过调用 Windows API 来获取 Windows 系统硬件信息,也可以通过调用 Unix 系统的 ioctl 等函数来获取 Unix 系统硬件信息。 ### 回答2: 是的,使用Golang编程语言可以获取系统硬件信息,而且不需要依赖Windows管理信息(WMI)。Golang提供了一些能够直接访问操作系统硬件信息的标准库和第三方库。 要获取BIOS信息,可以使用Golang的"os"包和"syscall"包。使用这些包,可以调用操作系统的接口来获取BIOS相关信息,例如使用"syscall.Sysctl"函数获取系统硬件操作系统信息。 要获取CPU信息,可以使用Golang的"runtime"包。在这个包中,有一些函数可以获取CPU的数量和其他相关信息。例如,可以使用"runtime.NumCPU"函数获取系统中的CPU数量,使用"runtime.GOARCH"变量获取CPU架构信息。 除了使用这些标准库之外,还有一些第三方库在Golang社区中提供了更多的硬件信息获取功能,例如"gopsutil"和"hwinfo"等库。这些库使用操作系统提供的接口来获取各种硬件信息,包括CPU信息、内存信息、磁盘信息等。 总之,使用Golang编程语言可以轻松地获取系统硬件信息,包括BIOS和CPU信息,而无需依赖Windows管理信息(WMI)。 ### 回答3: 可以使用Golang的一些第三方库来获取系统硬件信息,而不依赖于WMI(Windows Management Instrumentation)。以下是一些Golang库可以实现获取系统硬件信息的功能: 1. sysinfo库:sysinfo库提供了一系列函数来检索系统硬件信息,包括CPU、内存、磁盘和网络信息等。你可以使用sysinfo库的函数来获取系统的BIOS和CPU信息。 2. gohardware库:gohardware库是一个轻量级的库,用于获取系统硬件信息,包括CPU、内存、磁盘、网络和GPU等。通过调用gohardware库的函数,你可以获取系统的BIOS和CPU信息。 通过使用上述的库,你可以在Golang中编写代码来获取系统硬件信息,而不需要依赖于WMI。这些库提供了一些函数或方法,可以直接在Golang程序中调用来获取所需的硬件信息。需要注意的是,不同的操作系统可能需要使用不同的库或方法来获取硬件信息。因此,在使用这些库之前,请确保你选择了适用于目标操作系统的库版本或适当的方法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

辉哈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值