Bal*_*Tom 5 excel vba windows-11
我有一个 Excel 工作簿,可供其他几个用户使用。我发现一些功能在不同的 Windows 操作系统上的工作方式有所不同。我的工作簿需要对不同的窗口做出反应。
在过去,
b = oWsh.RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProductName")"^
会告诉我版本,即“Windows 10 Enterprise”。实际上这有点奇怪,因为当我查看注册表时,它显示“Windows 10 Pro”……“Enterprise”来自哪里?
无论如何,当我在 Win 11 上运行相同的命令时,它仍然显示“Windows 10 Pro”。
如何查明别人电脑上的操作系统是 Win 10 还是 Win 11?
正如详细描述的那样。
通过使用 WMI,您可以了解很多信息。它相当神秘,用 VBA 来做也不会减少它的神秘性。
Function IsWindows11() As Boolean
Dim WMIService As Object
Dim OsInfo As Object
Dim Entry As Object
Set WMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
Set OsInfo = WMIService.ExecQuery("Select * from Win32_OperatingSystem")
For Each Entry In OsInfo
If InStr(Entry.Name, "Microsoft Windows 11") > 0 Then
IsWindows11 = True
Exit Function
End If
Next
IsWindows11 = False
End Function
Run Code Online (Sandbox Code Playgroud)
如果您想了解其工作原理,请阅读 WMI。您可以使用这样的命令在 Powershell 中执行类似的操作
Get-ComputerInfo | select OsName
Run Code Online (Sandbox Code Playgroud)
但随后你必须调用它并获取答案。
| 归档时间: |
|
| 查看次数: |
319 次 |
| 最近记录: |