无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 84428|回复: 599
打印 上一主题 下一主题

[原创] 开源的硬件信息工具nwinfo [20241107]

    [复制链接]
跳转到指定楼层
#
发表于 2021-12-3 14:34:52 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
本帖最后由 wintoflash 于 2024-11-7 20:31 编辑

下载:v1.0.4 nwinfo.zip (1.96 MB, 下载次数: 1716)
历史版本:
    v0.1.0   nwinfo_v0.1.0.zip (789.03 KB, 下载次数: 57)
    v0.2.0   nwinfo_v0.2.0.zip (799 KB, 下载次数: 47)
    v0.3.0   nwinfo_v0.3.0.zip (1.16 MB, 下载次数: 52)
    v0.4.6   nwinfo_v0.4.6.zip (1.2 MB, 下载次数: 37)
    v0.5.6   nwinfo_v0.5.6.zip (1.04 MB, 下载次数: 38)
    v0.7.1   nwinfo_v0.7.1.zip (1.66 MB, 下载次数: 58)
    v0.8.11 nwinfo_v0.8.11.zip (1.72 MB, 下载次数: 85)
    v0.9.7   nwinfo_v0.9.7.zip (1.65 MB, 下载次数: 20)
主页:https://a1ive.github.io/nwinfo/
源码:https://github.com/a1ive/nwinfo
支持 XP 及以上系统,需要管理员权限。
图形界面:

命令行用法:
  1. .\nwinfo.exe OPTIONS
  2. OPTIONS:
  3.   --format=FORMAT  指定输出格式,支持 'YAML' (默认),'JSON' 和 'LUA'。
  4.   --output=FILE    指定输出文件名。
  5.   --cp=CODEPAGE    指定输出文本编码 'ANSI' 或 'UTF8'。
  6.   --human          以易读形式显示数字 (自动转换KB/MB/GB等单位)。
  7.   --debug          显示调试信息。
  8.   --hide-sensitive 隐藏敏感信息 (MAC 及 S/N)。
  9.   --sys            打印系统信息
  10.   --cpu            打印 CPU 信息。
  11.   --net[=FLAG,...] 打印网络信息。
  12.     GUID           指定网络接口的 GUID,如 '{B16B00B5-CAFE-BEEF-DEAD-001453AD0529}'。
  13.     FLAGS:
  14.       ACTIVE       过滤活动的网络。
  15.       PHYS         排除虚拟网络接口。
  16.       ETH/WLAN     过滤有线/无线网络接口。
  17.       IPV4/IPV6    过滤 IPv4/v6 地址。
  18.   --acpi[=SGN]     打印 ACPI 信息。
  19.     SGN            指定 ACPI 表的签名,如 'FACP'。
  20.   --smbios[=TYPE]  打印 SMBIOS 信息。
  21.     TYPE           指定 SMBIOS 表的类型,如 '2' (主板信息)。
  22.   --disk[=FLAG,..] 打印磁盘信息。
  23.     PATH           指定磁盘路径,如 '\\.\PhysicalDrive0' 或 '\\.\CdRom0'。
  24.     FLAGS:
  25.       NO-SMART     不显示 SMART 信息。
  26.       PHYS         排除虚拟磁盘。
  27.       CD/HD        过滤光盘/硬盘。
  28.       NVME/SATA/SCSI/SAS/USB
  29.                    过滤 NVME/SATA/SCSI/SAS/USB 设备。
  30.   --smart=FLAG,... 指定 SMART 选项。
  31.                    默认选项: 'WMI', 'ATA', 'NVIDIA', 'MARVELL', 'SAT', 'SUNPLUS',  'IODATA',
  32.                           'LOGITEC', 'PROLIFIC', 'USBJMICRON', 'CYPRESS', 'MEMORY', 'JMICRON',
  33.                           'ASMEDIA', 'REALTEK', 'MEGARAID', 'VROC', 'ASM1352R'。
  34.                    使用 'DEFAULT' 以指定上述选项。
  35.                    其他选项为 'ADVANCED', 'HD204UI', 'ADATA', 'NOWAKEUP', 'JMICRON3'。
  36.   --display        打印显示器 EDID 信息。
  37.   --pci[=CLASS]    打印 PCI 信息
  38.     CLASS          指定 PCI 设备类型,如 '0C05' (SMBus)。
  39.   --usb            打印 USB 信息。
  40.   --spd            打印 SPD 信息。
  41.   --battery        打印电池信息。
  42.   --uefi[=FLAG,..] 打印 UEFI 信息。
  43.     FLAGS:
  44.       MENU         打印 UEFI 启动菜单项。
  45.   --shares         打印共享文件夹和映射网络驱动器。
  46.   --audio          打印音频设备。
  47.   --public-ip      打印公网 IP 和 IP 归属地。
  48.   --product-policy 打印 ProductPolicy。
  49.   --gpu            打印 GPU 信息。
  50.   --font           打印安装的字体。
