我试图找出真正的Windows版本。 出于某种原因,我的Wise安装程序有时会在Windows 7上报告XP版本号。
一个解决scheme是看看这里提到的kernel32.dll版本: 如何检测真正的Windows版本?
我试图找出各种Kernel32.dll版本的相应的Windows版本。
我无法找到每个版本的Windows的coreel32.dll版本列表,但是从测试(XP SP3,Vista,Windows 7)coreel32.dll版本#(Major.Minor)与Windows版本相同。
(Windows版本,这个版本的coreel32.dll)* Windows XP(win 5.1版),5.1.x * Windows Vista(win version 6.0),6.0.x * Windows 7(Win version 6.1) ,6.1.x
这并不完美,但它比任何其他方法都更好,因为它可以检查安装程序是否报告错误的Windows版本#。 (我意识到,我们应该试图弄清为什么安装程序报告错误的版本,但只发生在大约1%的情况下,我不能重复它,所以要求Kludge。)
在这里你可以找到一些版本,甚至不同之处:
https://abi-laboratory.pro/index.php?view=windows
正如你所看到的,版本号并不总是等同于操作系统版本,但是还有其他的差异,比如API甚至是DLL的可用性(尽管在依靠它之前我会三思而后行)。