喫茶XRAYトップページ

[スレッド全体
]

[10187] Re:次世代OSであるかの判定?返信 削除
2016/7/15 (金) 21:05:04 Mr.XRAY
> それは,判定方法のコードの書き方ですね.

まさかとは思いますが...

> 判定できると思う.それは,バージョンが上がるたびに
> メジャーバージョンの値が大きくなっていて,


ということが前提ですから,
LMajor が メジャーバージョン番号,LMinor がマイナー番号だとすると,

  if (LMajor <= 10) and (LMinor = 0) then begin
    // Windows 10 以前のバージョン
  end else begin
    // Windows 10 より後のバージョン
  end;


ちなみに

               Major  Minor
Windows 3.1    3       1
Windows 95     4       0
Windows 98     4      10
Windows 98 SE  4      10   Windows 98 とはビルド番号が違う
Windows ME     4      90
Windows 2000   5       0
Windows XP     5       1
Windows Vista  6       0
Windows 7      6       1
Windows 8      6       2
Windows 8.1    6       3
Windows 10    10       0
 
Windows XP の場合,SP2 までと SP3 適用では機能に違いがある
特にセキュリティ関係が


[10188] Re2:次世代OSであるかの判定?返信 削除
2016/7/15 (金) 21:24:58 Mr.XRAY
▼ Mr.XRAYさん

>   if (LMajor <= 10) and (LMinor = 0) then begin
>     // Windows 10 以前のバージョン
>   end else begin
>     // Windows 10 より後のバージョン
>   end;


あっ,これじゃダメだ.
ごめん,自分で考えてくださいませ.


[10190] Re2:次世代OSであるかの判定?返信 削除
2016/7/15 (金) 22:48:23 taka
▼ Mr.XRAYさん
> > それは,判定方法のコードの書き方ですね.
>
> まさかとは思いますが...
>
> > 判定できると思う.それは,バージョンが上がるたびに
> > メジャーバージョンの値が大きくなっていて,
>
> ということが前提ですから,
> LMajor が メジャーバージョン番号,LMinor がマイナー番号だとすると,
>
>   if (LMajor <= 10) and (LMinor = 0) then begin
>     // Windows 10 以前のバージョン
>   end else begin
>     // Windows 10 より後のバージョン
>   end;
>
>
> ちなみに
>
>                Major  Minor
> Windows 3.1    3       1
> Windows 95     4       0
> Windows 98     4      10
> Windows 98 SE  4      10   Windows 98 とはビルド番号が違う
> Windows ME     4      90
> Windows 2000   5       0
> Windows XP     5       1
> Windows Vista  6       0
> Windows 7      6       1
> Windows 8      6       2
> Windows 8.1    6       3
> Windows 10    10       0
>
> Windows XP の場合,SP2 までと SP3 適用では機能に違いがある
> 特にセキュリティ関係が


最新delphi持っていないので
SysUtils.Win32MajorVersionの挙動は知りませんが
getVersionExだとマニフェストにsupportedOS記述していなかったら、
古いバージョン返しちゃうんですよね・・・
立ち悪いですね〜


[10191] Re3:次世代OSであるかの判定?返信 削除
2016/7/16 (土) 11:46:43 Mr.XRAY
▼ takaさん

> getVersionExだとマニフェストにsupportedOS記述していなかったら、
> 古いバージョン返しちゃうんですよね・・・
> 立ち悪いですね〜


ハッキリ言わせていただくと,立ち悪いと思います !
何か戦略でもあるのかも知れません.


[▼次のスレッド]
INCM/CMT
Cyclamen v3.82