无论 PC 语言设置如何,如何确定 Windows 10 是否为主页

How can I determine if Windows 10 is Home regardless of PCs language settings

通过注册表查找 Windows 10 的版本很容易,但如果查找非英语单词,则确定 Home、Pro 或 Enterprise 不是那么多。

在 Win32_OperatingSystem\Caption 我可以看到例如"Microsoft Windows 10 Pro"

是否有一些键可以通过非语言特定的方式进行检查,因为 "Home" 不是这种情况,比如说,法语中 Famille 是 Famille,Pro 是 Professionnel。

将每种可能的语言变体添加到代码中简直太丑了。

使用 GetProductInfo API 并检查以下 return 值:

0x00000065 (PRODUCT_CORE - Home)
0x00000063 (PRODUCT_CORE_COUNTRYSPECIFIC - Home China)
0x00000062 (PRODUCT_CORE_N - Home N)
0x00000064 (PRODUCT_CORE_SINGLELANGUAGE - Home Single Language)

对于我的用例,有一个简单的 if/then 可以遵循,因为我只关心 Windows 10 的家庭版:

您可以解析 Win32_OperatingSystem\Caption 的 WMI 查询结果。据我所知,除法国外,寻找 "Home"。法国获得 "Famille"。好吧,他们非常非常喜欢对任何非法语单词皱眉。如果两者都不是,则使用 Win32_OperatingSystem\OperatingSystemSKU。 2,3,5,26都是家庭版。

@magicandre1981 建议 GetProductInfo API 不起作用,因为这是通过 WMI 使用的,但是 API 是 WMI 的基础。没有什么会有所作为。

所有这一切都不是了解用户实际拥有什么的可靠方法,但恕我直言,它正在努力淘汰家庭版用户。如果谁有更好的方法,请post.