- Timestamp:
- Aug 1, 2017 7:05:50 PM (7 years ago)
- Location:
- trunk/src/VBox/Main
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Main/UnattendedTemplates/win_nt6_unattended.xml
r68149 r68222 8 8 publicKeyToken="31bf3856ad364e35" language="neutral" 9 9 versionScope="nonSxS"> 10 <InputLocale> en-US</InputLocale>11 <SystemLocale> en-US</SystemLocale>12 <UILanguage> en-US</UILanguage>13 <UserLocale> en-US</UserLocale>10 <InputLocale>@@VBOX_INSERT_DASH_LOCALE@@</InputLocale> 11 <SystemLocale>@@VBOX_INSERT_DASH_LOCALE@@</SystemLocale> 12 <UILanguage>@@VBOX_INSERT_DASH_LOCALE@@</UILanguage> 13 <UserLocale>@@VBOX_INSERT_DASH_LOCALE@@</UserLocale> 14 14 </component> 15 15 … … 117 117 <SkipUserOOBE>true</SkipUserOOBE> 118 118 <SkipMachineOOBE>true</SkipMachineOOBE> 119 <!-- Make this (NetworkLocation) default to public and make it configurable --> 119 120 <NetworkLocation>Home</NetworkLocation> 120 121 </OOBE> … … 129 130 <Order>2</Order> 130 131 <Description>VirtualBox post guest install steps </Description> 131 <CommandLine>cmd.exe /c A:\ vboxpostinstall.cmd</CommandLine>132 <CommandLine>cmd.exe /c A:\VBOXPOST.CMD</CommandLine> 132 133 </SynchronousCommand> 133 134 </FirstLogonCommands> 134 135 135 <TimeZone> GMT Standard Time</TimeZone>136 <TimeZone>@@VBOX_INSERT_TIME_ZONE_WIN_NAME@@</TimeZone> 136 137 </component> 137 138 138 139 </settings> 139 140 </unattend> 141 -
trunk/src/VBox/Main/UnattendedTemplates/win_postinstall.cmd
-
Property svn:eol-style
changed from
LF
toCRLF
r68071 r68222 20 20 rem 21 21 22 rem Globals. 23 set MY_LOG_FILE=C:\vboxpostinstall.log 22 24 23 echo TODO 25 rem Log header. 26 echo *** started >> %MY_LOG_FILE% 27 echo *** CD=%CD% >> %MY_LOG_FILE% 28 echo *** Environment BEGIN >> %MY_LOG_FILE% 29 set >> %MY_LOG_FILE% 30 echo *** Environment END >> %MY_LOG_FILE% 31 24 32 25 33 @@VBOX_COND_IS_INSTALLING_ADDITIONS@@ 26 e:\cert\VBoxCertUtil.exe add-trusted-publisher e:\cert\vbox*.cer --root e:\cert\vbox*.cer 27 e:\VBoxWindowsAdditions.exe /S 34 rem 35 rem Install the guest additions. 36 rem 37 38 rem First find the CDROM with the GAs on them. 39 set MY_VBOX_ADDITIONS=E:\vboxadditions 40 if exist %MY_VBOX_ADDITIONS%\VBoxWindowsAdditions.exe goto found_vbox_additions 41 set MY_VBOX_ADDITIONS=D:\vboxadditions 42 if exist %MY_VBOX_ADDITIONS%\VBoxWindowsAdditions.exe goto found_vbox_additions 43 set MY_VBOX_ADDITIONS=F:\vboxadditions 44 if exist %MY_VBOX_ADDITIONS%\VBoxWindowsAdditions.exe goto found_vbox_additions 45 set MY_VBOX_ADDITIONS=G:\vboxadditions 46 if exist %MY_VBOX_ADDITIONS%\VBoxWindowsAdditions.exe goto found_vbox_additions 47 set MY_VBOX_ADDITIONS=E: 48 if exist %MY_VBOX_ADDITIONS%\VBoxWindowsAdditions.exe goto found_vbox_additions 49 set MY_VBOX_ADDITIONS=F: 50 if exist %MY_VBOX_ADDITIONS%\VBoxWindowsAdditions.exe goto found_vbox_additions 51 set MY_VBOX_ADDITIONS=G: 52 if exist %MY_VBOX_ADDITIONS%\VBoxWindowsAdditions.exe goto found_vbox_additions 53 set MY_VBOX_ADDITIONS=D: 54 if exist %MY_VBOX_ADDITIONS%\VBoxWindowsAdditions.exe goto found_vbox_additions 55 set MY_VBOX_ADDITIONS=E:\vboxadditions 56 :found_vbox_additions 57 echo *** MY_VBOX_ADDITIONS=%MY_VBOX_ADDITIONS%\ >> %MY_LOG_FILE% 58 59 rem Then add signing certificate to trusted publishers 60 echo *** Running: %MY_VBOX_ADDITIONS%\cert\VBoxCertUtil.exe ... >> %MY_LOG_FILE% 61 %MY_VBOX_ADDITIONS%\cert\VBoxCertUtil.exe add-trusted-publisher %MY_VBOX_ADDITIONS%\cert\vbox*.cer --root %MY_VBOX_ADDITIONS%\cert\vbox*.cer >> %MY_LOG_FILE% 2>&1 62 echo *** ERRORLEVEL: %ERRORLEVEL% >> %MY_LOG_FILE% 63 64 rem Then do the installation. 65 echo *** Running: %MY_VBOX_ADDITIONS%\VBoxWindowsAdditions.exe /S >> %MY_LOG_FILE% 66 %MY_VBOX_ADDITIONS%\VBoxWindowsAdditions.exe /S 67 echo *** ERRORLEVEL: %ERRORLEVEL% >> %MY_LOG_FILE% 68 28 69 @@VBOX_COND_END@@ 29 70 71 72 @@VBOX_COND_IS_INSTALLING_TEST_EXEC_SERVICE@@ 73 rem 74 rem Install the Test Execution service 75 rem 76 77 rem First find the CDROM with the validation kit on it. 78 set MY_VBOX_VALIDATION_KIT=E:\vboxvalidationkit 79 if exist %MY_VBOX_VALIDATION_KIT%\vboxtxs-readme.txt goto found_vbox_validation_kit 80 set MY_VBOX_VALIDATION_KIT=D:\vboxvalidationkit 81 if exist %MY_VBOX_VALIDATION_KIT%\vboxtxs-readme.txt goto found_vbox_validation_kit 82 set MY_VBOX_VALIDATION_KIT=F:\vboxvalidationkit 83 if exist %MY_VBOX_VALIDATION_KIT%\vboxtxs-readme.txt goto found_vbox_validation_kit 84 set MY_VBOX_VALIDATION_KIT=G:\vboxvalidationkit 85 if exist %MY_VBOX_VALIDATION_KIT%\vboxtxs-readme.txt goto found_vbox_validation_kit 86 set MY_VBOX_VALIDATION_KIT=E: 87 if exist %MY_VBOX_VALIDATION_KIT%\vboxtxs-readme.txt goto found_vbox_validation_kit 88 set MY_VBOX_VALIDATION_KIT=F: 89 if exist %MY_VBOX_VALIDATION_KIT%\vboxtxs-readme.txt goto found_vbox_validation_kit 90 set MY_VBOX_VALIDATION_KIT=G: 91 if exist %MY_VBOX_VALIDATION_KIT%\vboxtxs-readme.txt goto found_vbox_validation_kit 92 set MY_VBOX_VALIDATION_KIT=D: 93 if exist %MY_VBOX_VALIDATION_KIT%\vboxtxs-readme.txt goto found_vbox_validation_kit 94 set MY_VBOX_VALIDATION_KIT=E:\vboxvalidationkit 95 :found_vbox_validation_kit 96 echo *** MY_VBOX_VALIDATION_KIT=%MY_VBOX_VALIDATION_KIT%\ >> %MY_LOG_FILE% 97 98 rem Copy over the files. 99 echo *** Running: mkdir %SystemDrive%\Apps >> %MY_LOG_FILE% 100 mkdir %SystemDrive%\Apps >> %MY_LOG_FILE% 2>&1 101 echo *** ERRORLEVEL: %ERRORLEVEL% >> %MY_LOG_FILE% 102 103 echo *** Running: copy %MY_VBOX_VALIDATION_KIT%\win\* %SystemDrive%\Apps >> %MY_LOG_FILE% 104 copy %MY_VBOX_VALIDATION_KIT%\win\* %SystemDrive%\Apps >> %MY_LOG_FILE% 2>&1 105 echo *** ERRORLEVEL: %ERRORLEVEL% >> %MY_LOG_FILE% 106 107 echo *** Running: copy %MY_VBOX_VALIDATION_KIT%\win\%PROCESSOR_ARCHITECTURE%\* %SystemDrive%\Apps >> %MY_LOG_FILE% 108 copy %MY_VBOX_VALIDATION_KIT%\win\%PROCESSOR_ARCHITECTURE%\* %SystemDrive%\Apps >> %MY_LOG_FILE% 2>&1 109 echo *** ERRORLEVEL: %ERRORLEVEL% >> %MY_LOG_FILE% 110 111 rem Update the registry to autorun the service and make sure we've got autologon. 112 echo *** Running: reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v NTConfiguration /d %SystemDrive%\Apps\vboxtxs.cmd >> %MY_LOG_FILE% 113 reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v NTConfiguration /d %SystemDrive%\Apps\vboxtxs.cmd >> %MY_LOG_FILE% 2>&1 114 echo *** ERRORLEVEL: %ERRORLEVEL% >> %MY_LOG_FILE% 115 116 echo *** Running: reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon /v PowerdownAfterShutdown /d 1 >> %MY_LOG_FILE% 117 reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon /v PowerdownAfterShutdown /d 1 >> %MY_LOG_FILE% 2>&1 118 echo *** ERRORLEVEL: %ERRORLEVEL% >> %MY_LOG_FILE% 119 120 echo *** Running: reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon /v ForceAutoLogon /d 1 >> %MY_LOG_FILE% 121 reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon /v ForceAutoLogon /d 1 >> %MY_LOG_FILE% 2>&1 122 echo *** ERRORLEVEL: %ERRORLEVEL% >> %MY_LOG_FILE% 123 rem AutoAdminLogon too if administrator? 124 125 rem Configure the firewall to allow TXS to listen. 126 echo *** Running: netsh firewall add portopening TCP 5048 "TestExecService 5048" >> %MY_LOG_FILE% 127 netsh firewall add portopening TCP 5048 "TestExecService 5048" >> %MY_LOG_FILE% 2>&1 128 echo *** ERRORLEVEL: %ERRORLEVEL% >> %MY_LOG_FILE% 129 130 echo *** Running: netsh firewall add portopening TCP 5042 "TestExecService 5042" >> %MY_LOG_FILE% 131 netsh firewall add portopening TCP 5042 "TestExecService 5042" >> %MY_LOG_FILE% 2>&1 132 echo *** ERRORLEVEL: %ERRORLEVEL% >> %MY_LOG_FILE% 133 134 @@VBOX_COND_END@@ 135 136 137 @@VBOX_COND_HAS_POST_INSTALL_COMMAND@@ 138 rem 139 rem Run user command. 140 rem 141 echo *** Running custom user command ... >> %MY_LOG_FILE% 142 echo *** Running: "@@VBOX_INSERT_POST_INSTALL_COMMAND@@" >> %MY_LOG_FILE% 143 @@VBOX_INSERT_POST_INSTALL_COMMAND@@ 144 @@VBOX_COND_END@@ 145 146 echo *** done >> %MY_LOG_FILE% 147 -
Property svn:eol-style
changed from
-
trunk/src/VBox/Main/include/UnattendedInstaller.h
r68162 r68222 110 110 virtual HRESULT initInstaller(); 111 111 112 #if 0 /* These are now in the AUX VISO. */ 112 113 /** 113 114 * Whether the VBox guest additions ISO is needed or not. … … 125 126 */ 126 127 virtual bool isValidationKitIsoNeeded() const; 128 #endif 127 129 128 130 /** … … 139 141 * Indicates whether an additional or replacement ISO image is needed or not. 140 142 */ 141 virtual bool isAuxiliaryIsoNeeded() const { return false; } 143 virtual bool isAuxiliaryIsoNeeded() const; 144 145 /** 146 * Indicates whether we should boot from the auxiliary ISO image. 147 * 148 * Will boot from installation ISO if false. 149 */ 150 virtual bool bootFromAuxiliaryIso() const { return isAuxiliaryIsoNeeded(); } 142 151 143 152 /** … … 149 158 * be remastered with small changes and additions. 150 159 */ 151 virtual bool isAuxiliaryIsoIsVISO() const { return false; }160 virtual bool isAuxiliaryIsoIsVISO() const { return true; } 152 161 153 162 /* … … 355 364 : UnattendedInstaller(pParent, 356 365 "win_nt5_unattended.sif", "win_postinstall.cmd", 357 "WINNT.SIF", " vboxpostinstall.cmd")358 { Assert(isOriginalIsoNeeded()); Assert(isAuxiliaryFloppyNeeded()); Assert(!isAuxiliaryIsoNeeded()); }366 "WINNT.SIF", "VBOXPOST.CMD") 367 { Assert(isOriginalIsoNeeded()); Assert(isAuxiliaryFloppyNeeded()); Assert(isAuxiliaryIsoIsVISO()); Assert(!bootFromAuxiliaryIso()); } 359 368 ~UnattendedWindowsSifInstaller() {} 360 369 361 370 bool isAuxiliaryFloppyNeeded() const { return true; } 371 bool bootFromAuxiliaryIso() const { return false; } 372 362 373 }; 363 374 … … 371 382 : UnattendedInstaller(pParent, 372 383 "win_nt6_unattended.xml", "win_postinstall.cmd", 373 "autounattend.xml", " vboxpostinstall.cmd")374 { Assert(isOriginalIsoNeeded()); Assert(isAuxiliaryFloppyNeeded()); Assert(!isAuxiliaryIsoNeeded()); }384 "autounattend.xml", "VBOXPOST.CMD") 385 { Assert(isOriginalIsoNeeded()); Assert(isAuxiliaryFloppyNeeded()); Assert(isAuxiliaryIsoIsVISO()); Assert(!bootFromAuxiliaryIso()); } 375 386 ~UnattendedWindowsXmlInstaller() {} 376 387 377 388 bool isAuxiliaryFloppyNeeded() const { return true; } 389 bool bootFromAuxiliaryIso() const { return false; } 378 390 }; 379 391 … … 399 411 400 412 bool isAuxiliaryIsoNeeded() const { return true; } 401 bool isAuxiliaryIsoIsVISO() const { return true; }402 413 403 414 protected: -
trunk/src/VBox/Main/src-server/UnattendedImpl.cpp
r68170 r68222 826 826 if (mpInstaller->isOriginalIsoNeeded()) 827 827 cDvdDrivesNeeded++; 828 #if 0 /* These are now in the AUX VISO. */ 828 829 if (mpInstaller->isAdditionsIsoNeeded()) 829 830 cDvdDrivesNeeded++; 830 831 if (mpInstaller->isValidationKitIsoNeeded()) 831 832 cDvdDrivesNeeded++; 833 #endif 832 834 Assert(cDvdDrivesNeeded > 0); 833 835 if (cDvdDrivesNeeded > lstControllerDvdSlots.size()) … … 878 880 * Prepare ISO mounts. 879 881 * 880 * ASSUMES the auxiliary ISO is bootable if present. ASSUMES the original 881 * ISO is bootable if no auxiliary ISO present. These two assumptions is 882 * reflected in the order we grab DVD slots. 882 * Boot order depends on bootFromAuxiliaryIso() and we must grab DVD slots 883 * according to the boot order. 883 884 */ 884 885 std::list<ControllerSlot>::const_iterator itDvdSlot = lstControllerDvdSlots.begin(); 885 if (mpInstaller->isAuxiliaryIsoNeeded() )886 if (mpInstaller->isAuxiliaryIsoNeeded() && mpInstaller->bootFromAuxiliaryIso()) 886 887 { 887 888 rVecInstallatationDisks.push_back(UnattendedInstallationDisk(itDvdSlot, mpInstaller->getAuxiliaryIsoFilePath())); … … 895 896 } 896 897 898 if (mpInstaller->isAuxiliaryIsoNeeded() && !mpInstaller->bootFromAuxiliaryIso()) 899 { 900 rVecInstallatationDisks.push_back(UnattendedInstallationDisk(itDvdSlot, mpInstaller->getAuxiliaryIsoFilePath())); 901 ++itDvdSlot; 902 } 903 904 #if 0 /* These are now in the AUX VISO. */ 897 905 if (mpInstaller->isAdditionsIsoNeeded()) 898 906 { … … 906 914 ++itDvdSlot; 907 915 } 916 #endif 908 917 909 918 return S_OK; -
trunk/src/VBox/Main/src-server/UnattendedInstaller.cpp
r68162 r68222 187 187 } 188 188 189 #if 0 /* Always in AUX ISO */ 189 190 bool UnattendedInstaller::isAdditionsIsoNeeded() const 190 191 { … … 198 199 return !isAuxiliaryIsoIsVISO() && mpParent->i_getInstallTestExecService(); 199 200 } 201 #endif 202 203 bool UnattendedInstaller::isAuxiliaryIsoNeeded() const 204 { 205 /* In the VISO case we use the AUX ISO for GAs and TXS. */ 206 return isAuxiliaryIsoIsVISO() 207 && ( mpParent->i_getInstallGuestAdditions() 208 || mpParent->i_getInstallTestExecService()); 209 } 210 200 211 201 212 HRESULT UnattendedInstaller::prepareUnattendedScripts() -
trunk/src/VBox/Main/src-server/UnattendedScript.cpp
r68164 r68222 559 559 else if (IS_PLACEHOLDER_MATCH("LOCALE")) 560 560 rValue = mpUnattended->i_getLocale(); 561 else if (IS_PLACEHOLDER_MATCH("DASH_LOCALE")) 562 { 563 rValue = mpUnattended->i_getLocale(); 564 Assert(rValue[2] == '_'); 565 rValue.replace(2, 1, "-"); 566 } 561 567 else if (IS_PLACEHOLDER_MATCH("COUNTRY")) 562 568 rValue = mpUnattended->i_getCountry();
Note:
See TracChangeset
for help on using the changeset viewer.