如何在Windows Server上获取PCI插槽的类型信息
在Windows上获取PCIe插槽类型(类似Linux
dmidecode -t slot) 方法1:用PowerShell调用专用WMI类
Win32_SystemSlot确实经常返回未知类型,改用Win32_PCIExpressSlot类能拿到更精准的PCIe插槽信息——这是专门针对PCI Express插槽的WMI类。
执行以下PowerShell命令:
Get-CimInstance -Class Win32_PCIExpressSlot | Select-Object Name, SlotType, MaxLinkWidth, CurrentLinkWidth, PCIExpressVersion
返回的关键字段对应含义:
PCIExpressVersion:PCIe版本(比如3对应PCIe 3.0)MaxLinkWidth:插槽支持的最大链路宽度(比如16就是x16)CurrentLinkWidth:当前设备使用的链路宽度SlotType:插槽的物理类型描述
方法2:使用Windows版dmidecode
直接用移植到Windows的dmidecode工具,和Linux下的用法完全一致,能直接输出和Linux相同格式的插槽详情。
下载Windows版dmidecode后,在命令行执行:
dmidecode.exe -t slot
就能看到包含类似Type: x16 PCI Express 3 x16的完整插槽信息。
方法3:GUI工具查看(适合手动操作)
如果不需要命令行/编程方式,用CPU-Z这类工具,打开后切换到「主板」标签,就能看到所有PCIe插槽的类型、版本、链路宽度等详细信息。
方法4:编程层面解析DMI数据
如果需要在程序中获取,可以直接读取系统的DMI SMBIOS数据,解析其中的「System Slot」类型(类型9)的结构,里面包含插槽的类型、PCIe版本、链路宽度等字段。Windows下可以通过调用GetSystemFirmwareTable API来获取SMBIOS数据,然后自行解析。
内容的提问来源于stack exchange,提问作者Deepali Joshi
相关产品推荐
相关产品推荐

