私はこれを行う方法について頭を悩ませています。約2か月前に、wmi呼び出しから単一の要素を取得する方法を示すリンクを見つけました。
class Sample
{
public static int Main(string[] args)
{
ManagementObject o =
new ManagementObject("Win32_Service.Name='Alerter'");
//or with a full path :
ManagementObject mObj =
new ManagementObject(
"\\\\MyServer\\root\\MyApp:MyClass.Key='abc'");
return 0;
}
}
これは、WMIを完全に検索して1つのプロパティを取得するよりもはるかに高速に結果を返すため、すばらしいと思いました。私はそれをいじって、このコードをWin32_ComputerSystemで動作させるようにしました。また、Win32_DiskDriveやBaseBoardでも動作するようにしたと思いますが、特定のコードが見つからないため、頭のてっぺんから思い出せません。 。だから今、私はそれをWin32_BIOSで動作させて、目立たせ続けようとしています。有効な結果を返すように「key」プロパティが見つからないようです。
私は無駄に次のパスを試しました。
\\.\root\cimv2:Win32_BIOS.SoftwareElementState=3
\\.\root\cimv2:Win32_BIOS.TargetOperatingSystem=0
\\.\root\cimv2:Win32_BIOS.SoftwareElementState=3,TargetOperatingSystem=0
Win32_BIOSクラスで見つけた2つのキーは、名前とバージョンです。しかし、バージョンは私が必要としているものです。別のコンピューターでこれを取得しようとしているので、名前をハードコーディングするだけでなく、BIOS名を取得する別の方法を見つけることができません。だから私はちょっと立ち往生していると思います。何か案は?