2017-06-05 102 views
0

我正在使用WiX工具集創建一個.msi安裝程序,它將: - 1.通過運行mongodb-win32-x86_64-2008plus-ssl- 3.4.4-signed.msi 2.爲\ data \ db和\ log目錄和配置文件 3.將mongo服務作爲Window服務啓動。使用WiX工具集安裝程序安裝mongo db並啓動mongo服務

我是Wix的新手。我能夠設置它並創建一個安裝程序,它將mongo安裝程序msi和配置文件打包到Wix安裝程序。但它只是複製這些文件來安裝flocation。我想要通過WiX安裝程序執行上述所有步驟。以下是重要部分: -

<Directory Id='TARGETDIR' Name='SourceDir'> 
     <Directory Id='EMERSONMONGO' Name="$(var.rootFolder)"> 
     <Directory Id='PFWMONGOFOLDER' Name='$(var.subRootFolder)'> 
      <Directory Id='MONGO' Name='$(var.installFolder)'> 
      <Component Id="mongodb.msi" Guid="99B82660-F66B-4012-B742-D875623B1C16"> 
       <File Id="mongodb.msi" Source="$(var.mongoSourceDir)\mongodb-win32-x86_64-2008plus-ssl-3.4.4-signed.msi" KeyPath="yes" Checksum="yes"/> 
      </Component> 
      </Directory> 
     </Directory> 
     </Directory> 
    </Directory> 

<Feature Id='Complete' Title='PFWMongo Installer' Description='PFWMongo Installer' Level='1'> 
     <ComponentRef Id="mongodb.msi" /> 
</Feature> 

<CustomAction Id="RunMongoMsi" Return="ignore" Execute="deferred" 
        FileKey="mongodb.msi" ExeCommand="" 
        HideTarget="no" Impersonate="no" /> 

<InstallExecuteSequence> 
     <Custom Action='RunMongoMsi' Before='InstallFinalize'/> 
     <RemoveExistingProducts After="InstallInitialize" > 
      UNINSTALLPREVVERSIONS 
     </RemoveExistingProducts> 
     <Custom Action="NewerVersion" After="FindRelatedProducts">NEWERVERSIONDETECTED</Custom> 
</InstallExecuteSequence> 

任何幫助,非常感謝。

回答

2

你想要做的就是使用WiX Bootstrapper/Burn這個。然後,您會將安裝添加到與此類似的鏈中。

<Chain> <MsiPackage Id="mongodb.msi" SourceFile="$(var.mongoSourceDir)\mongodb-win32-x86_64-2008plus-ssl-3.4.4-signed.msi" EnableFeatureSelection="yes" DisplayInternalUI="yes" Compressed="yes" Visible="yes" /> </Chain>