相关疑难解决方法(0)

如何以面向未来的方式确定Windows版本

我注意到GetVersionEx()声明已被弃用.更糟糕的是,对于Windows 8.1(可能是未来版本),版本号受应用程序清单的限制.

我的目标是收集用户正在运行的操作系统上的分析,因此我可以适当地定位支持.我想要一个收集这些数据的面向未来的解决方案.更新清单不起作用,因为我只能更新已发布的Windows版本的清单,而不是更新版本.建议的替换API(版本助手函数)是无用的.

如何收集实际的Windows版本号?

澄清一下:通过"未来验证",我只是说我想要有一个相当不错的机会在下一个版本的Windows上工作.没有什么是确定的,但文档确实说GetVersionEx()不起作用.

c windows winapi

20
推荐指数
2
解决办法
3446
查看次数

使用 .NET Framework 或 Windows API 检测 Windows 11

在 .NET Framework 中,要获取操作系统版本,您可以使用和值Environment.OSVersion来告诉您 Windows 版本(即 6.1 = Windows 7、10.0 = Windows 10)。尽管 Windows 11 已经发布(开发版和测试版渠道)一个多月了,但文档尚未更新以提及如何检测 Windows 11。MajorMinor

对于 Windows API,GetVersion已永久弃用,甚至版本帮助程序 API 也只能升至IsWindows10OrGreater. 是否有简单的检查来确定主要的 Windows 版本,特别是 Windows 11?有人有类似的问题,但对于 Delphi(How to detector Windows 11 using Delphi 10.3.3),接受的答案都是 hacks。为什么微软这么难提供一个简单的API来返回当前的系统版本呢? GetVersion永远不应该被弃用。

.net windows winapi

14
推荐指数
1
解决办法
1万
查看次数

Windows Server 2019 支持的操作系统 GUID 是什么?

我正在尝试在 Windows Server 2019 上安装一些不受官方支持的软件。同一软件(也不支持)的几个旧版本和新版本安装并运行得很好,但一个特定版本不会尝试安装,而是只是标记它不受支持并将主要软件组件的复选框灰显。无论如何,我想尝试强制它运行,因为我在其他版本上的经验表明,如果我可以让它尝试无论如何,它可能会起作用。

我已经用 Resource Hacker 打开了 exe 文件,并找到了它通过 GUID 检查兼容操作系统的位置。兼容的操作系统列出了 Windows 10 (8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a)。我想如果我将此 GUID 更改为 Server 2019 的 GUID,它可能只会诱使它忘记它不受支持。但是我找不到 Windows Server 2019 的 GUID。我发现这个线程提供了几个以前版本的 GUID,但在 Server 2019 上没有

guid exe windows-server-2019

5
推荐指数
1
解决办法
582
查看次数

标签 统计

winapi ×2

windows ×2

.net ×1

c ×1

exe ×1

guid ×1

windows-server-2019 ×1