2015-09-14 1 views
2

Dans mon géré bootstrapper, je suis emballage cadre net et VC redistribuable 4.5.1 comme suit:Wix Managed Bootstrapper: Installation NET Framework et ajoutez une entrée dans le programme complémentaire supprimer, même si nous annulons l'installation du produit

<PackageGroupRef Id   = "NetFx451Redist" />  
    <PackageGroupRef Id   = "VC_ReDist_120" After="NetFx451Redist" /> 

    <RollbackBoundary /> 

    <MsiPackage  Id   = "MainProduct" 
        DisplayName    = "$(var.ProductName)"      
        DisplayInternalUI  = "no" 
        Visible     = "no" 
        Compressed    = "yes" 
        SourceFile    = "$(var.MainProduct)" 
        Vital     = "yes" 
        After     = "NetFx451Redist"        
    > 

Sur Windows 7 x64, où Net FW 4.5.1 n'est pas présent, en installant, cela afficherait l'écran de base de wixstdba pour installer .Net framework et il ajoute également une entrée dans les programmes Add-Remove, avant de finir Net Framework et de lancer msi l'installation du paquet. enter image description here

Problème: Maintenant, à la finition Net Framework 4.5.1 installation et le lancement de mon paquet de produit (bootstrapper géré), si je résilie son installation, ou il peut devenir interrompu en raison d'une erreur/question, il a quitté la entrée dans Ajouter-Supprimer des programmes. Si j'essaie de désinstaller/modifier à partir des programmes Ajout/Suppression, il lance à nouveau l'interface d'installation du programme d'amorçage managé avec le bouton Installer activé, comme s'il s'agissait d'une nouvelle installation, mais toujours avec des erreurs. Je souhaite supprimer son entrée du programme Ajout/Suppression si j'annule l'installation ou si elle est interrompue en raison d'une erreur/d'un problème à partir de l'interface gérée. Est-ce que je manque quelque chose de mon Bundle ou code managé ... ???

Répondre

2

Le moteur de gravure enregistre l'ensemble dans Ajout/Suppression de programmes dès qu'une partie de l'ensemble est installée. Le package de prérequis .NET fait partie de l'ensemble. Par conséquent, lorsque MBAPrereq BootstrapperApplication installe .NET, l'ensemble est enregistré dans Ajout/Suppression de programmes. Il n'y a aucun moyen de modifier ce comportement du moteur Burn dans votre Bundle ou BA. Une demande de fonctionnalité potentielle pourrait être que Burn enregistre uniquement l'ensemble après l'installation d'un package non permanent. Les demandes de fonctionnalités doivent être classées au http://wixtoolset.org/issues. Aujourd'hui, vous pouvez essayer de contourner ce problème en mettant de la logique dans votre BA où il se désinstalle automatiquement avant d'appeler Engine :: Exit s'il détecte ce scénario.

+0

Merci Sean. J'ai ajouté le problème ici: http://wixtoolset.org/issues/4905/. J'espère que quelqu'un apportera une solution. –