Windows 8 では、デバイス マネージャーで PCIE デバイスを右クリックすると、[詳細] タブの [PCI 現在のリンク速度] プロパティで PCIe リンク速度を読み取ることができます。PCIe リンク幅についても同じことができます。
C# アプリケーションでプログラムによってこの情報にアクセスしたいと考えています。それ、どうやったら出来るの?WMIを介して?また、Windows 7 でも同じことができますか?
これがあなたを少し刺激することを願っています:
using System;
using System.Management;
namespace PCIeSpeedExample
{
class Program
{
static void Main(string[] args)
{
ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\cimv2", "select * from Win32_NetworkAdapter");
foreach (ManagementObject obj in searcher.Get())
{
Console.WriteLine("--------------- Adapter ----------------");
foreach (PropertyData pd in obj.Properties)
{
Console.WriteLine("{0} = {1}", pd.Name, pd.Value);
}
}
Console.Read();
}
}
}