首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Windows 10上的VersionNT MSI属性

Windows 10上的VersionNT MSI属性
EN

Stack Overflow用户
提问于 2015-08-11 03:18:16
回答 5查看 14.9K关注 0票数 7

我发现,当我更新引导程序的清单以支持Windows 10可兼容性时,MSI的InstallUISequence将正确地设置VersionNT=1000,而InstallExecuteSequence将设置VersionNT=603。

如何使InstallExecuteSequence也设置VersionNT=1000?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2015-08-13 14:25:49

这是我的两分钱。

我不认为VersionNT属性非常有用。VersionNT64是: VersionNT64。而不是VersionNT64来确定比特。

这是个小问题(他们这么做,我们也这么做.)但是绝望的时候需要绝望的措施..。

在所有的兼容性游戏,MSFT正在玩,他们似乎只是掩蔽的主要和次要,但建设和修订。我还计算出,在Win8上,他们把它伪装成6.2,而在赢10的时候,他们把它伪装成6.3。因此,我觉得这样做很舒服:

代码语言:javascript
运行
复制
<Property Id="WIN10FOUND">
  <DirectorySearch Id="searchSystem" Path="[SystemFolder]" Depth="0">
    <FileSearch Id="searchFile" Name="advapi32.dll" MinVersion="6.3.10000.0"/>
  </DirectorySearch>
</Property>

我倾向于问自己“为什么”我需要Windows (FOO)?然后查找一些注册表条目或DLL,这些条目或DLL指示存在特定的特性、组件、API,并将其用于我的测试。

微软已经采用了一种常绿的方法,“你不需要知道它是什么版本,你将永远拥有最新的,它将永远被称为Windows 10”,对我来说,这强化了我更喜欢采用的方法。我知道总有一天他们是错的,我确实需要知道,否则我会安装,我的应用程序会失败,我的用户会抱怨,而不知道他们有什么版本。(叹息.)

票数 19
EN

Stack Overflow用户

发布于 2017-03-12 02:31:16

微软官方答覆:

在Windows10或Windows 2016上安装.msi安装包时,VersionNT值为603。

来源

票数 5
EN

Stack Overflow用户

发布于 2015-08-11 12:16:16

由于msiexec.exe的清单中没有Windows10的兼容性,而且VersionNT是一个私有财产,所以我不知道如何使执行序列看到VersionNT=1000。我建议以下几种方法之一:

  • 在UI序列中将VersionNT复制到另一个属性(有些公共财产类似于REALVERSIONNT,请确保像其他要传递给执行序列的属性一样在SecureCustomProperties中列出它),
  • 从引导程序传入实际值(同上),或
  • 如果在维护或卸载过程中需要相同的信息,则可能在引导程序中设置注册表项,然后通过系统搜索将其值提取到安装中。

(我对注册表项选项感到困惑,因为如果操作系统在将来升级,它可能会过时。还请注意,所有这些选项都很可能仅与Windows的理论未来版本中引导程序上的清单一样正确。)

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31932646

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档