Windows XPプロサービスパック3は、32ビットと64ビットの両方で動作しています。私たちは、WMIを使ってBIOSの製造元とモデルを入手していますが、WMIやCOMのほかにWin32 APIやアセンブリ言語を使用する方法を好むでしょう。コードサンプルは大歓迎です。WMIを使用せずにC++でBIOS製造元とモデルを入手するにはどうすればよいですか?
答えて
それはあなたがなどSystemBiosVersion、SystemBiosDate、
はまた、このようなBIOSVendorまだより多くの情報を持っているBIOSと呼ばれるサブキーが存在していHKEY_LOCAL_MACHINE /ハードウェア/説明/システム
でレジストリのだとBIOSVersion。
誰がシステムをビルドしたかによって、BaseBoardManufacturerとその他のクールな情報も入手できるはずです。
UPDATE
あなたはthis linkをチェックアウトすることがあります。それはVBコードです。彼らはレジストリからそれを読み込もうとしますが、失敗するとメモリアドレスから文字列データを取り出すことに失敗します。この場合、バージョンは& HFE061、日付は& HFFFF5です。
DmiDecode for Windowsこれを行うことができます。
これにはビジュアルスタジオのC++プロジェクトはありますか?私は何も見つけることができませんでした。 – jjxtra
これはLinuxツールのポートなので、おそらくそうではありません。 –
ソースコードを持つcodeprojectに、APIコールGetSystemFirmwareTableを使用してSMIBIOS情報を取得する記事があります。リンク:http://www.codeproject.com/KB/system/SMBIOS_Peek.aspx
私のVista 32ビットマシンでは、これは素晴らしいですが、私たちはWindows XP Professional x64で32ビットのアプリケーションを実行しますが、これらのキーには情報がありません。 – jjxtra
2002年のこの記事によると、そこにいるはずです。 http://www.pctools.com/guides/registry/detail/830/ – NotMe
奇妙な。私たちはまた、いくつかのサーバー2003標準ボックスを持っていて、それらにはどちらかのポピュレートされたキーがありません... – jjxtra