This commit is contained in:
Michael H.G. Schmidt 2024-01-03 19:58:03 +01:00
parent 8e8b8d04d0
commit 828f6acd51
5 changed files with 18 additions and 195 deletions

View File

@ -1,163 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
<servicing></servicing>
<settings pass="windowsPE">
<component name="Microsoft-Windows-International-Core-WinPE" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SetupUILanguage>
<UILanguage>en-US</UILanguage>
</SetupUILanguage>
<InputLocale>___MYLANG___</InputLocale>
<SystemLocale>___MYLANG___</SystemLocale>
<UILanguage>en-US</UILanguage>
<UserLocale>___MYLANG___</UserLocale>
</component>
<component name="Microsoft-Windows-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<DiskConfiguration>
<WillShowUI>OnError</WillShowUI>
<Disk wcm:action="add">
<CreatePartitions>
<!-- Recovery partition -->
<CreatePartition wcm:action="add">
<Order>1</Order>
<Type>Primary</Type>
<Size>512</Size>
</CreatePartition>
<!-- EFI system partition (ESP) -->
<CreatePartition wcm:action="add">
<Order>2</Order>
<Type>EFI</Type>
<Size>128</Size>
</CreatePartition>
<!-- Microsoft reserved partition (MSR) -->
<CreatePartition wcm:action="add">
<Order>3</Order>
<Type>MSR</Type>
<Size>128</Size>
</CreatePartition>
<!-- Windows partition -->
<CreatePartition wcm:action="add">
<Extend>true</Extend>
<Type>Primary</Type>
<Order>4</Order>
</CreatePartition>
</CreatePartitions>
<ModifyPartitions>
<!-- Recovery partition -->
<ModifyPartition wcm:action="add">
<Order>1</Order>
<PartitionID>1</PartitionID>
<Label>Recovery</Label>
<Format>NTFS</Format>
<TypeID>DE94BBA4-06D1-4D40-A16A-BFD50179D6AC</TypeID>
</ModifyPartition>
<!-- EFI system partition (ESP) -->
<ModifyPartition wcm:action="add">
<Order>2</Order>
<PartitionID>2</PartitionID>
<Label>System</Label>
<Format>FAT32</Format>
</ModifyPartition>
<!-- MSR partition does not need to be modified -->
<!-- Windows partition -->
<ModifyPartition wcm:action="add">
<Order>3</Order>
<PartitionID>4</PartitionID>
<Label>Windows</Label>
<Letter>C</Letter>
<Format>NTFS</Format>
</ModifyPartition>
</ModifyPartitions>
<DiskID>0</DiskID>
<WillWipeDisk>true</WillWipeDisk>
</Disk>
</DiskConfiguration>
<ImageInstall>
<OSImage>
<InstallTo>
<DiskID>0</DiskID>
<PartitionID>4</PartitionID>
</InstallTo>
<WillShowUI>OnError</WillShowUI>
</OSImage>
</ImageInstall>
<UserData>
<AcceptEula>true</AcceptEula>
<Organization>none</Organization>
</UserData>
</component>
</settings>
<settings pass="specialize">
<component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<OEMInformation>
<Manufacturer>IBM PC</Manufacturer>
<Model>Windows</Model>
</OEMInformation>
<CopyProfile>true</CopyProfile>
<RegisteredOrganization>none</RegisteredOrganization>
<RegisteredOwner>none</RegisteredOwner>
<TimeZone>Central Europe Standard Time</TimeZone>
<ShowPowerButtonOnStartScreen>true</ShowPowerButtonOnStartScreen>
</component>
<component name="Microsoft-Windows-SQMApi" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<CEIPEnabled>0</CEIPEnabled>
</component>
</settings>
<settings pass="oobeSystem">
<component name="Microsoft-Windows-International-Core" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<InputLocale>___MYLANG___</InputLocale>
<SystemLocale>___MYLANG___</SystemLocale>
<UILanguage>en-US</UILanguage>
<UserLocale>___MYLANG___</UserLocale>
</component>
<component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<OOBE>
<HideEULAPage>true</HideEULAPage>
<HideLocalAccountScreen>true</HideLocalAccountScreen>
<HideOEMRegistrationScreen>true</HideOEMRegistrationScreen>
<HideOnlineAccountScreens>true</HideOnlineAccountScreens>
<HideWirelessSetupInOOBE>true</HideWirelessSetupInOOBE>
<ProtectYourPC>1</ProtectYourPC>
</OOBE>
<UserAccounts>
<LocalAccounts>
<LocalAccount wcm:action="add">
<Password>
<Value>___MYPASS___</Value>
<PlainText>true</PlainText>
</Password>
<DisplayName>___MYNAME___</DisplayName>
<Name>___MYUSER___</Name>
<Group>Administrators</Group>
</LocalAccount>
</LocalAccounts>
</UserAccounts>
<AutoLogon>
<Password>
<Value>___MYPASS___</Value>
<PlainText>true</PlainText>
</Password>
<Enabled>true</Enabled>
<LogonCount>1</LogonCount>
<Username>___MYUSER___</Username>
</AutoLogon>
<FirstLogonCommands>
<SynchronousCommand wcm:action="add">
<Order>1</Order>
<Description>Password Never Expires</Description>
<CommandLine>cmd /C wmic useraccount where name=&quot;___MYUSER___&quot; set PasswordExpires=false</CommandLine>
</SynchronousCommand>
<SynchronousCommand wcm:action="add">
<Order>2</Order>
<Description>Initial Setup</Description>
<CommandLine>cmd /C c:\windows\setup\scripts\SearchAutoconfig.cmd</CommandLine>
</SynchronousCommand>
</FirstLogonCommands>
</component>
</settings>
<settings pass="offlineServicing">
<component name="Microsoft-Windows-LUA-Settings" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<EnableLUA>false</EnableLUA>
</component>
</settings>
<cpi:offlineImage cpi:source="wim:c:/temp/install.wim#Windows 10 Enterprise LTSC 2021 Evaluation" xmlns:cpi="urn:schemas-microsoft-com:cpi" />
</unattend>

