1 <?xml version='1.0' encoding="utf-8"?>
4 * Copyright (C) 2011 VideoLAN and its authors
6 * Author: Ludovic Fauvet <etix@videolan.org>
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version.
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
23 <?include $(sys.CURRENTDIR)\config.wxi?>
24 <Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'
25 xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
28 Name='$(var.ProductName) $(var.Version) ($(var.PlatformString))'
30 Version='$(var.VersionLong)'
31 Manufacturer='$(var.Manufacturer)'
32 UpgradeCode='d2e0205b-0d3a-46e2-adf7-0504ff48cf04'>
34 Description='$(var.ShortProductName) - The video swiss knife'
35 Manufacturer='$(var.Manufacturer)'
36 InstallPrivileges='elevated'
37 InstallScope='perMachine'
38 InstallerVersion='200'
41 <Condition Message="This application is only supported on Windows XP or higher.">
42 <![CDATA[Installed OR (VersionNT >= 501)]]>
45 <MajorUpgrade Schedule="afterInstallInitialize" DowngradeErrorMessage="A later version of [ProductName] is already installed. Setup will now exit."/>
46 <Property Id="NSISLOCATION">
47 <RegistrySearch Id="NSISLOCATION" Type="raw" Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Uninstall\VLC media player" Name="UninstallString" />
50 <Icon Id="vlc.ico" SourceFile="$(var.SourceDir)/vlc.ico"/>
52 <!-- The about link that appears in Add & Remove Programs. -->
53 <Property Id="ARPURLINFOABOUT" Value="$(var.AboutURL)" />
54 <!-- The help link that appears in Add & Remove Programs. -->
55 <Property Id="ARPHELPLINK" Value="$(var.SupportURL)" />
56 <!-- The update link that appears in Add & Remove Programs. -->
57 <Property Id="ARPURLUPDATEINFO" Value="$(var.UpdatesURL)" />
58 <!-- The icon that appears in Add & Remove Programs. -->
59 <Property Id="ARPPRODUCTICON" Value="vlc.ico" />
62 <Property Id="ApplicationFolderName" Value="$(var.Manufacturer)\$(var.AppFolder)" />
63 <Property Id="WixAppFolder" Value="WixPerMachineFolder" />
64 <Property Id="APPLICATIONFOLDER">
65 <RegistrySearch Id="FindInstallRegDir" Type="raw" Root="HKLM" Win64="$(var.Win64)" Key="Software\VideoLAN\VLC" Name="InstallDir" />
68 <WixVariable Id="WixUISupportPerUser" Value="1" />
69 <WixVariable Id="WixUILicenseRtf" Value="LICENSE.rtf" />
70 <WixVariable Id="WixUIBannerBmp" Value="bannrbmp.bmp" />
72 <Media Id='1' Cabinet='product.cab' EmbedCab='yes' CompressionLevel="high" />
74 <Directory Id='TARGETDIR' Name='SourceDir'>
75 <Directory Id='$(var.PlatformProgramFilesFolder)' Name='PFiles'>
76 <Directory Id='VideoLANFolder' Name='$(var.Manufacturer)'>
77 <Directory Id='APPLICATIONFOLDER' Name='$(var.AppFolder)' FileSource="$(var.SourceDir)">
79 <Component Id="InstallRegDir" Guid="$(var.CompInstallRegDir)" DiskId="1" Win64="$(var.Win64)">
80 <RegistryKey Id='RegInstallDir' Root='HKLM' Key='Software\VideoLAN\VLC' Action='createAndRemoveOnUninstall' >
81 <RegistryValue Name='InstallDir' Type='string' Value='[APPLICATIONFOLDER]' />
85 <Component Id='CompVLC' Guid='$(var.CompVLCexe)' Win64="$(var.Win64)">
86 <File Id='vlc.exe' Name='vlc.exe' KeyPath='yes' Vital='yes' DiskId='1' />
87 <File Id='vlc.exe.manifest' Name='vlc.exe.manifest' DiskId='1' />
89 <Shortcut Id="DesktopShortcut"
90 Directory="DesktopFolder"
91 Name="$(var.ProductName)"
92 WorkingDirectory="APPLICATIONFOLDER"
93 Description="$(var.ProductName)"
97 <!-- Capabilities keys for Vista/7 "Set Program Access and Defaults" -->
98 <RegistryValue Root="HKLM" Key="Software\Clients\Media\VLC\Capabilities" Name="ApplicationDescription" Value="$(var.ProductName)" Type="string" />
99 <RegistryValue Root="HKLM" Key="Software\Clients\Media\VLC\Capabilities" Name="ApplicationIcon" Value="[#vlc.exe],0" Type="string" />
100 <RegistryValue Root="HKLM" Key="Software\Clients\Media\VLC\Capabilities" Name="ApplicationName" Value="$(var.ProductName)" Type="string" />
101 <RegistryValue Root="HKLM" Key="Software\Clients\Media\VLC\DefaultIcon" Value="[#vlc.exe],0" Type="string" />
102 <RegistryValue Root="HKLM" Key="Software\Clients\Media\VLC\shell\Open\command" Value=""[#vlc.exe]" --started-from-file "%1"" Type="string" />
103 <RegistryValue Root="HKLM" Key="Software\RegisteredApplications" Name="$(var.ShortProductName)" Value="Software\Clients\Media\VLC\Capabilities" Type="string" />
105 <!-- Open With... contextual menu -->
106 <RegistryValue Root="HKCR" Key="Applications\vlc.exe\shell\open" Name="$(var.ShortProductName)" Value="$(var.ProductName)" Type="string" />
108 <!-- App Paths to support Start, Run -->
109 <RegistryValue Root="HKLM" Key="SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\vlc.exe" Value="[#vlc.exe]" Type="string" />
110 <RegistryValue Root="HKLM" Key="SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\vlc.exe" Name="Path" Value="[APPLICATIONFOLDER]" Type="string" />
113 <Component Id='CompTXT' Guid='7fbd228c-87d8-4e91-85b3-aa65e03c9f1e' Win64="$(var.Win64)">
114 <File Id='AUTHORS.txt' Name='AUTHORS.txt' DiskId='1' />
115 <File Id='COPYING.txt' Name='COPYING.txt' DiskId='1' />
116 <File Id='NEWS.txt' Name='NEWS.txt' DiskId='1' />
117 <File Id='README.txt' Name='README.txt' DiskId='1' />
118 <File Id='THANKS.txt' Name='THANKS.txt' DiskId='1' />
121 <Component Id='CompLibvlccore' Guid='efa826fd-0037-4ccd-9573-604fde3b9efa' Win64="$(var.Win64)">
122 <File Id='libvlccore.dll' Name='libvlccore.dll' KeyPath='yes' Vital='yes' DiskId='1' />
125 <Component Id='CompLibvlc' Guid='50d7e1e1-4512-4020-9f7b-5dc8484574f3' Win64="$(var.Win64)">
126 <File Id='libvlc.dll' Name='libvlc.dll' KeyPath='yes' Vital='yes' DiskId='1' />
127 <File Id='libvlc.dll.manifest' Name='libvlc.dll.manifest' DiskId='1' />
130 <Component Id='CompNpvlc' Guid='e7d6b54c-c4ea-4280-90f5-c6ae80073d25' Win64="$(var.Win64)">
131 <File Id='npvlc.dll' Name='npvlc.dll' KeyPath='yes' DiskId='1' />
132 <File Id='npvlc.dll.manifest' Name='npvlc.dll.manifest' DiskId='1' />
135 <Component Id='CompAxvlc' Guid='cabe28b1-5586-4ac3-815b-4f3a834c0d54' Win64="$(var.Win64)">
136 <File Id='axvlc.dll' Name='axvlc.dll' KeyPath='yes' DiskId='1' />
137 <File Id='axvlc.dll.manifest' Name='axvlc.dll.manifest' DiskId='1' />
140 <Component Id='CompCacheGen' Guid='e1b4a499-e223-4c18-9de0-258f12b8dcfa' Win64="$(var.Win64)">
141 <File Id='vlc_cache_gen.exe' Name='vlc-cache-gen.exe' KeyPath='yes' DiskId='1' />
144 <Component Id='CompIcon' Guid='8707410c-55fe-4c38-924e-438762b8b82e' Win64="$(var.Win64)">
145 <File Id='vlc.ico' Name='vlc.ico' KeyPath='yes' DiskId='1' />
148 <Directory Id='PLUGINSDIR' Name='plugins'>
149 <Component Id='CompPluginsCache' Guid='0b72e987-8e3c-4201-aa3e-5b57ca9c040e' Win64="$(var.Win64)">
150 <RemoveFile Id="RemovePluginsCache" Name="plugins.dat" On="uninstall" />
154 <Component Id='CompPlayDiscs' Guid='b0d90296-b20c-4c74-a3b3-a7694e011f25' Win64="$(var.Win64)">
156 <RegistryValue Root="HKCR" Key="AudioCD\shell\PlayWithVLC" Value="Play with VLC media player" Type="string" />
157 <RegistryValue Root="HKCR" Key="AudioCD\shell\PlayWithVLC\command" Value=""[#vlc.exe]" --started-from-file cdda:///%1" Type="string" />
159 <RegistryValue Root="HKCR" Key="DVD\shell\PlayWithVLC" Value="Play with VLC media player" Type="string" />
160 <RegistryValue Root="HKCR" Key="DVD\shell\PlayWithVLC\command" Value=""[#vlc.exe]" --started-from-file dvd:///%1" Type="string" />
162 <!-- DVD video Handler -->
163 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\PlayDVDMovieOnArrival" Name="VLCPlayDVDMovieOnArrival" Value="" Type="string" />
164 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayDVDMovieOnArrival" Name="Action" Value="Play DVD movie" Type="string" />
165 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayDVDMovieOnArrival" Name="DefaultIcon" Value="[#vlc.exe],0" Type="string" />
166 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayDVDMovieOnArrival" Name="InvokeProgID" Value="VLC.DVDMovie" Type="string" />
167 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayDVDMovieOnArrival" Name="InvokeVerb" Value="Open" Type="string" />
168 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayDVDMovieOnArrival" Name="Provider" Value="$(var.ProductName)" Type="string" />
170 <!-- Audio CD Handler -->
171 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\PlayCDAudioOnArrival" Name="VLCPlayCDAudioOnArrival" Value="" Type="string" />
172 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayCDAudioOnArrival" Name="Action" Value="Play audio CD" Type="string" />
173 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayCDAudioOnArrival" Name="DefaultIcon" Value="[#vlc.exe],0" Type="string" />
174 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayCDAudioOnArrival" Name="InvokeProgID" Value="VLC.CDAudio" Type="string" />
175 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayCDAudioOnArrival" Name="InvokeVerb" Value="Open" Type="string" />
176 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayCDAudioOnArrival" Name="Provider" Value="$(var.ProductName)" Type="string" />
179 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\PlayVideoCDMovieOnArrival" Name="VLCPlayVCDMovieOnArrival" Value="" Type="string" />
180 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayVCDMovieOnArrival" Name="Action" Value="Play VCD movie" Type="string" />
181 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayVCDMovieOnArrival" Name="DefaultIcon" Value="[#vlc.exe],0" Type="string" />
182 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayVCDMovieOnArrival" Name="InvokeProgID" Value="VLC.VCDMovie" Type="string" />
183 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayVCDMovieOnArrival" Name="InvokeVerb" Value="Open" Type="string" />
184 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayVCDMovieOnArrival" Name="Provider" Value="$(var.ProductName)" Type="string" />
186 <!-- SVCD Handler -->
187 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\PlaySuperVideoCDMovieOnArrival" Name="VLCPlaySVCDMovieOnArrival" Value="" Type="string" />
188 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlaySVCDMovieOnArrival" Name="Action" Value="Play SVCD movie" Type="string" />
189 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlaySVCDMovieOnArrival" Name="DefaultIcon" Value="[#vlc.exe],0" Type="string" />
190 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlaySVCDMovieOnArrival" Name="InvokeProgID" Value="VLC.SVCDMovie" Type="string" />
191 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlaySVCDMovieOnArrival" Name="InvokeVerb" Value="Open" Type="string" />
192 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlaySVCDMovieOnArrival" Name="Provider" Value="$(var.ProductName)" Type="string" />
194 <!-- DVD Audio Handler -->
195 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\PlayDVDAudioOnArrival" Name="VLCPlayDVDAudioOnArrival" Value="" Type="string" />
196 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayDVDAudioOnArrival" Name="Action" Value="Play audio DVD" Type="string" />
197 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayDVDAudioOnArrival" Name="DefaultIcon" Value="[#vlc.exe],0" Type="string" />
198 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayDVDAudioOnArrival" Name="InvokeProgID" Value="VLC.OPENFolder" Type="string" />
199 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayDVDAudioOnArrival" Name="InvokeVerb" Value="Open" Type="string" />
200 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayDVDAudioOnArrival" Name="Provider" Value="$(var.ProductName)" Type="string" />
202 <!-- Generic video files Handler -->
203 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\PlayVideoFilesOnArrival" Name="VLCPlayVideoFilesOnArrival" Value="" Type="string" />
204 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayVideoFilesOnArrival" Name="Action" Value="Play video files" Type="string" />
205 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayVideoFilesOnArrival" Name="DefaultIcon" Value="[#vlc.exe],0" Type="string" />
206 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayVideoFilesOnArrival" Name="InvokeProgID" Value="VLC.OPENFolder" Type="string" />
207 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayVideoFilesOnArrival" Name="InvokeVerb" Value="Open" Type="string" />
208 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayVideoFilesOnArrival" Name="Provider" Value="$(var.ProductName)" Type="string" />
210 <!-- Generic audio files Handler -->
211 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\PlayMusicFilesOnArrival" Name="VLCPlayMusicFilesOnArrival" Value="" Type="string" />
212 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayMusicFilesOnArrival" Name="Action" Value="Play audio files" Type="string" />
213 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayMusicFilesOnArrival" Name="DefaultIcon" Value="[#vlc.exe],0" Type="string" />
214 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayMusicFilesOnArrival" Name="InvokeProgID" Value="VLC.OPENFolder" Type="string" />
215 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayMusicFilesOnArrival" Name="InvokeVerb" Value="Open" Type="string" />
216 <RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayMusicFilesOnArrival" Name="Provider" Value="$(var.ProductName)" Type="string" />
219 <RegistryValue Root="HKCR" Key="VLC.DVDMovie" Value="VLC DVD Movie" Type="string" />
220 <RegistryValue Root="HKCR" Key="VLC.DVDMovie\shell" Value="Open" Type="string" />
221 <RegistryValue Root="HKCR" Key="VLC.DVDMovie\shell\open\command" Value=""[#vlc.exe]" --started-from-file dvd:///%1" Type="string" />
222 <RegistryValue Root="HKCR" Key="VLC.DVDMovie\DefaultIcon" Value="[#vlc.exe],0" Type="string" />
224 <RegistryValue Root="HKCR" Key="VLC.CDAudio" Value="VLC CD Audio" Type="string" />
225 <RegistryValue Root="HKCR" Key="VLC.CDAudio\shell" Value="Open" Type="string" />
226 <RegistryValue Root="HKCR" Key="VLC.CDAudio\shell\open\command" Value=""[#vlc.exe]" --started-from-file cdda:///%1" Type="string" />
227 <RegistryValue Root="HKCR" Key="VLC.CDAudio\DefaultIcon" Value="[#vlc.exe],0" Type="string" />
229 <RegistryValue Root="HKCR" Key="VLC.VCDMovie" Value="VLC VCD Movie" Type="string" />
230 <RegistryValue Root="HKCR" Key="VLC.VCDMovie\shell" Value="Open" Type="string" />
231 <RegistryValue Root="HKCR" Key="VLC.VCDMovie\shell\open\command" Value=""[#vlc.exe]" --started-from-file vcd:///%1" Type="string" />
232 <RegistryValue Root="HKCR" Key="VLC.VCDMovie\DefaultIcon" Value="[#vlc.exe],0" Type="string" />
234 <RegistryValue Root="HKCR" Key="VLC.SVCDMovie" Value="VLC SVCD Movie" Type="string" />
235 <RegistryValue Root="HKCR" Key="VLC.SVCDMovie\shell" Value="Open" Type="string" />
236 <RegistryValue Root="HKCR" Key="VLC.SVCDMovie\shell\open\command" Value=""[#vlc.exe]" --started-from-file vcd:///%1" Type="string" />
237 <RegistryValue Root="HKCR" Key="VLC.SVCDMovie\DefaultIcon" Value="[#vlc.exe],0" Type="string" />
239 <RegistryValue Root="HKCR" Key="VLC.OPENFolder" Value="VLC Play Content" Type="string" />
240 <RegistryValue Root="HKCR" Key="VLC.OPENFolder\shell" Value="Open" Type="string" />
241 <RegistryValue Root="HKCR" Key="VLC.OPENFolder\shell\open\command" Value=""[#vlc.exe]" %1" Type="string" />
242 <RegistryValue Root="HKCR" Key="VLC.OPENFolder\DefaultIcon" Value="[#vlc.exe],0" Type="string" />
249 <Directory Id="ProgramMenuFolder">
250 <Directory Id="ProgramMenuManufacturerFolder" Name="$(var.Manufacturer)">
251 <Directory Id="ProgramMenuProductFolder" Name="$(var.ShortProductName)" />
254 <Directory Id="DesktopFolder" Name="Desktop"/>
257 <DirectoryRef Id="ProgramMenuProductFolder">
258 <Component Id="CompProgramMenuShortcuts" Guid="*" Win64="$(var.Win64)">
259 <!-- create folders -->
260 <CreateFolder Directory="ProgramMenuManufacturerFolder" />
261 <CreateFolder Directory="ProgramMenuProductFolder" />
262 <!-- remove folder -->
263 <RemoveFolder Id="RemoveProgramMenuManufacturerFolder"
264 Directory="ProgramMenuManufacturerFolder"
266 <RemoveFolder Id="RemoveProgramMenuProductFolder"
267 Directory="ProgramMenuProductFolder"
269 <!-- Application shortcuts -->
270 <Shortcut Id="VLCShortcut" Name="$(var.ProductName)" Target="[APPLICATIONFOLDER]vlc.exe" />
271 <Shortcut Id="SkinShortcut" Name="$(var.ProductName) skinned" Target="[APPLICATIONFOLDER]vlc.exe" Arguments="-Iskins" />
272 <Shortcut Id="VLCCleanShortcut" Name="Reset $(var.ProductName) preferences and cache files" Target="[APPLICATIONFOLDER]vlc.exe" Arguments="--reset-config --reset-plugins-cache vlc://quit" />
273 <Shortcut Id="NEWSShortcut" Name="Release Notes" Target="[APPLICATIONFOLDER]NEWS.txt" />
274 <util:InternetShortcut Id="WebsiteShortcut" Name="VideoLAN website" Target="http://www.videolan.org/"/>
275 <util:InternetShortcut Id="DocumentationShortcut" Name="Documentation" Target="http://www.videolan.org/doc/"/>
276 <!-- RegistryValue which serves as KeyPath -->
277 <RegistryValue Root="HKCU"
278 Key="Software\VideoLAN\VLC"
279 Name="StartMenuShortcuts"
286 <Feature Id='VLC' Title='$(var.ProductName)' Level='1' Absent="disallow" AllowAdvertise="no" Display="expand" Description="The $(var.ProductName) application">
287 <ComponentRef Id='InstallRegDir' />
288 <ComponentRef Id='CompVLC' />
289 <ComponentRef Id='CompLibvlccore' />
290 <ComponentRef Id='CompLibvlc' />
291 <ComponentRef Id='CompNpvlc' />
292 <ComponentRef Id='CompCacheGen' />
293 <ComponentRef Id='CompIcon' />
294 <ComponentRef Id='CompTXT' />
295 <ComponentRef Id='CompPluginsCache' />
296 <ComponentRef Id='CompProgramMenuShortcuts' />
298 <ComponentGroupRef Id='CompPluginsGroup' />
299 <ComponentGroupRef Id='CompLocaleGroup' />
300 <ComponentGroupRef Id='CompLuaGroup' />
301 <ComponentGroupRef Id='CompSkinsGroup' />
303 <Feature Id='WEBPLUGINS' Title='Web plugins' Level='1' AllowAdvertise="no">
304 <Feature Id='ACTIVEX' Title='ActiveX plugin' Level='1' AllowAdvertise="no">
305 <ComponentRef Id='CompAxvlc' />
306 <ComponentGroupRef Id='CompAxvlcGroup' />
308 <Feature Id='MOZILLA' Title='Mozilla plugin' Level='1' AllowAdvertise="no">
309 <ComponentRef Id='CompNpvlc' />
312 <Feature Id='FILEASSOCIATION' Title='File associations' Level='1' AllowAdvertise="no">
313 <Feature Id='VIDEOFILEASSOCIATION' Title='Video' Level='1' AllowAdvertise="no">
314 <ComponentRef Id='CompVideoFileAssociation' />
316 <Feature Id='AUDIOFILEASSOCIATION' Title='Audio' Level='1' AllowAdvertise="no">
317 <ComponentRef Id='CompAudioFileAssociation' />
319 <Feature Id='OTHERFILEASSOCIATION' Title='Others' Level='1' AllowAdvertise="no">
320 <ComponentRef Id='CompOtherFileAssociation' />
323 <Feature Id='DISCSPLAYBACK' Title='Disc associations' Level='1' AllowAdvertise="no">
324 <ComponentRef Id='CompPlayDiscs' />
328 <UIRef Id="WixUI_Advanced" />
330 <InstallExecuteSequence>
331 <!-- <RemoveExistingProducts After="InstallValidate" /> -->
332 <Custom Action="ExecVLCNSISUninstall" Before="InstallValidate">NSISLOCATION AND NOT Installed</Custom>
333 <Custom Action="ExecVLCCacheGen" Before="InstallFinalize">REINSTALL OR NOT Installed</Custom>
334 <Custom Action="SetExecVLCCacheGen" Before="ExecVLCCacheGen">REINSTALL OR NOT Installed</Custom>
335 </InstallExecuteSequence>
337 <!-- Uninstall an older version of VLC (using NSIS) -->
338 <CustomAction Id = "ExecVLCNSISUninstall"
339 Directory = "APPLICATIONFOLDER"
340 ExeCommand = "[NSISLOCATION] /S"
341 Execute = "immediate"
344 <!-- Launch silently vlc-cache-gen.exe during install -->
345 <CustomAction Id = "SetExecVLCCacheGen"
346 Property = "ExecVLCCacheGen"
347 Value = ""[#vlc_cache_gen.exe]" "[APPLICATIONFOLDER]plugins"" />
348 <CustomAction Id = "ExecVLCCacheGen"
350 DllEntry = "CAQuietExec"
355 <!-- Launch VLC after setup exits -->
356 <CustomAction Id = "StartAppOnExit"
359 Execute = "immediate"
361 Return = "asyncNoWait" />
362 <Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT"
363 Value="Launch VLC media player when setup exits." />
364 <Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOX" Value="1" />
367 <Publish Dialog = "ExitDialog"
371 Value = "StartAppOnExit">
372 WIXUI_EXITDIALOGOPTIONALCHECKBOX = 1 and NOT Installed
374 <ProgressText Action="ExecVLCCacheGen">Generating modules cache...</ProgressText>
380 BACKUP: MANUAL REGISTRATION OF AXVLC.DLL
381 **** THIS METHOD IS DEPRECATED ****
383 Within the <InstallExecuteSequence> node:
384 <Custom Action="RegisterAxvlc" After="InstallFinalize">NOT Installed</Custom>
385 <Custom Action="UnregisterAxvlc" Before="InstallInitialize">Installed</Custom>
387 Within the package add these custom actions:
389 <CustomAction Id = "RegisterAxvlc"
390 Directory = "APPLICATIONFOLDER"
391 ExeCommand = 'regsvr32.exe /s "[APPLICATIONFOLDER]axvlc.dll"'
394 <CustomAction Id = "UnregisterAxvlc"
395 Directory = "APPLICATIONFOLDER"
396 ExeCommand = 'regsvr32.exe /s /u "[APPLICATIONFOLDER]axvlc.dll"' />
398 Finally within the <UI> node:
400 <ProgressText Action="RegisterAxvlc">Registering DirectX plugin...</ProgressText>
401 <ProgressText Action="UnregisterAxvlc">Removing DirectX plugin...</ProgressText>