Windows 10 上的 VersionNT MSI 属性 [英] VersionNT MSI property on Windows 10

查看:13
本文介绍了Windows 10 上的 VersionNT MSI 属性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

I'm finding that when I update the manifest for my bootstrapper to support Windows 10 compatability, the InstallUISequence of the MSI will correctly set VersionNT=1000, but the InstallExecuteSequence will set VersionNT=603.

如何让 InstallExecuteSequence 也设置 VersionNT=1000?

How do I make the InstallExecuteSequence also set VersionNT=1000?

推荐答案

这是我的两分钱......

Here's my two cents....

我没有发现 VersionNT 属性非常有用.VersionNT64 是: VersionNT64 .... 不是 VersionNT64 来确定位数.

I don't find the VersionNT property terribly useful. VersionNT64 is: VersionNT64 .... Not VersionNT64 to determine bitness.

这有点小题大做(他们这样做,我们这样做......)但危急时刻需要采取危急措施......

This is a bit of a hack (they do this, we do that...) but desperate times call for desperate measures....

在 MSFT 正在玩的所有兼容性游戏中,它们似乎只掩盖了主要和次要,但构建和修订.我还发现在 Win8 上将其屏蔽为 6.2,在 Win 10 上将其屏蔽为 6.3.所以我觉得这样做很舒服:

In all of the compatibility games MSFT is playing they only seem to be masking the Major and Minor but Build and revision. I've also worked out that on Win8 they mask it as 6.2 and on Win 10 they mask it as 6.3. So therefore I feel comfortable doing this:

<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,以指示存在特定功能、组件、API 并将其用于我的测试.

What I tend to do ask myself is "WHY" do I need Windows (FOO)? I then look for some registry entry or DLL that indicates that particular feature, component, API is present and use that for my test.

Microsoft 采用了一种常青的方法,即您无需知道它是什么版本,您将始终拥有最新版本,并且它始终被称为 Windows 10",对我来说,这强化了我更喜欢的方法拿.我知道有一天他们会出错,我确实需要知道否则我会安装,我的应用程序会失败,我的用户会抱怨并且不知道他们有什么版本.(叹气……)

Microsoft has adopted an evergreen approach of "you don't need to know what version it is, you'll always have the latest and it'll always be called Windows 10" and to me this reinforces the approach I prefer to take. I know that a day will come that they are wrong and I do need to know otherwise I'll install and my application will fail and my users will complain and not know what version they have. (Sigh...)

这篇关于Windows 10 上的 VersionNT MSI 属性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