【问题标题】:Detect Operating System检测操作系统
【发布时间】:2011-07-02 04:57:55
【问题描述】:

我想知道如何检测一个人的操作系统是否是 Windows 7,我有点新,不知道如何做到这一点。请告诉我是否可行以及执行此操作的代码。

【问题讨论】:

  • 您将此标记为 VB。您的意思是 vb.net 还是 vbscript 中的,或者可能是 VBA(Office 宏)中的?

标签: vb.net


【解决方案1】:

请参阅Environment.OSVersion property on MSDN。它是一个静态属性,返回一个OperatingSystem 对象,该对象具有一个Version 属性,您只需检查MajorMinor 版本号即可查看它是否为6.1 (Windows 7 is actually version 6.1)。

    Dim osVer As Version = Environment.OSVersion.Version

    If osVer.Major = 6 And osVer.Minor = 1 Then
        Console.WriteLine("win7!!")
    End If

【讨论】:

    【解决方案2】:

    我猜是因为你有点新,你实际上使用的是 VB.NET 而不是经典的 VB 6。

    在 VB.NET 中,您可以使用:

    Dim osVersion As String = System.Environment.OSVersion.ToString()
    

    【讨论】:

      【解决方案3】:

      很容易使用My.Computer.Info.OSFullName

      您需要设置app.manifest 文件以获得正确的版本号。如果您没有设置app.manifest,即使System.Environment.OSVersion.ToString() ' 也不会给出正确的版本

      add an app.manifest

      Console.WriteLine(My.Computer.Info.OSFullName)
      Console.WriteLine(My.Computer.Info.OSVersion)
      Console.WriteLine(My.Computer.Info.OSPlatform)
      

      输出:

      Microsoft Windows 10 Pro
      10.0.18362.0
      Win32NT
      

      【讨论】:

        【解决方案4】:

        我会用

        My.Computer.Info.OSFullName
        

        【讨论】:

        • 虽然此代码可能会回答问题,但提供有关此代码为何和/或如何回答问题的额外上下文可提高其长期价值。
        最近更新 更多