スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

スポンサードリンク

Windowsのバージョン取得 Delphi

久々のDelphi関連です。

WindowsXP、IEで何かと話題のMicrosoft製品ですが、

OSのバージョンを取得して動作をコントロールする機会が多いので。


//******************************************************************************
// OS種類の取得
//******************************************************************************
function fncGetOSVer(pRetType: Integer): string;
var
osInfo : TOSVersionInfoEx;
sOsName : String;
sSpVer : String;
bRet : Boolean;

begin
osInfo.dwOSVersionInfoSize := sizeof(TOSVersionInfoEx);

bRet := GetVersionEx(osInfo);

sOsName :='';
sSpVer :='';

if bRet then begin

with osinfo do begin
case dwPlatformId of
VER_PLATFORM_WIN32_NT: //Windows NT/2000/XP
begin
if dwMajorVersion <= 4 then sOsName := 'WinNT4.0';
if dwMajorVersion = 5 then begin
if dwMinorVersion = 0 then begin
sOsName := 'Win2000';
if wServicePackMajor = 1 then begin
sSpVer := 'SP1';
end else if wServicePackMajor = 2 then begin
sSpVer := 'SP2';
end else if wServicePackMajor = 3 then begin
sSpVer := 'SP3';
end else if wServicePackMajor = 4 then begin
sSpVer := 'SP4';
end else begin
sSpVer := 'SPX';
end;
end;
if dwMinorVersion = 1 then begin
sOsName := 'WinXP';
if wServicePackMajor = 1 then begin
sSpVer := 'SP1';
end else if wServicePackMajor = 2 then begin
sSpVer := 'SP2';
end else if wServicePackMajor = 3 then begin
sSpVer := 'SP3';
end else begin
sSpVer := 'SPX';
end;
end;
if dwMinorVersion = 2 then begin
sOsName := 'Win2003';
if wServicePackMajor = 1 then begin
sSpVer := 'SP1';
end else if wServicePackMajor = 2 then begin
sSpVer := 'SP2';
end else begin
sSpVer := 'SPX';
end;
end;
end;
if dwMajorVersion = 6 then begin
if dwMinorVersion = 0 then begin // Win Vista, Win SV 2008
if wProductType = VER_NT_WORKSTATION then begin
sOsName := 'WinVISTA';
if wServicePackMajor = 1 then begin
sSpVer := 'SP1';
end else if wServicePackMajor = 2 then begin
sSpVer := 'SP2';
end else begin
sSpVer := 'SPX';
end;
end else begin
sOsName := 'Win2008';
end;
end;
if dwMinorVersion = 1 then begin // Win 7, Win SV 2008 R2
if wProductType = VER_NT_WORKSTATION then begin
sOsName := 'Win7';
if wServicePackMajor = 1 then begin
sSpVer := 'SP1';
end else begin
sSpVer := 'SPX';
end;
end else begin
sOsName := 'Win2008R2';
end;
end;
if dwMinorVersion = 2 then begin // Win 8, Win SV 2012
if wProductType = VER_NT_WORKSTATION then begin
sOsName := 'Win8';
end else begin
sOsName := 'Win2012';
end;
end;
if dwMinorVersion = 3 then begin // Win 8.1, Win SV 2012R2
if wProductType = VER_NT_WORKSTATION then begin
sOsName := 'Win8.1';
end else begin
sOsName := 'Win2012R2';
end;
end;
end;
end;

VER_PLATFORM_WIN32_WINDOWS: //Windows 9x/ME
begin
if dwMajorVersion =4 then begin
if (dwMinorVersion =0) then sOsName := 'Win95';
if (dwMinorVersion =10) then
begin
if szCSDVersion[1] = 'A' then
sOsName := 'Win98SE'
else
sOsName := 'Win98';
end;
if (dwMinorVersion =90) then sOsName := 'WinME';
end;
end;
end; //case
end; //with
end;

if pRetType = 0 then Result := sOsName;
if pRetType = 1 then Result := sSpVer;
end;


にほんブログ村のランキングに参加しています。
下記バナーをクリックしてくださると本当に助かります。
よろしくお願いいたします。
にほんブログ村 IT技術ブログへ
にほんブログ村


スポンサードリンク

テーマ:プログラミング - ジャンル:コンピュータ

コメントの投稿

非公開コメント

スポンサードリンク
最新記事
カテゴリ
カレンダー
09 | 2017/10 | 11
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -
最新トラックバック
ブロとも申請フォーム

この人とブロともになる

月別アーカイブ
激安特価情報
Amazonタイムセール
楽天市場タイムセール
Yahoo出店記念セール
NTT-X Store 激安特価!
激安家電のGENO PLUS
コストコ・イケアの通販
つけたまま眠れるファンデ
家電品を安値で買うならこちら!
ケーズデンキ
ベルメゾンアウトレット
激安ブランドコスメ 週末セール
モバコレ SALE
au Brand Garden
アウトレットモール BRANDELI
ブックオフオンラインのオトナ買い
ビッグカメラ◆週末特別セール
ソフマップ 中古・アウトレット
【宿代全額ポイントバック】夏休み早期予約キャンペーン
ネットプライス 送料294円
イオンモールオンライン
EDIONネットショップ
最新コメント
天気予報

-天気予報コム- -FC2-
カウンター
検索フォーム
リンクに表示されるテキスト
ランキング参加中
クリックしていただけると、 こまつもとは大変嬉しいです。



人気ブログランキングへ

ランキングに参加しています。 クリックのご協力をお願い致します。 いつもありがとうございます。 にほんブログ村 通販ブログへ
ブログランキング・にほんブログ村へ
にほんブログ村 IT技術ブログ ソフトウェアへ
にほんブログ村 ゲームブログへ
にほんブログ村 IT技術ブログへ



人気ブログをblogramで分析

趣味・個人

ランキング

リンクリックブログランキング

私を登録 by BlogPeople



RSSリンクの表示
リンク
QRコード
QRコード
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。