View File

@ -50,24 +50,15 @@ copy /Y installer.exe %BOOT%\setup.exe
echo.
rem prepare unattended xml files ...
for %%A in (
echo copying config file for unattended install [ BIOS ]...
copy /Y autounattend_template.xml %BOOT%\autounattend.xml
BIOS
UEFI
) do (
echo copying config file for unattended install [ %%A ]...
copy /Y autounattend_%%A_template.xml %BOOT%\autounattend_%%A.xml
rem prepare BIOS version ...
..\tools\searchreplace %BOOT%\autounattend_%%A.xml ___MYUSER___ "%localadmin%"
..\tools\searchreplace %BOOT%\autounattend_%%A.xml ___MYNAME___ "%localadmin_name%"
..\tools\searchreplace %BOOT%\autounattend_%%A.xml ___MYPASS___ "%localadmin_password%" /S
..\tools\searchreplace %BOOT%\autounattend_%%A.xml ___MYLANG___ "%LANG%"
echo.
)
rem prepare BIOS version ...
..\tools\searchreplace %BOOT%\autounattend.xml ___MYUSER___ "%localadmin%"
..\tools\searchreplace %BOOT%\autounattend.xml ___MYNAME___ "%localadmin_name%"
..\tools\searchreplace %BOOT%\autounattend.xml ___MYPASS___ "%localadmin_password%" /S
..\tools\searchreplace %BOOT%\autounattend.xml ___MYLANG___ "%LANG%"
echo.
if EXIST ..\company\snapshot64.exe (
echo copying LICENSED snapshot64.exe to boot image ...

Binary file not shown.

View File

@ -4,7 +4,7 @@
; LICENSE : GPL
; AUTHOR : Michael H.G. Schmidt
; EMAIL : michael@schmidt2.de
; DATE : 20230220
; DATE : 20240103
; ------------------------------------------------------------
;
@ -16,7 +16,7 @@ EndImport
; Get system drive
Global SYS$=GetEnvironmentVariable("SystemDrive")
Procedure StartInstallation(mode$)
Procedure StartInstallation()
Result = MessageRequester("+++ Windows 10 unattended Installation +++",
"This will install a new OS (unattended)" + Chr(13) +
@ -32,7 +32,7 @@ Procedure StartInstallation(mode$)
; start installation ...
If Result = #PB_MessageRequester_Yes
dummy=system(SYS$ + "\winsetup.exe /unattend:" + SYS$ + "\autounattend_" + mode$ + ".xml")
dummy=system(SYS$ + "\winsetup.exe /unattend:" + SYS$ + "\autounattend.xml")
End
EndIf
@ -79,12 +79,10 @@ Procedure ButtonHandler()
Select EventGadget()
Case 0
StartInstallation("BIOS")
StartInstallation()
Case 1
StartInstallation("UEFI")
Case 2
StartCMD()
Case 3
Case 2
StartSnapshot64()
EndSelect
@ -120,23 +118,19 @@ ButtonH=H*0.1
BX0=ButtonW*3-GAP*1.5
BX1=BX0 + ButtonW + GAP
BX2=BX1 + ButtonW + GAP
BX3=BX2 + ButtonW + GAP
BY=H/2-ButtonH/2
; Create Buttons
ButtonGadget(0, BX0, BY, ButtonW, ButtonH, "INSTALL (BIOS mode)", #PB_Button_MultiLine)
ButtonGadget(0, BX0, BY, ButtonW, ButtonH, "INSTALL", #PB_Button_MultiLine)
BindGadgetEvent(0, @ButtonHandler())
ButtonGadget(1, BX1, BY, ButtonW, ButtonH, "INSTALL (UEFI mode)", #PB_Button_MultiLine)
ButtonGadget(1, BX1, BY, ButtonW, ButtonH, "Commandshell"+Chr(13)+"(with network)", #PB_Button_MultiLine)
BindGadgetEvent(1, @ButtonHandler())
ButtonGadget(2, BX2, BY, ButtonW, ButtonH, "COMMAND shell"+Chr(13)+"(with network)", #PB_Button_MultiLine)
ButtonGadget(2, BX2, BY, ButtonW, ButtonH, "Snapshot"+Chr(13)+"(Backup/Restore)", #PB_Button_MultiLine)
BindGadgetEvent(2, @ButtonHandler())
ButtonGadget(3, BX3, BY, ButtonW, ButtonH, "Snapshot 64"+Chr(13)+"(Backup/Restore)", #PB_Button_MultiLine)
BindGadgetEvent(3, @ButtonHandler())
; MAIN LOOP
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
@ -144,4 +138,5 @@ Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
; CursorPosition = 125
; FirstLine = 95
; Folding = -
; EnableXP
; EnableXP