使用Visual Studio安装项目。我想将Everyone / Just Me选项更改为与之前安装期间选择的用户相同。
答案 0 :(得分:2)
终于明白了。使用VBScript自定义操作。
Dim myUpgradeCode
myUpgradeCode = "{6EFB1553-7F4F-4E26-A32B-E2F0F8E11CA9}"
Dim justMe
justMe = False
'AssignmentType
' Equals 0 if product is advertised or installed per-user.
' Equals 1 if product is advertised or installed per-machine for all users.
Set products = Session.Installer.RelatedProducts( myUpgradeCode )
For Each product In products
astp = CLng(Session.Installer.ProductInfo(product, "AssignmentType"))
If astp = 0 Then
justMe = True
End If
Next
If JustMe Then
Session.Property("ALLUSERS") = ""
Else
Session.Property("ALLUSERS") = "1"
End If
在AppSearch之前执行。
完成!
答案 1 :(得分:0)
您可以在安装期间将ALLUSERS
MSI属性的值保存到注册表中定义良好的位置。然后,您可以在升级时查询该值并相应地执行操作。
您还可以使用MSI API检查是否在每台计算机或每用户上下文中安装了您的产品。为此,您可以调用MsiEnumProductsEx
函数,查看您的产品是否出现在任何安装环境中。