f3-logo-flexerasoftware

Objectif :

  • Pouvoir utiliser dans une Custom Action exécuter en mode « Commit » différentes valeurs accessibles normalement en mode Exécution Immédiate.
    Dans ce cas, nous utilisons une ou plusieurs variables d’environnement système temporaires.

1 – Création d’une Custom action en mode « Immediat Execution »

<New VBScript> \< Stored in Custom Action>

donne_commit1
L’environnement d’exécution de cette Custom Action est de type Immediate Execution.
Elle est placée après la séquence d’exécution d’installation « InstallFinalize ». Elle est exécutée lors de l’installation et la désinstallation. (Donc pas de condition d’exécution).

Détail du script vbs

 donne_commit2

Explication :
L’exemple ci-dessus récupère la valeur contenue dans une clé en base registre <HKLM\Software\Bentley\MicroStation\{********}\ProgramParentPath> puis l’affecte à une variable d’environnement Système temporaire <Tmp_MicroStation_Dir>.
Cette variable d’environnement pourra être réutilisée ultérieurement toute au long du déroulement du MSI.

2 – Création d’une Custom Action en mode « Commit Execution ».

Cette Custom Action supprime à la désinstallation, la variable d’environnement temporaire « Tmp_MicroStation_Dir » préalablement créée.

Cette Custom Action supprime à la désinstallation, la variable d’environnement temporaire « Tmp_MicroStation_Dir » préalablement créée.

donne_commit3

Cette Custom Action est exécuter en mode « Commit Execution » et placée juste avant la séquence d’exécution d’installation « InstallFinalize ». Elle est exécutée seulement lors de la désinstallation (Install Exec Condition : REMOVE~= »ALL » )

Détail du script vbs

 donne_commit4

Dans l’exemple ci-dessus, la variable d’environnement Système nommée Tmp_MicroStation_Dir est supprimée. On lui affecte une valeur nulle.