私はこれを行う方法を頭に入れています。私は約2ヶ月前にwmi呼び出しから単一の要素を取得する方法を示したリンクを発見しました。パス文字列を使用してWin32_BIOSバージョンを取得しようとしています
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で動作させるように努力しています。私は "キー"プロパティを見つけることができないので、有効な結果が返されます。
私は無駄に次のパスを試しました。
\\.\root\cimv2:Win32_BIOS.SoftwareElementState=3
\\.\root\cimv2:Win32_BIOS.TargetOperatingSystem=0
\\.\root\cimv2:Win32_BIOS.SoftwareElementState=3,TargetOperatingSystem=0
Win32_BIOSクラスで見つかる2つのキーは、名前とバージョンです。しかし、バージョンは必要なものです。私は別のコンピュータでこれを取得しようとしているので、名前をハードコードするだけでは、BIOS名を取得する別の方法を見つけることができません。だから私はちょっとちょっと固まっていると思う。何か案は?
WMIコード作成ツールを試しましたか? http://www.microsoft.com/download/en/details.aspx?id=8572 – Tergiver
@Tergiverそのリンクをありがとう、それは有用だった。この番組を見てよかったです。 –