]> git.sesse.net Git - vlc/blob - vlc.win32.nsi
* split file associations in 3 subcategories (audio, video, other)
[vlc] / vlc.win32.nsi
1 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
2 ; NSIS installer script for vlc ;\r
3 ; (http://nsis.sourceforge.net) ;\r
4 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
5 \r
6 !define PRODUCT_NAME "VLC media player"\r
7 !define PRODUCT_VERSION '${VERSION}'\r
8 !define PRODUCT_GROUP "VideoLAN"\r
9 !define PRODUCT_PUBLISHER "VideoLAN Team"\r
10 !define PRODUCT_WEB_SITE "http://www.videolan.org"\r
11 !define PRODUCT_DIR_REGKEY "Software\VideoLAN\VLC"\r
12 !define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"\r
13 !define PRODUCT_UNINST_ROOT_KEY "HKLM"\r
14 \r
15 ;;;;;;;;;;;;;;;;;;;;;;;;;\r
16 ; General configuration ;\r
17 ;;;;;;;;;;;;;;;;;;;;;;;;;\r
18 \r
19 Name "${PRODUCT_GROUP} ${PRODUCT_NAME} ${PRODUCT_VERSION}"\r
20 OutFile ..\vlc-${VERSION}-win32.exe\r
21 InstallDir "$PROGRAMFILES\VideoLAN\VLC"\r
22 InstallDirRegKey HKLM "${PRODUCT_DIR_REGKEY}" "Install_Dir"\r
23 SetCompressor lzma\r
24 ShowInstDetails show\r
25 ShowUnInstDetails show\r
26 SetOverwrite ifnewer\r
27 CRCCheck on\r
28 \r
29 InstType "Normal"\r
30 InstType "Full"\r
31 \r
32 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
33 ; NSIS Modern User Interface configuration ;\r
34 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
35 \r
36 ; MUI 1.67 compatible ------\r
37 !include "MUI.nsh"\r
38 \r
39 ; MUI Settings\r
40 !define MUI_ABORTWARNING\r
41 !define MUI_ICON "vlc48x48.ico"\r
42 !define MUI_UNICON "vlc48x48.ico"\r
43 !define MUI_COMPONENTSPAGE_SMALLDESC\r
44 \r
45 ; Welcome page\r
46 !insertmacro MUI_PAGE_WELCOME\r
47 ; License page\r
48 !insertmacro MUI_PAGE_LICENSE "COPYING.txt"\r
49 ; Components page\r
50 !insertmacro MUI_PAGE_COMPONENTS\r
51 ; Directory page\r
52 !insertmacro MUI_PAGE_DIRECTORY\r
53 ; Instfiles page\r
54 !insertmacro MUI_PAGE_INSTFILES\r
55 ; Finish page\r
56 !define MUI_FINISHPAGE_RUN "$INSTDIR\vlc.exe"\r
57 !define MUI_FINISHPAGE_NOREBOOTSUPPORT\r
58 !insertmacro MUI_PAGE_FINISH\r
59 \r
60 ; Uninstaller pages\r
61 !insertmacro MUI_UNPAGE_INSTFILES\r
62 \r
63 ; Language files\r
64 !insertmacro MUI_LANGUAGE "English"\r
65 \r
66 ; Reserve files\r
67 !insertmacro MUI_RESERVEFILE_INSTALLOPTIONS\r
68 \r
69 ; MUI end ------\r
70 \r
71 ;;;;;;;;;;;;;;;;;;;;;;;;;;\r
72 ; File type associations ;\r
73 ;;;;;;;;;;;;;;;;;;;;;;;;;;\r
74 \r
75 Function RegisterExtension\r
76   ; back up old value for extension $R0 (eg. ".opt")\r
77   ReadRegStr $1 HKCR "$R0" ""\r
78   StrCmp $1 "" NoBackup\r
79     StrCmp $1 "VLC$R0" "NoBackup"\r
80     WriteRegStr HKCR "$R0" "VLC.backup" $1\r
81 NoBackup:\r
82   WriteRegStr HKCR "$R0" "" "VLC$R0"\r
83   ReadRegStr $0 HKCR "VLC$R0" ""\r
84   WriteRegStr HKCR "VLC$R0" "" "VLC media file"\r
85   WriteRegStr HKCR "VLC$R0\shell" "" "Play"\r
86   WriteRegStr HKCR "VLC$R0\shell\Play\command" "" '"$INSTDIR\vlc.exe" "%1"'\r
87   WriteRegStr HKCR "VLC$R0\DefaultIcon" "" '"$INSTDIR\vlc.exe",0'\r
88 FunctionEnd\r
89 \r
90 Function un.RegisterExtension\r
91   ;start of restore script\r
92   ReadRegStr $1 HKCR "$R0" ""\r
93   StrCmp $1 "VLC$R0" 0 NoOwn ; only do this if we own it\r
94     ReadRegStr $1 HKCR "$R0" "VLC.backup"\r
95     StrCmp $1 "" 0 Restore ; if backup="" then delete the whole key\r
96       DeleteRegKey HKCR "$R0"\r
97     Goto NoOwn\r
98 Restore:\r
99       WriteRegStr HKCR "$R0" "" $1\r
100       DeleteRegValue HKCR "$R0" "VLC.backup"\r
101 NoOwn:\r
102     DeleteRegKey HKCR "VLC$R0" ;Delete key with association settings\r
103 FunctionEnd\r
104 \r
105 !macro RegisterExtensionSection EXT\r
106   Section /o ${EXT}\r
107     Push $R0\r
108     StrCpy $R0 ${EXT}\r
109     Call RegisterExtension\r
110     Pop $R0\r
111   SectionEnd\r
112 !macroend\r
113 \r
114 !macro UnRegisterExtensionSection EXT\r
115   Push $R0\r
116   StrCpy $R0 ${EXT}\r
117   Call un.RegisterExtension\r
118   Pop $R0\r
119 !macroend\r
120 \r
121 ;;;;;;;;;;;;;;;;;;;;;;\r
122 ; Installer sections ;\r
123 ;;;;;;;;;;;;;;;;;;;;;;\r
124 \r
125 Section "Media player (required)" SEC01\r
126   SectionIn 1 2 3 RO\r
127   SetShellVarContext all\r
128   SetOutPath "$INSTDIR"\r
129 \r
130   File  vlc.exe\r
131   File  vlc.exe.manifest\r
132   File  *.txt\r
133 \r
134   File  /r plugins\r
135   File  /r locale\r
136   File  /r skins\r
137   File  /r http\r
138 \r
139   WriteRegStr HKCR Applications\vlc.exe "" ""\r
140   WriteRegStr HKCR Applications\vlc.exe\shell "" "Play"\r
141   WriteRegStr HKCR Applications\vlc.exe\shell\Play\command "" \\r
142     '$INSTDIR\vlc.exe "%1"'\r
143 \r
144   WriteRegStr HKCR "AudioCD\shell\PlayWithVLC" "" "Play with VLC media player"\r
145   WriteRegStr HKCR "AudioCD\shell\PlayWithVLC\command" "" \\r
146     "$INSTDIR\vlc.exe cdda:%1"\r
147   WriteRegStr HKCR "DVD\shell\PlayWithVLC" "" "Play with VLC media player"\r
148   WriteRegStr HKCR "DVD\shell\PlayWithVLC\command" "" \\r
149     "$INSTDIR\vlc.exe dvd:%1"\r
150 \r
151   WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\PlayDVDMovieOnArrival" "VLCPlayDVDMovieOnArrival" ""\r
152   WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayDVDMovieOnArrival" "Action" "Play DVD movie"\r
153   WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayDVDMovieOnArrival" "DefaultIcon" '"$INSTDIR\vlc.exe",0'\r
154   WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayDVDMovieOnArrival" "InvokeProgID" "VLC.DVDMovie"\r
155   WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayDVDMovieOnArrival" "InvokeVerb" "play"\r
156   WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayDVDMovieOnArrival" "Provider" "VideoLAN VLC media player"\r
157 \r
158   WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\PlayCDAudioOnArrival" "VLCPlayCDAudioOnArrival" ""\r
159   WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayCDAudioOnArrival" "Action" "Play CD audio"\r
160   WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayCDAudioOnArrival" "DefaultIcon" '"$INSTDIR\vlc.exe",0'\r
161   WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayCDAudioOnArrival" "InvokeProgID" "VLC.CDAudio"\r
162   WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayCDAudioOnArrival" "InvokeVerb" "play"\r
163   WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayCDAudioOnArrival" "Provider" "VideoLAN VLC media player"\r
164   WriteRegStr HKCR "VLC.DVDMovie" "" "VLC DVD Movie"\r
165   WriteRegStr HKCR "VLC.DVDMovie\shell" "" "Play"\r
166   WriteRegStr HKCR "VLC.DVDMovie\shell\Play\command" "" \\r
167     '$INSTDIR\vlc.exe dvd:%1@1:0'\r
168   WriteRegStr HKCR "VLC.DVDMovie\DefaultIcon" "" '"$INSTDIR\vlc.exe",0'\r
169   WriteRegStr HKCR "VLC.CDAudio" "" "VLC CD Audio"\r
170   WriteRegStr HKCR "VLC.CDAudio\shell" "" "Play"\r
171   WriteRegStr HKCR "VLC.CDAudio\shell\Play\command" "" \\r
172     '$INSTDIR\vlc.exe cdda:%1'\r
173   WriteRegStr HKCR "VLC.CDAudio\DefaultIcon" "" '"$INSTDIR\vlc.exe",0'\r
174 \r
175 SectionEnd\r
176 \r
177 Section "Start Menu + Desktop Shortcut" SEC02\r
178   SectionIn 1 2 3\r
179   CreateDirectory "$SMPROGRAMS\VideoLAN"\r
180   CreateShortCut "$SMPROGRAMS\VideoLAN\VLC media player.lnk" \\r
181     "$INSTDIR\vlc.exe" "--intf wxwin --wxwin-embed"\r
182   CreateShortCut "$SMPROGRAMS\VideoLAN\VLC media player (alt).lnk" \\r
183     "$INSTDIR\vlc.exe" "--intf wxwin --no-wxwin-embed"\r
184   CreateShortCut "$SMPROGRAMS\VideoLAN\VLC media player (skins).lnk" \\r
185     "$INSTDIR\vlc.exe" "--intf skins"\r
186   CreateShortCut "$SMPROGRAMS\VideoLAN\Reset VLC defaults and quit.lnk" \\r
187     "$INSTDIR\vlc.exe" "--reset-config --reset-plugins-cache --save-config vlc:quit "\r
188   CreateShortCut "$DESKTOP\VLC media player.lnk" \\r
189     "$INSTDIR\vlc.exe" "--intf wxwin"\r
190   WriteIniStr "$INSTDIR\${PRODUCT_NAME}.url" "InternetShortcut" "URL" \\r
191     "${PRODUCT_WEB_SITE}"\r
192   CreateShortCut "$SMPROGRAMS\VideoLAN\Website.lnk" \\r
193     "$INSTDIR\${PRODUCT_NAME}.url"\r
194 SectionEnd\r
195 \r
196 Section /o "Mozilla plugin" SEC03\r
197   SectionIn 2 3\r
198   File /r mozilla\r
199 \r
200   ; doesn't work. bug in mozilla/mozilla firefox or moz documentation (xpt file isn't loaded)\r
201   ; see mozilla bugs 184506 and 159445\r
202   ;!define Moz "SOFTWARE\MozillaPlugins\@videolan.org/vlc,version=${VERSION}"\r
203   ;WriteRegStr HKLM ${Moz} "Description" "VideoLAN VLC plugin for Mozilla"\r
204   ;WriteRegStr HKLM ${Moz} "Path" "$INSTDIR\mozilla\npvlc.dll"\r
205   ;WriteRegStr HKLM ${Moz} "Product" "VLC media player"\r
206   ;WriteRegStr HKLM ${Moz} "Vendor" "VideoLAN"\r
207   ;WriteRegStr HKLM ${Moz} "Version" "${VERSION}"\r
208   ;WriteRegStr HKLM ${Moz} "XPTPath" "$INSTDIR\mozilla\vlcintf.xpt"\r
209 \r
210   Push $R0\r
211   Push $R1\r
212   Push $R2\r
213 \r
214   !define Index 'Line${__LINE__}'\r
215   StrCpy $R1 "0"\r
216 \r
217   "${Index}-Loop:"\r
218 \r
219     ; Check for Key\r
220     EnumRegKey $R0 HKLM "SOFTWARE\Mozilla" "$R1"\r
221     StrCmp $R0 "" "${Index}-End"\r
222     IntOp $R1 $R1 + 1\r
223     ReadRegStr $R2 HKLM "SOFTWARE\Mozilla\$R0\Extensions" "Plugins"\r
224     StrCmp $R2 "" "${Index}-Loop" ""\r
225 \r
226     CopyFiles "$INSTDIR\mozilla\*" "$R2"\r
227     Goto "${Index}-Loop"\r
228 \r
229   "${Index}-End:"\r
230   !undef Index\r
231 \r
232 SectionEnd\r
233 \r
234 Section /o "ActiveX plugin" SEC04\r
235   SectionIn 2 3\r
236   SetOutPath "$INSTDIR"\r
237   File activex\axvlc.dll\r
238   RegDLL "$INSTDIR\axvlc.dll"\r
239 SectionEnd\r
240 \r
241 SubSection "File type associations" SEC05\r
242   SubSection "Audio Files"\r
243     ; Make sure we have the same list in uninstall\r
244     !insertmacro RegisterExtensionSection ".a52"\r
245     !insertmacro RegisterExtensionSection ".aac"\r
246     !insertmacro RegisterExtensionSection ".ac3"\r
247     !insertmacro RegisterExtensionSection ".dts"\r
248     !insertmacro RegisterExtensionSection ".flac"\r
249     !insertmacro RegisterExtensionSection ".mka"\r
250     !insertmacro RegisterExtensionSection ".mp1"\r
251     !insertmacro RegisterExtensionSection ".mp2"\r
252     !insertmacro RegisterExtensionSection ".mp3"\r
253     !insertmacro RegisterExtensionSection ".ogg"\r
254     !insertmacro RegisterExtensionSection ".spx"\r
255     !insertmacro RegisterExtensionSection ".wav"\r
256     !insertmacro RegisterExtensionSection ".wma"\r
257   SubSectionEnd\r
258   SubSection "Video Files"\r
259     ; Make sure we have the same list in uninstall\r
260     !insertmacro RegisterExtensionSection ".asf"\r
261     !insertmacro RegisterExtensionSection ".avi"\r
262     !insertmacro RegisterExtensionSection ".divx"\r
263     !insertmacro RegisterExtensionSection ".dv"\r
264     !insertmacro RegisterExtensionSection ".m1v"\r
265     !insertmacro RegisterExtensionSection ".m2v"\r
266     !insertmacro RegisterExtensionSection ".mkv"\r
267     !insertmacro RegisterExtensionSection ".mov"\r
268     !insertmacro RegisterExtensionSection ".mp4"\r
269     !insertmacro RegisterExtensionSection ".mpeg"\r
270     !insertmacro RegisterExtensionSection ".mpeg1"\r
271     !insertmacro RegisterExtensionSection ".mpeg2"\r
272     !insertmacro RegisterExtensionSection ".mpeg4"\r
273     !insertmacro RegisterExtensionSection ".mpg"\r
274     !insertmacro RegisterExtensionSection ".ogm"\r
275     !insertmacro RegisterExtensionSection ".vob"\r
276     !insertmacro RegisterExtensionSection ".wmv"\r
277   SubSectionEnd\r
278   SubSection "Other"\r
279     ; Make sure we have the same list in uninstall\r
280     !insertmacro RegisterExtensionSection ".asx"\r
281     !insertmacro RegisterExtensionSection ".bin"\r
282     !insertmacro RegisterExtensionSection ".cue"\r
283     !insertmacro RegisterExtensionSection ".m3u"\r
284     !insertmacro RegisterExtensionSection ".pls"\r
285     !insertmacro RegisterExtensionSection ".vlc"\r
286   SubSectionEnd\r
287 SubSectionEnd\r
288 \r
289 Section -Post\r
290   WriteUninstaller "$INSTDIR\uninstall.exe"\r
291   WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "InstallDir" $INSTDIR\r
292   WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "Version" "${VERSION}"\r
293   WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "" "$INSTDIR\vlc.exe"\r
294 \r
295   WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" \\r
296     "DisplayName" "$(^Name)"\r
297   WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" \\r
298     "UninstallString" "$INSTDIR\uninstall.exe"\r
299   WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" \\r
300     "DisplayIcon" "$INSTDIR\vlc.exe"\r
301   WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" \\r
302     "DisplayVersion" "${PRODUCT_VERSION}"\r
303   WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" \\r
304     "URLInfoAbout" "${PRODUCT_WEB_SITE}"\r
305   WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" \\r
306     "Publisher" "${PRODUCT_PUBLISHER}"\r
307 SectionEnd\r
308 \r
309 ; Section descriptions\r
310 !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN\r
311   !insertmacro MUI_DESCRIPTION_TEXT ${SEC01} \\r
312     "The media player itself"\r
313   !insertmacro MUI_DESCRIPTION_TEXT ${SEC02} \\r
314     "Adds icons to your start menu and your desktop for easy access"\r
315   !insertmacro MUI_DESCRIPTION_TEXT ${SEC03} \\r
316     "The VLC Mozilla and Mozilla Firefox plugin"\r
317   !insertmacro MUI_DESCRIPTION_TEXT ${SEC04} \\r
318     "The VLC ActiveX plugin"\r
319   !insertmacro MUI_DESCRIPTION_TEXT ${SEC05} \\r
320     "Sets VLC media player as the default application for the specified file type"\r
321 !insertmacro MUI_FUNCTION_DESCRIPTION_END\r
322 \r
323 \r
324 Function un.onUninstSuccess\r
325   HideWindow\r
326   MessageBox MB_ICONINFORMATION|MB_OK \\r
327     "$(^Name) was successfully removed from your computer."\r
328 FunctionEnd\r
329 \r
330 Function un.onInit\r
331   MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 \\r
332     "Are you sure you want to completely remove $(^Name) and all of its components?" IDYES +2\r
333   Abort\r
334 FunctionEnd\r
335 \r
336 Section Uninstall\r
337   SetShellVarContext all\r
338 \r
339   ; Make sure we have the same list in install\r
340   !insertmacro UnRegisterExtensionSection ".a52"\r
341   !insertmacro UnRegisterExtensionSection ".aac"\r
342   !insertmacro UnRegisterExtensionSection ".ac3"\r
343   !insertmacro UnRegisterExtensionSection ".asf"\r
344   !insertmacro UnRegisterExtensionSection ".asx"\r
345   !insertmacro UnRegisterExtensionSection ".avi"\r
346   !insertmacro UnRegisterExtensionSection ".bin"\r
347   !insertmacro UnRegisterExtensionSection ".cue"\r
348   !insertmacro UnRegisterExtensionSection ".divx"\r
349   !insertmacro UnRegisterExtensionSection ".dts"\r
350   !insertmacro UnRegisterExtensionSection ".dv"\r
351   !insertmacro UnRegisterExtensionSection ".flac"\r
352   !insertmacro UnRegisterExtensionSection ".m1v"\r
353   !insertmacro UnRegisterExtensionSection ".m2v"\r
354   !insertmacro UnRegisterExtensionSection ".m3u"\r
355   !insertmacro UnRegisterExtensionSection ".mka"\r
356   !insertmacro UnRegisterExtensionSection ".mkv"\r
357   !insertmacro UnRegisterExtensionSection ".mov"\r
358   !insertmacro UnRegisterExtensionSection ".mp1"\r
359   !insertmacro UnRegisterExtensionSection ".mp2"\r
360   !insertmacro UnRegisterExtensionSection ".mp3"\r
361   !insertmacro UnRegisterExtensionSection ".mp4"\r
362   !insertmacro UnRegisterExtensionSection ".mpeg"\r
363   !insertmacro UnRegisterExtensionSection ".mpeg1"\r
364   !insertmacro UnRegisterExtensionSection ".mpeg2"\r
365   !insertmacro UnRegisterExtensionSection ".mpeg4"\r
366   !insertmacro UnRegisterExtensionSection ".mpg"\r
367   !insertmacro UnRegisterExtensionSection ".ogg"\r
368   !insertmacro UnRegisterExtensionSection ".ogm"\r
369   !insertmacro UnRegisterExtensionSection ".pls"\r
370   !insertmacro UnRegisterExtensionSection ".spx"\r
371   !insertmacro UnRegisterExtensionSection ".vob"\r
372   !insertmacro UnRegisterExtensionSection ".vlc"\r
373   !insertmacro UnRegisterExtensionSection ".wav"\r
374   !insertmacro UnRegisterExtensionSection ".wma"\r
375   !insertmacro UnRegisterExtensionSection ".wmv"\r
376 \r
377   UnRegDLL "$INSTDIR\axvlc.dll"\r
378   Delete /REBOOTOK "$INSTDIR\axvlc.dll"\r
379 \r
380   ;remove mozilla plugin\r
381   Push $R0\r
382   Push $R1\r
383   Push $R2\r
384 \r
385   !define Index 'Line${__LINE__}'\r
386   StrCpy $R1 "0"\r
387 \r
388   "${Index}-Loop:"\r
389 \r
390     ; Check for Key\r
391     EnumRegKey $R0 HKLM "SOFTWARE\Mozilla" "$R1"\r
392     StrCmp $R0 "" "${Index}-End"\r
393     IntOp $R1 $R1 + 1\r
394     ReadRegStr $R2 HKLM "SOFTWARE\Mozilla\$R0\Extensions" "Plugins"\r
395     StrCmp $R2 "" "${Index}-Loop" ""\r
396 \r
397     Delete "$R2\vlcintf.xpt"\r
398     Delete "$R2\npvlc.dll"\r
399     Goto "${Index}-Loop"\r
400 \r
401   "${Index}-End:"\r
402   !undef Index\r
403 \r
404   RMDir "$SMPROGRAMS\VideoLAN"\r
405   RMDir /r $SMPROGRAMS\VideoLAN\r
406   RMDir /r $INSTDIR\r
407   DeleteRegKey HKLM Software\VideoLAN\r
408 \r
409   DeleteRegKey HKCR Applications\vlc.exe\r
410   DeleteRegKey HKCR AudioCD\shell\PlayWithVLC\r
411   DeleteRegKey HKCR DVD\shell\PlayWithVLC\r
412   DeleteRegValue HKLM "Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\PlayDVDMovieOnArrival" "VLCPlayDVDMovieOnArrival"\r
413   DeleteRegKey HKLM Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayDVDMovieOnArrival\r
414   DeleteRegValue HKLM "Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\PlayCDAudioOnArrival" "VLCPlayCDAudioOnArrival"\r
415   DeleteRegKey HKLM Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayCDAudioOnArrival\r
416   DeleteRegKey HKCR "VLC.MediaFile"\r
417 \r
418   DeleteRegKey HKLM \\r
419     SOFTWARE\MozillaPlugins\@videolan.org/vlc,version=${VERSION}\r
420 \r
421   DeleteRegKey HKLM \\r
422     Software\Microsoft\Windows\CurrentVersion\Uninstall\VideoLAN\r
423 \r
424   Delete "$DESKTOP\VLC media player.lnk"\r
425 \r
426   DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"\r
427   DeleteRegKey HKLM "${PRODUCT_DIR_REGKEY}"\r
428   SetAutoClose true\r
429 SectionEnd\r