2009-07-26 65 views
3

我如何引用在命令行上的文件的自定义操作?如何获得一个文件的位置在一个WiX的脚本

我有自定义操作正确访问MySQL性能,但是我还没有想出的咒语来访问已安装的SQL脚本的路径。

下面是WiX的脚本中的相关章节。我试图让自定义操作参考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'/> 

回答

3

使用[#MYSQL_SCRIPTS] conversion,这将转化为这些文件在安装时的完整路径。

<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

感谢。该解决方案的工作和链接正是我所期待的。 – 2009-07-27 04:51:37

相关问题