Windows8.1のバージョン情報 – プログラミング – Home

Windows8.1のバージョン情報
 
通知
すべてクリア

[解決済] Windows8.1のバージョン情報


AR2
 AR2
(@ar2)
Estimable Member
結合: 5年前
投稿: 110
Topic starter  

 お世話になっております。
 先日、MSDNで公開されていたのでインストールしてみました。

 自作のアプリで、エクスプローラーの詳細表示で表示可能な項目数、スタートメニュー
もどきが追加されたことによる仮想フォルダ制御などのOSの差を吸収しようとしました。
 で、GetVersionEx()でOSのバージョン番号を取得してOSごとに異なる挙動を吸収しよう
としたのですが、今回はこのバージョン番号の判定方法が使えないようです。
 GetVersionEx()で値を取得するとWindow8.1ではなく、Windows8と同じ情報を返してき
ています。

OSのバージョン情報で表示されている情報
Ver.6.3 ビルド番号 9600
GetVersionEx()で取得できる値
Ver.6.2 ビルド番号 9200

 Shell32.dllのバージョン情報を参照すれば「Ver.,6.3.9600.16384
(winblue_rtm.130821-1623)」こんな文字列が返ってくるので「6.3」やビルド番号は取得
可能ですが、何が正しいと信じて良いのか分からなくなってしまいました。
 多分、インストーラーを騙すための措置だと思いますが、他に正確なバージョン番号を
取得する方法はありませんでしょうか?

 開発環境はVS2012で、OSはWindows8.1です。


引用
トピックタグ
仲澤@失業者
(@uncle_kei)
Prominent Member
結合: 5年前
投稿: 828
 

本物が出てくるまではどうなるかわからないとは思いますが、
ひとつ疑問なのは、

OSVERSIONINFOEX verEx;

を使っても取れなかったということでしょうか。
取得できるという情報もあったようですが。


返信引用
AR2
 AR2
(@ar2)
Estimable Member
結合: 5年前
投稿: 110
Topic starter  

さっそくの回答ありがとうございます。

一応、完成版というかRTMのWindows8.1の話です。

Shell32.dllの方にはrtmと入ってますし。

>OSVERSIONINFOEX verEx;

>を使っても取れなかったということでしょうか。

NT4の時代から使ってたソースを使いまわしていたので、OSVERSIONINFOの方を使っていま
した。

でも、OSVERSIONINFOを使ってるからといって、嘘情報を返して良いという話にはならな
いような気がします。

Windows8まで正しい値を返していたわけですし。

質問しておいてなんですが、ちょっと体調崩しちゃったので復調し次第OSVERSIONINFOEX
の方の検証をしてみます。

ありがとうございました。


返信引用
ロマ
 ロマ
(@ロマ)
ゲスト
結合: 18年前
投稿: 170
 

http://8thway.blogspot.jp/2013/07/per-monitor-dpi.html
ここの後半とリンク先
http://msdn.microsoft.com/en-us/library/windows/desktop/dn302074.aspx
にいろいろ書いてあるようです。


返信引用
AR2
 AR2
(@ar2)
Estimable Member
結合: 5年前
投稿: 110
Topic starter  

to仲澤@失業者さん

 とりあえず検証結果の報告です。
 OSVERSIONINFOとOSVERSIONINFOEXの違いは無く、同じようにVer.6.2 Build:9200を返し
てきました。

toロマさん

 情報の提供ありがとうございます。
 マニフェスト定義すれば、GetVersionEx()でも適切な値を返してくるかもしれませんね。
 将来、OSごとのGUID文字列がいつ提供されるのか、いささか不安に感じますがこちらで
対処してみようと思います。

 後半のリンクは、こういう事情があったのかと背景は理解しましたが、対応方法の正当
性は疑問ですね。
 Vistaのサービスパックが何個出るとかMS社ですら予測できなかったでしょうに・・・
今後出てくるであろうAPI名をどうするつもりなのか注視したいと思います。
 あと新しいAPIはVS2013にて対応とあるので、とりあえず今回は使用できない手段と考
えておきます。

 とりあえず、道筋が見えたので解決済みにしておきます。
 ありがとうございました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました