Page 1 of 1

MSI Script for MS WIX

Posted: 22 Feb 2018 10:22
by q2956
Hello,

I would like to contribute my script for creating MSI files for larger deployments.

Kind Greetings, Q



To run the XML File with WIX 3.11 on Windows (place all VLC files in a Folder called "files") run following commands in command promt:

heat dir .\files -dr InstallDir -cg VLCFilesGroup -gg -g1 -sf -srd -var "var.MyDir" -out HeatFile.wxs

candle HeatFile.wxs VLC-2.x.x-x32.wix.xml -arch x86 -dMyDir=.\files

light -out ..\VLC-2.2.8-x32.msi VLC-2.x.x-x32.wix.wixobj HeatFile.wixobj







FILE: VLC-2.x.x-x32.wix.xml

Code: Select all

<?xml version='1.0'?> <Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'> <Product Id='07e4a884-6ec0-489d-97ef-d3d95a002280' Name='VLC Media Player 3.0.0 (32-bit)' Language='1033' Version='3.0.0.0' Manufacturer='Videolan.org' UpgradeCode='01da1e28-5f41-441e-912f-61d79810ed16' > <Package Description='VLC Media Player' Comments='VLC Media Player' Manufacturer='Videolan.org' InstallerVersion='301' Compressed='yes' /> <Media Id='1' Cabinet='VLCMediaPlayer.cab' EmbedCab='yes' /> <Property Id="ALLUSERS" Value="1" /> <Directory Id='TARGETDIR' Name='SourceDir'> <Directory Id='ProgramFilesFolder' Name='PFiles'> <Directory Id='ManufacturerDir' Name='VideoLAN'> <Directory Id='InstallDir' Name='VLC'> <Component Id='InstallDir' Guid='40cafce6-a4e4-43ac-a3d8-086912f40c5c' > <CreateFolder /> <RemoveFolder Id='InstallDir' On='uninstall' /> </Component> <Directory Id="ProgramMenuFolder"> <Directory Id="MyShortcutsDir" Name="VLC Media Player" /> </Directory> </Directory> </Directory> </Directory> </Directory> <DirectoryRef Id="ManufacturerDir"> <Component Id="ManufacturerDir" Guid="1a19ad6d-c1f9-4e7a-9fcf-a34d06cae70c" KeyPath="yes"> <CreateFolder /> </Component> </DirectoryRef> <DirectoryRef Id="MyShortcutsDir"> <Component Id="VLC_Shortcut" Guid="7883bd2b-54f7-4ecd-af6a-b4ad7888452f"> <Shortcut Id="StartMenuShortcut" Name="VLC Media Player" Description="Start VLC Media Player" Target="[InstallDir]vlc.exe" /> <RemoveFolder Id="RemoveMyShortcutsDir" On="uninstall" /> <RegistryValue Root="HKCU" Key="Software\VideoLAN\VLC" Name="installed" Type="integer" Value="1" KeyPath="yes" /> </Component> </DirectoryRef> <Feature Id='VLC_Media_Player' Title='VLC Media Player' Level='1'> <ComponentRef Id='ManufacturerDir' /> <ComponentRef Id='InstallDir' /> <ComponentGroupRef Id='VLCFilesGroup' /> <ComponentRef Id='VLC_Shortcut' /> </Feature> <InstallExecuteSequence> </InstallExecuteSequence> </Product> </Wix>

Re: MSI Script for MS WIX

Posted: 22 Feb 2018 10:25
by q2956
for better view of the XML file "VLC-3.x.x-x32.wix.xml":


<?xml version='1.0'?>
<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'>
<Product Id='07e4a884-6ec0-489d-97ef-d3d95a002280' Name='VLC Media Player 3.0.0 (32-bit)' Language='1033'
Version='3.0.0.0' Manufacturer='Videolan.org' UpgradeCode='01da1e28-5f41-441e-912f-61d79810ed16' >

<Package Description='VLC Media Player'
Comments='VLC Media Player' Manufacturer='Videolan.org'
InstallerVersion='301' Compressed='yes' />

<Media Id='1' Cabinet='VLCMediaPlayer.cab' EmbedCab='yes' />
<Property Id="ALLUSERS" Value="1" />
<Directory Id='TARGETDIR' Name='SourceDir'>
<Directory Id='ProgramFilesFolder' Name='PFiles'>
<Directory Id='ManufacturerDir' Name='VideoLAN'>
<Directory Id='InstallDir' Name='VLC'>
<Component Id='InstallDir' Guid='40cafce6-a4e4-43ac-a3d8-086912f40c5c' >
<CreateFolder />
<RemoveFolder Id='InstallDir' On='uninstall' />
</Component>
<Directory Id="ProgramMenuFolder">
<Directory Id="MyShortcutsDir" Name="VLC Media Player" />
</Directory>
</Directory>
</Directory>
</Directory>
</Directory>

<DirectoryRef Id="ManufacturerDir">
<Component Id="ManufacturerDir" Guid="1a19ad6d-c1f9-4e7a-9fcf-a34d06cae70c" KeyPath="yes">
<CreateFolder />
</Component>
</DirectoryRef>

<DirectoryRef Id="MyShortcutsDir">
<Component Id="VLC_Shortcut" Guid="7883bd2b-54f7-4ecd-af6a-b4ad7888452f">
<Shortcut Id="StartMenuShortcut" Name="VLC Media Player" Description="Start VLC Media Player" Target="[InstallDir]vlc.exe" />
<RemoveFolder Id="RemoveMyShortcutsDir" On="uninstall" />
<RegistryValue Root="HKCU" Key="Software\VideoLAN\VLC" Name="installed" Type="integer" Value="1" KeyPath="yes" />
</Component>
</DirectoryRef>

<Feature Id='VLC_Media_Player' Title='VLC Media Player' Level='1'>
<ComponentRef Id='ManufacturerDir' />
<ComponentRef Id='InstallDir' />
<ComponentGroupRef Id='VLCFilesGroup' />
<ComponentRef Id='VLC_Shortcut' />
</Feature>



<InstallExecuteSequence>

</InstallExecuteSequence>

</Product>

</Wix>

Re: MSI Script for MS WIX

Posted: 22 Feb 2018 11:38
by chouquette
Hi, thanks a lot!

I'll try to integrate this, however my understanding is that we can't use WiX 3.11 as it doesn't work well on wine, but hopefully I'll still be able to take advantage of your contribution!