2017-01-23 1 views
3

J'ai une exigence dans laquelle j'ai besoin d'exécuter une action personnalisée si le programme d'installation échoue (échec automatique ou manuel en retournant ActionResult.Failure à partir d'une autre action personnalisée). J'ai essayé <Custom Action="CallMe" After="InstallFinalize"></Custom> mais l'autorité de certification n'est pas appelée. Toute aide est appréciée. Editer: Trouvé à partir des journaux qu'il s'agit d'une action personnalisée "FatalError". Mais ce faisant, alors ce <Custom Action="CallMe" Before="FatalError"></Custom> jette Error 8 Unresolved reference to symbol 'WixAction:InstallExecuteSequence/FatalError' in section 'Product:*'Wix: Quelle CustomAction est appelée juste avant d'afficher l'écran d'échec?

+0

Qu'est-ce que CallMe action personnalisée fait? La meilleure pratique consiste à implémenter une autorité de certification de restauration pour chaque autorité de certification définie. Ainsi, en cas d'échec, la machine revient à l'état précédent. –

+0

Tout ce que je voulais faire c'est se connecter. Selon mes recherches, nous ne pouvons rien faire à partir d'actions personnalisées dans UISequence (déclenchées par des événements de contrôle). Je prévois d'écrire tout dans un objet chaîne statique, continuez d'ajouter les journaux dans cet objet chaîne. En cas de succès, je suis capable de le vider dans le fichier journal en utilisant session.Log. Je voudrais faire de même en cas d'échec de l'installation. [Ce hack] (http://stackoverflow.com/questions/3494101/wix-c-sharp-custom-action-logging-not-working#) serait ma deuxième option. – Vasudev

+0

Avez-vous essayé: Les valeurs pour OnExit sont succès, annuler, erreur, suspendre –

Répondre

1

Vous pouvez utiliser

<Custom Action="CallMeCancel" OnExit="cancel" /> 
    <Custom Action="CallMeError" OnExit="error" /> 

Les valeurs sont OnExit succès, annuler, erreur, suspendre