【问题标题】:How to count the motherboard slots and get the motherboard serial number through java?如何通过java统计主板插槽并获取主板序列号?
【发布时间】:2021-11-07 04:47:32
【问题描述】:

如何计算主板插槽数,通过java获取主板序列号?我使用 Sigar Java API 来获取所有其他信息。但我不知道如何获取上述信息。

【问题讨论】:

  • 为什么不试试 serverfault,stackoverflow 可能不是正确的论坛。另一方面,我有一种预感,答案与 en.wikipedia.org/wiki/Hardware_abstraction_layer"></…> 有关。如果您询问是否存在任何可以返回此信息的系统调用,您可能会获得更大的成功。跨度>

标签: java sigar


【解决方案1】:

我认为 Sigar 尚未提供此类信息。但我们可以通过另一种方式收集信息。我不知道如何获取主板插槽,但是主板序列号可以很容易地使用 VBS (Window Script) 获取。

只需在扩展名为 .vbs 的文件中写下以下脚本

Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
Set colItems = objWMIService.ExecQuery _ 
("Select * from Win32_BaseBoard") 
For Each objItem in colItems 
    Wscript.Echo objItem.SerialNumber 
    exit for  ' do the first cpu only!

使用运行时类调用这些文件,

Process p = Runtime.getRuntime().exec("cscript //NoLogo " + "my.vbs");
BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));
      String line;
String result = "";
  while ((line = input.readLine()) != null) {
     result += line;
  }
  input.close();
System.out.println(result);

注意:这种方式仅适用于 Window 机器,因为它的平台依赖代码仅适用于 Windows 操作系统。

【讨论】:

    猜你喜欢
    • 2017-09-14
    • 2011-05-12
    • 1970-01-01
    • 2016-06-12
    • 2011-04-06
    • 2011-01-30
    • 2011-10-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多