2

OSVERSIONINFOを使用してvb6アプリケーションのOSをチェックしています。しかし、バージョン番号dwMajorVersionとdwMinorVersionが同じであるため、Windows7とWindowsServer2008R2を区別できません。では、これらをどのように区別するか。他の方法を使用してvb.netで実行できると思います。しかし、vb6でどのように行うことができますか?

4

2 に答える 2

6

Xearinoxが上記のコメントで指摘したように、OSVERSIONINFOEXより多くの情報を返します。

特に、(0x0000001)が設定されwProductTypeているかどうかを調べることができます。VER_NT_WORKSTATIONそうである場合、マシンはクライアントOSを実行しており、そうでない場合はサーバーを実行しています。

OSVERSIONINFO MSDNエントリの備考セクションのグラフには、その構造体アイテムを使用してさまざまなOSを検出することを示す列もあります。

于 2013-03-26T02:30:22.603 に答える
3

[ツールバー]>[コンポーネントと追加]>[MicrosoftSysControl6.0]を右クリックします。SysInfoボタンをダブルクリックしてフォームに追加し、このコードを使用します

Private Sub Form_Load()
    Dim HancyRockz as string
    HancyRockz = "OsVersion :- " & SysInfo1.OSVersion & " / Built " & SysInfo1.OSBuild
    Text1.Text=HancyRockz
End Sub
于 2013-04-27T09:33:03.617 に答える