Comment utiliser Wix toolset, et les actions custom pour afficher une boite de dialogue ?

Vous venez de coder l’action cutom du siècle avec C#, et wix toolset. Seulement, vous savez qu’il y a un cas qui provoquera une erreur bloquant le déploiement. Dans une telle situation, il serait bon d’afficher une boite de dialogue dérivant le problème rencontré.

Ne cherchez pas à utiliser une méthode tirée de WinForm, WPF, ou une autre solution tirée de Win32. Cela ne fonctionnera pas comme vous le désirez.

À la place, il convient d’utiliser les méthodes fournies par l’objet Session. Celui-ci dispose d’une méthode Message qui permet d’envoyer à msiexec les informations à afficher.

Voici un petit exemple :


public static void MessageError(Session session, String message)
{
   session.Message(InstallMessage.Error, new Record { FormatString = message });
}

Simple et efficace. Malheureusement cela n’est pas bien documenté du côté de wix toolset :(

Jérémy Jeanson

Comments

You have to be logged in to comment this post.