在VB.NET中获取Windows版本

时间:2011-08-24 07:20:06

标签: .net vb.net windows visual-studio-2010

所有人都是 是否有任何方法使用VB.NET API来检测Win Edition(例如Home / Professional /...)

我尝试了我在How can I determine the Windows version from a VB 6 app?找到的示例,但 osv.OSVSize = Len(osv) 在VB2010Espress中出现错误:变量'osv'在分配值之前使用。 ..

PS我不想使用WMI

2 个答案:

答案 0 :(得分:1)

以下内容完全没有防弹(因为返回的字符串可能因文化而异,并且可能会在新版本的Windows中没有警告地更改)但是它可能足以满足您的需求:

    If My.Computer.Info.OSFullName.ToUpper.Contains("PROFESSIONAL") Then
        Debug.WriteLine("Proffessional")
    ElseIf My.Computer.Info.OSFullName.ToUpper.Contains("HOME") Then
        Debug.WriteLine("Home")
    elseif ...
        'etc
    End If

答案 1 :(得分:0)

我刚刚将GetProductInfo发现到Kernel32.dll中,正在调查....