Как я выбираю Всех / Просто Меня на основе предыдущей установленной версии?

Используя Visual Studio устанавливают проект. Я хотел бы изменить Всех / Просто Меня выбор к тому же, поскольку пользователь выбрал во время предыдущей установки.

1
задан skaffman 5 August 2010 в 11:36
поделиться

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.

Готово!

2
ответ дан 2 September 2019 в 22:25
поделиться

Вы можете сохранить значение свойства MSI ALLUSERS в четко определенном месте в реестре во время установки. Затем вы можете запросить это значение при обновлении и действовать соответствующим образом.

Вы также можете использовать MSI api, чтобы проверить, установлен ли ваш продукт для компьютера или пользователя. Для этого вы должны вызвать функцию MsiEnumProductsEx и посмотреть, отображается ли ваш продукт в любом контексте установки.

0
ответ дан 2 September 2019 в 22:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: