おせわになります。
まると申します。
Win2000/VC++6.0を使って、SDKで開発してます。
98、NT、2000、XP上で動かしたいのでOSを判別したいと思います。
98系とNT系の判別はできますが、
NT/2000/XPの判別はどうすればよいのでしょうか?
ちなみに、現在はGetVersionExのdwPlatformIDを使っています。
NTと2000とXPの判別方法をご教授いただけますでしょうか。
よろしくお願いします。
GetVersionExのdwMajorVersionはいかがでしょう。
NT3.xでは3、NT4では4、2000では5になるはずです。
XPは持っていないので試せません。
XPHomeで試してみました。
XPでは
dwMinorVersionが1
dwMajorVersionが5
になりました。
VC++.Netを使いました。
駄犬さん、kngさん、早速お返事いただきありがとうございます。
dwPlatformIdだけじゃなく、別のメンバも使うのですね。
>駄犬さん
Win2000で、dwMajorVersion=5,dwMinorVersion=0となることを
確認する事ができました。
これでNT系も判別できますね!
ありがとうございました!
>kngさん
WinXPHomeでは、dwMajorVersionはWin2000と同じで、
dwMinorVersionが1になっているのですね。
WinXPの環境を整えたら試したいと思います
わざわざ試して頂いてありがとうございます!
これで完全にOSの判別ができると思います。
お教えいただきありがとうございました!
またお聞きする事もあると思いますが、今後とも宜しくお願い致します。