2009-07-26 4 views
3

Comment effectuer une action personnalisée faisant référence à un fichier sur la ligne de commande?Comment obtenir l'emplacement d'un fichier dans un script WiX

J'ai l'action personnalisée accéder correctement aux propriétés MYSQL, mais je n'ai pas compris l'incantation pour accéder au chemin d'accès au script SQL installé.

Voici les sections pertinentes du script WiX. J'essaie d'obtenir l'action personnalisée pour référencer le chemin d'accès au fichier MYSQL_SCRIPTS.

<Directory Id="TARGETDIR" Name="SourceDir"> 
    <Directory Id="ProgramFilesFolder"> 
    <Directory Id="INSTALLLOCATION" Name="MyProgram"> 
    <Directory Id="DbSetupDir" Name="DbSetup"> 
     <Component Id="SqlScripts" Guid="MYGUID"> 
      <File Id="MYSQL_EXE" Source="mysql.exe" Vital="yes" /> 
      <File Id="MYSQL_SCRIPTS" Source="MYSQL_SCRIPTS.sql" Vital="yes" /> 
     </Component> 
    </Directory> 
    </Directory> 
</Directory> 

... 

<CustomAction Id='LaunchFile' 
    FileKey='MYSQL_EXE' 
    ExeCommand='--host=[MYSQL_SERVER] 
    -u [MYSQL_USERNAME] 
    -P [MYSQL_PORT] 
    --password=[MYSQL_PASSWORD] 
    -e [DbSetupDir]\ALS_Scripts.sql' 
    Return='check'/> 

Répondre

3

Utilisez les touches [#MYSQL_SCRIPTS] conversion, cela se traduira par le chemin complet de ces fichiers au moment de l'installation.

<CustomAction Id='LaunchFile' 
    FileKey='MYSQL_EXE' 
    ExeCommand='--host=[MYSQL_SERVER] 
    -u [MYSQL_USERNAME] 
    -P [MYSQL_PORT] 
    --password=[MYSQL_PASSWORD] 
    -e [#MYSQL_SCRIPTS]' 
    Return='check'/> 
+0

Merci. La solution a fonctionné et le lien était exactement ce que je cherchais. –

Questions connexes