复制代码


HwRwDrvXXX.sys 是驱动程序,用于读取 CPU 温度、电压、内存 SPD、ACPI 信息。有顾虑的话可以删除,不影响其他功能使用。
libcdiXXX.dll 是由 CrystalDiskInfo 改造的动态链接库,用于读取磁盘 SMART 信息。(https://github.com/a1ive/libcdi)
pci.ids 是 PCI 硬件 ID 数据库,usb.ids 是 USB 硬件 ID 数据库,pnp.ids 是显示器制造商数据库,jep106.ids 是内存模组制造商数据库,删除这些数据库只影响对应设备的识别。
注意:
Win11 用户如果想正常加载驱动,请关闭下面选项:
  1. Windows Registry Editor Version 5.00

  2. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity]
  3. "Enabled"=dword:0000000

  4. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceGuard]
  5. "EnableVirtualizationBasedSecurity"=dword:00000000

  6. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\SystemGuard]
  7. "Enabled"=dword:00000000

  8. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CI\Config]
  9. "VulnerableDriverBlocklistEnable"=dword:00000000
复制代码

免责声明:
本软件使用 Unlicense 许可协议,放弃版权。你可以自由分发、修改、使用此软件,且无需告知开发者,也不需要注明。
本软件不对可靠性做出任何保证,不对使用此软件造成的硬件及数据损坏负任何责任。
本软件中读取 CPU 信息部分使用了 libcpuid 项目。
PCI 数据库来自 https://pci-ids.ucw.cz/
USB 数据库来自 http://www.linux-usb.org/usb-ids.html
本软件中使用的驱动是 HwRwDrv,已获得微软官方签名,调用方法来自逆向工程。
如有顾虑,可以替换为开源的 Winring0 驱动。(http://openlibsys.org/) (下载:WinRing0x64.sys WinRing0.sys)

点评

辛苦了  发表于 2024-4-17 17:46

评分

参与人数 15无忧币 +70 收起 理由
Allreal + 5 赞一个!
hlstudio + 5 很给力!
yyz2191958 + 2 赞一个!
lps4290 + 5
807979023 + 5 赞一个!
cuicongyuan + 5 赞一个!
shmoss + 5 很给力!
wybuct + 5 赞一个!
15159050498 + 3 很给力!
wmx400 + 5 赞一个!
xzf680 + 5 抓白嫖一葱,很给力
纯脆entropy + 5
江南一根葱 + 5 亲自白嫖
freesoft00 + 5
slore + 5 很给力!

查看全部评分

446#
发表于 4 天前 | 只看该作者
学习
回复

使用道具 举报

445#
发表于 7 天前 来自手机 | 只看该作者
谢谢分享
回复

使用道具 举报

444#
发表于 7 天前 | 只看该作者
谢谢分享
回复

使用道具 举报

443#
发表于 7 天前 来自手机 | 只看该作者
谢谢分享
回复

使用道具 举报

442#
发表于 7 天前 来自手机 | 只看该作者
谢谢分享
回复

使用道具 举报

441#
 楼主| 发表于 2024-11-7 20:33:11 | 只看该作者
20241107 更新 v1.0.4
修复SMBIOS中会出现非法字符的问题
更新64位驱动,尝试解决Win11下需要改注册表的问题。
回复

使用道具 举报

440#
发表于 2024-10-22 22:00:25 | 只看该作者
感谢楼主分享
回复

使用道具 举报

439#
发表于 2024-10-22 21:50:35 | 只看该作者
多謝提供分享!
回复

使用道具 举报

438#
发表于 2024-10-22 21:47:18 | 只看该作者
感谢分享,下载体验一下
回复

使用道具 举报

437#
发表于 2024-10-18 10:28:26 | 只看该作者
多谢楼主分享!
回复

使用道具 举报

436#
发表于 2024-10-17 21:48:03 | 只看该作者
感谢大神的好东东
回复

使用道具 举报

435#
发表于 2024-9-20 09:29:12 | 只看该作者
非常好
回复

使用道具 举报

434#
发表于 2024-9-16 19:15:51 | 只看该作者

感谢分享!
回复

使用道具 举报

433#
发表于 2024-9-11 10:32:05 | 只看该作者
谢谢分享,win确实参数格式减号极少用。
回复

使用道具 举报

432#
 楼主| 发表于 2024-9-5 13:38:43 | 只看该作者
本帖最后由 wintoflash 于 2024-9-5 13:44 编辑
水鸟 发表于 2024-9-5 10:24
楼主能否指点一下怎么实现“硬件信息概览”?感谢感谢!原帖http://bbs.wuyou.net/forum.php?mod=redirec ...

那要看你具体是什么环境下了,比如PowerShell下处理JSON很方便。
我完全不会PowerShell,通过询问ChatGPT就让它帮我写了个简单的PowerShell脚本:
  1. $programPath = ".\nwinfo.exe"
  2. $programArgs = @("--format=json",
  3.         "--cp=utf8",
  4.         "--sys",
  5.         "--cpu",
  6.         "--net=phys",
  7.         "--disk=no-smart,phys"
  8.         )

  9. $processOutput = & $programPath $programArgs

  10. $parsedJson = $processOutput | ConvertFrom-Json

  11. $cpu0 = $parsedJson.'CPUID'.'CPU0'
  12. Write-Output "CPU: $($cpu0.'Brand')"

  13. $sys = $parsedJson.'System'
  14. Write-Output "OS: $($sys.'Os')"

  15. foreach ($net in $parsedJson.'Network') {
  16.         Write-Output "Network: $($net.'Description')"
  17. }

  18. foreach ($disk in $parsedJson.'Disks') {
  19.         Write-Output "Disk: $($disk.'HW Name')"
  20. }
复制代码

执行效果如下:

你可以根据自己的需要,让AI来帮你写脚本。
回复

使用道具 举报

431#
 楼主| 发表于 2024-9-5 13:34:36 | 只看该作者

没有。
回复

使用道具 举报

430#
发表于 2024-9-5 10:38:20 | 只看该作者
        赞一个!
回复

使用道具 举报

429#
发表于 2024-9-5 10:36:14 | 只看该作者

好东西,支持.
回复

使用道具 举报

428#
发表于 2024-9-5 10:24:38 | 只看该作者
wintoflash 发表于 2024-3-16 12:45
你是想用命令行工具生成一个类似于"硬件信息概览"式的报告吧?

楼主能否指点一下怎么实现“硬件信息概览”?感谢感谢!原帖http://bbs.wuyou.net/forum.php?mod=redirect&goto=findpost&pid=5216025&ptid=428046

点评

那要看你具体是什么环境下了,比如PowerShell下处理JSON很方便。 我完全不会PowerShell,通过询问ChatGPT就让它帮我写了个简单的PowerShell脚本: 执行效果如下: [attachimg]546797[/attachimg] 你可以根据自  详情 回复 发表于 2024-9-5 13:38
回复

使用道具 举报

427#
发表于 2024-9-4 10:28:42 | 只看该作者
没有风扇信息吗

点评

没有。  详情 回复 发表于 2024-9-5 13:34
回复

使用道具 举报

426#
发表于 2024-9-4 10:17:34 | 只看该作者
不错很好的工具使用了一下很方便的
回复

使用道具 举报

425#
 楼主| 发表于 2024-9-3 19:03:36 | 只看该作者
20240903 更新 v1.0.2
修复部分磁盘序列号中会出现非法字符的问题
更新 CrystalDiskInfo 9.4.3
回复

使用道具 举报

424#
发表于 2024-8-23 21:45:37 来自手机 | 只看该作者
感谢分享!
回复

使用道具 举报

423#
发表于 2024-8-23 13:16:08 | 只看该作者
谢谢分享!
回复

使用道具 举报

422#
发表于 2024-8-22 16:06:58 | 只看该作者
好东西,支持.
回复

使用道具 举报

421#
发表于 2024-8-22 15:25:22 | 只看该作者
1
回复

使用道具 举报

420#
发表于 2024-8-22 13:35:38 | 只看该作者
感谢分享!!!!!
回复

使用道具 举报

419#
发表于 2024-8-21 20:35:52 | 只看该作者
能不能把分区部分独立出来搞个小工具
回复

使用道具 举报

418#
发表于 2024-8-21 17:10:29 | 只看该作者
谢谢分享!
回复

使用道具 举报

417#
发表于 2024-8-21 06:11:47 | 只看该作者
谢谢分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-15 11:51

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表