2009-07-10 11 views

答えて

3

Windowsオペレーティングシステムのバージョンは、GetVersionExを呼び出して取得できます。

OSVERSIONINFO vi; 
vi.dwOSVersionInfoSize = sizeof vi; 
GetVersionEx(&vi); 

if (vi.dwMajorVersion >= 6) 
    // Windows Vista or newer 
else 
    // Windows XP or older 
+0

XPとの違いを伝えるだけです –

+0

詳しく教えていただけますか? – avakar

+2

私はかなり異なったバージョン間の違いを正しく伝えると確信しています。 「5.something」はXP、「6」はVista、6.1はWindows 7だと思う。 – SCdF

2

アプリケーションにハードコードされたプラットフォーム固有のパスを使用しないでください。これらのものには環境変数があります。

コマンドプロンプトを開き、「set」と入力すると、その一覧が表示されます。これらのいくつかは、

  • HOME
  • APPDATA
  • はのためにそう...注意するには、Windows 95の重要な環境変数以来
  • PROGRAMFILES
  • SYSTEMROOT
  • ALLUSERSPROFILE

標準されてきました例...

 
    char * path; 
    path = getenv("HOME"); 
    printf(path); 

ターゲットバージョンのウィンドウの周りには、2つの変数が共通する変数が表示されます。

編集:pythonは私に文字列操作、固定されたサンプルコードで怠惰にさせてくれました。

+2

[SHGetFolderPath](http://msdn.microsoft.com/en-us/library/bb762181) (VS.85).aspx)。 –

関連する問題