Changeset 36311 in vbox
- Timestamp:
- Mar 18, 2011 11:02:24 AM (14 years ago)
- Location:
- trunk/src/VBox/Additions/WINNT/Installer
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Additions/WINNT/Installer/VBoxGuestAdditions.nsi
r35833 r36311 535 535 FunctionEnd 536 536 537 Function PrepareForUpdate 538 539 StrCmp $g_strAddVerMaj "1" v1 ; Handle major version "v1.x" 540 StrCmp $g_strAddVerMaj "2" v2 ; Handle major version "v2.x" 541 StrCmp $g_strAddVerMaj "3" v3 ; Handle major version "v3.x" 542 Goto exit 543 544 v3: 545 546 Goto exit 547 548 v2: 549 550 Goto exit 551 552 v1: 553 554 StrCmp $g_strAddVerMin "5" v1_5 ; Handle minor version "v1.5.x" 555 StrCmp $g_strAddVerMin "6" v1_6 ; Handle minor version "v1.6.x" 556 557 v1_5: 558 559 Goto exit 560 561 v1_6: 562 563 Goto exit 564 565 exit: 537 Function CheckForInstalledComponents 538 539 Push $0 540 541 DetailPrint "Checking for installed components ..." 542 543 Call SetAppMode64 544 545 ; VBoxGINA already installed? So we need to update the installed version as well, 546 ; regardless whether the user used "/with_autologon" or not 547 ReadRegStr $0 HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon" "GinaDLL" 548 ${If} $0 == "VBoxGINA.dll" 549 DetailPrint "Found installed VBoxGINA" 550 StrCpy $g_bWithAutoLogon "true" 551 ${EndIf} 552 553 Pop $0 566 554 567 555 FunctionEnd … … 601 589 SetOverwrite on 602 590 603 ; Because this NSIS installer is always built in 32-bit mode, we have to 604 ; do some tricks for the Windows paths 605 !if $%BUILD_TARGET_ARCH% == "amd64" 606 ; Because the next two lines will crash at the license page (??) we have to re-enable that here again 607 ${DisableX64FSRedirection} 608 SetRegView 64 609 !endif 591 Call SetAppMode64 610 592 611 593 StrCpy $g_strSystemDir "$SYSDIR" 612 594 613 595 Call EnableLog 614 Call PrepareForUpdate615 596 616 597 DetailPrint "Version: $%VBOX_VERSION_STRING% (Rev $%VBOX_SVN_REV%)" … … 709 690 Section /o -$(VBOX_COMPONENT_AUTOLOGON) SEC02 710 691 711 ; Because this NSIS installer is always built in 32-bit mode, we have to 712 ; do some tricks for the Windows paths 713 !if $%BUILD_TARGET_ARCH% == "amd64" 714 ; Because the next two lines will crash at the license page (??) we have to re-enable that here again 715 ${DisableX64FSRedirection} 716 SetRegView 64 717 !endif 692 Call SetAppMode64 718 693 719 694 Call GetWindowsVersion … … 1139 1114 ${EndIf} 1140 1115 1116 Call CheckForInstalledComponents 1117 1141 1118 ; Set section bits 1142 1119 ${If} $g_bWithAutoLogon == "true" ; Auto-logon support … … 1156 1133 !endif 1157 1134 1158 ; Because this NSIS installer is always built in 32-bit mode, we have to 1159 ; do some tricks for the Windows paths for checking for old additions 1160 ; in block below 1161 !if $%BUILD_TARGET_ARCH% == "amd64" 1162 ${DisableX64FSRedirection} 1163 SetRegView 64 1164 !endif 1135 Call SetAppMode64 1165 1136 1166 1137 ; Check for old additions … … 1171 1142 ; 64-bit registry view, so as a workaround switch back to 32-bit (Wow6432Node) 1172 1143 ; mode for now 1173 !if $%BUILD_TARGET_ARCH% == "amd64" 1174 ${EnableX64FSRedirection} 1175 SetRegView 32 1176 !endif 1144 Call SetAppMode32 1177 1145 1178 1146 !endif ; UNINSTALLER_ONLY … … 1209 1177 proceed: 1210 1178 1211 ; Because this NSIS installer is always built in 32-bit mode, we have to 1212 ; do some tricks for the Windows paths 1213 !if $%BUILD_TARGET_ARCH% == "amd64" 1214 ${DisableX64FSRedirection} 1215 SetRegView 64 1216 !endif 1179 Call un.SetAppMode64 1217 1180 1218 1181 ; Set system directory … … 1234 1197 !endif 1235 1198 1236 ; Because this NSIS installer is always built in 32-bit mode, we have to 1237 ; do some tricks for the Windows paths 1238 !if $%BUILD_TARGET_ARCH% == "amd64" 1239 ; Do *not* add this line in .onInit - it will crash at the license page (??) because of a weird NSIS bug 1240 ${DisableX64FSRedirection} 1241 SetRegView 64 1242 !endif 1199 Call un.SetAppMode64 1243 1200 1244 1201 ; Call the uninstall main function -
trunk/src/VBox/Additions/WINNT/Installer/VBoxGuestAdditionsCommon.nsh
r35753 r36311 543 543 !insertmacro CheckForCapabilities "un." 544 544 545 ; Switches (back) the path + registry view to 546 ; 32-bit mode (SysWOW64) on 64-bit guests 547 !macro SetAppMode32 un 548 Function ${un}SetAppMode32 549 !if $%BUILD_TARGET_ARCH% == "amd64" 550 ${EnableX64FSRedirection} 551 SetRegView 32 552 !endif 553 FunctionEnd 554 !macroend 555 !insertmacro SetAppMode32 "" 556 !insertmacro SetAppMode32 "un." 557 558 ; Because this NSIS installer is always built in 32-bit mode, we have to 559 ; do some tricks for the Windows paths + registry on 64-bit guests 560 !macro SetAppMode64 un 561 Function ${un}SetAppMode64 562 !if $%BUILD_TARGET_ARCH% == "amd64" 563 ${DisableX64FSRedirection} 564 SetRegView 64 565 !endif 566 FunctionEnd 567 !macroend 568 !insertmacro SetAppMode64 "" 569 !insertmacro SetAppMode64 "un." 570
Note:
See TracChangeset
for help on using the changeset viewer.