現在稼動しているシステムのプロセッサや オペレーティングシステムを取得する方法は2種類あります。
GetVersionExAPIおよび
GetSystemInfoAPIを用いる。
Windows NT 4.0では現在の稼働環境の情報がいくつかの 環境変数に格納されています。
| 変数 | 例 | 説明 |
|---|---|---|
| PROCESSOR_ARCHITECTURE | x86 | プロセッサアーキテクチャ (Intel x86, MIPS, DEC Alpha など) |
| PROCESSOR_LEVEL | 6 | プロセッサファミリ (486/Pentium/Pentium Proなどの区別) |
| PROCESSOR_REVISION | 0304 | プロセッサリヴィジョン (プロッサファミリ中のリヴィジョン番号) |
| PROCESSOR_IDENTIFIER | x86 Family 6 Model 3 Stepping 4, GenuinIntel | プロセッサの種類を特定する文字列 (アーキテクチャ、ファミリ、リヴィジョン、ベンダを示す) |
| NUMBER_OF_PROCESSORS | 1 | プロセッサの個数 |
| OS | Windows_NT | オペレーティングシステムの種類 |
稼働環境に関する情報はレジストリのHKLM\HARDWAREハイヴから 取得することができます。
| サブキー | 値 | 例 | 説明 |
|---|---|---|---|
|
HKLM\ HARDWARE\ DESCRIPTION\ System\ CentralProcessor |
Identifier | x86 Family 6 Model 3 Stepping 4 | プロセッサの種類を特定する文字列 (アーキテクチャ、ファミリ、リヴィジョンを示す) |
| VendorIdentifier | GenuinIntel | プロセッサの供給元ベンダを特定する文字列 | |
| ~MHz | 300 | プロセッサの内部クロック周波数 | |
|
HKLM\ HARDWARE\ DESCRIPTION\ System\ FloatingPointProcessor |
Identifier | x86 Family 6 Model 3 Stepping 4 | 浮動小数点数演算プロセッサの種類を特定する文字列 (アーキテクチャ、ファミリ、リヴィジョンを示す) |
以下のAPIを用いて稼働環境を取得することができます。
| API名 | 説明 |
|---|---|
GetVersionEx |
オペレーティングシステムのバージョン情報を取得する |
GetSystemInfo |
システムのプラットフォーム情報を取得する |
これらのAPIを利用したサンプルを下に示します。