[vlc-commits] win64: read/write x64 registry, not the x86 one

Rafaël Carré git at videolan.org
Wed Nov 16 04:58:48 CET 2011


vlc | branch: master | Rafaël Carré <funman at videolan.org> | Tue Nov 15 20:32:21 2011 -0500| [ae8706a759c622f254b80915d67490a5808cbb3b] | committer: Rafaël Carré

win64: read/write x64 registry, not the x86 one

InstallDirRegKey is not affected so we have to emulate it

plugins are now registered correctly, and both 32-bits and 64-bits
versions can be installed side-by-side without the installers screaming
However there is an obvious conflict in the menu, desktop icon, and
file / actions / context menu associations.

In my testing the 32-bits version was selected as default, and it was
also the last one installed.

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ae8706a759c622f254b80915d67490a5808cbb3b
---

 extras/package/win32/vlc.win32.nsi.in |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/extras/package/win32/vlc.win32.nsi.in b/extras/package/win32/vlc.win32.nsi.in
index 5c549a6..7537a3f 100644
--- a/extras/package/win32/vlc.win32.nsi.in
+++ b/extras/package/win32/vlc.win32.nsi.in
@@ -30,7 +30,6 @@
 Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"
 OutFile ..\vlc-${VERSION}-win32.exe
 InstallDir "$@PROGRAMFILES@\VideoLAN\VLC"
-InstallDirRegKey HKLM "${PRODUCT_DIR_REGKEY}" ""
 !ifdef NSIS_LZMA_COMPRESS_WHOLE
 SetCompressor lzma
 !else
@@ -771,6 +770,11 @@ SectionEnd
 ;;; Start function
 Function .onInit
 
+ at HAVE_WIN64_TRUE@ SetRegView 64
+ReadRegStr $INSTDIR HKLM "${PRODUCT_DIR_REGKEY}" ""
+StrCmp $INSTDIR "" 0 +1
+StrCpy $INSTDIR "$@PROGRAMFILES@\VideoLAN\VLC"
+
 UAC_Elevate:
     UAC::RunElevated
     StrCmp 1223 $0 UAC_ElevationAborted



More information about the vlc-commits mailing list