Programme automatisch installieren nach Installation
- Holgi
- Elite
- Beiträge: 2882
- Registriert: 12.05.2018, 12:33
- Hat sich bedankt: 364 Mal
- Danke erhalten: 463 Mal
- Gender:
Re: Programme automatisch installieren nach Installation
kaum hatte ich geschrieben:
"die Installation erfolgt über Winget mit --configure und einer angepassten Configuration.xml (ProPlus2024Volume.xml). Das funktioniert nur, wenn eine Internetverbindung während der Installation vorhanden ist, da die .xml auf einem eigenen FTP-Server liegt (müßte auch mit einer Fritz.Box gehen)."
dachte ich: warum eigentlich die Configuration.xml von extern beziehen? Zur Not muss die ebenfalls mit Echo Befehlen erstellt werden. > funktioniert!
der Winget Befehl sieht dann etwas anders aus, da die ProPlus2024VL.xml unter C:\Windows\Setup\Scripts erstellt wird:
Die configuration.xml muss schon vorhanden sein, wenn winget das Office mit dieser installieren soll. Also wird sie unter "settings pass="specialize" erstellt:
in Verbindung mit:
der Rest kann so bleiben.
"die Installation erfolgt über Winget mit --configure und einer angepassten Configuration.xml (ProPlus2024Volume.xml). Das funktioniert nur, wenn eine Internetverbindung während der Installation vorhanden ist, da die .xml auf einem eigenen FTP-Server liegt (müßte auch mit einer Fritz.Box gehen)."
dachte ich: warum eigentlich die Configuration.xml von extern beziehen? Zur Not muss die ebenfalls mit Echo Befehlen erstellt werden. > funktioniert!
der Winget Befehl sieht dann etwas anders aus, da die ProPlus2024VL.xml unter C:\Windows\Setup\Scripts erstellt wird:
Code: Alles auswählen
<SynchronousCommand wcm:action="add">
<Order>12</Order>
<Description>Office</Description>
<CommandLine>cmd /c winget install --id "Microsoft.Office" --override "/configure C:\Windows\Setup\Scripts\ProPlus2024VL.xml"</CommandLine>
</SynchronousCommand>
Code: Alles auswählen
<settings pass="specialize">
<component name="Microsoft-Windows-Deployment" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
<RunSynchronous>
<RunSynchronousCommand wcm:action="add">
<Order>91</Order>
<Path>powershell.exe -NoProfile -Command "$xml = [xml]::new(); $xml.Load('C:\Windows\Panther\unattend.xml'); $sb = [scriptblock]::Create( $xml.unattend.Extensions.ExtractScript ); Invoke-Command -ScriptBlock $sb -ArgumentList $xml;"</Path>
</RunSynchronousCommand>
<RunSynchronousCommand wcm:action="add">
<Order>92</Order>
<Path>powershell.exe -NoProfile -Command "Get-Content -LiteralPath 'C:\Windows\Setup\Scripts\Specialize.ps1' -Raw | Invoke-Expression;"</Path>
</RunSynchronousCommand>
</RunSynchronous>
</component>
Code: Alles auswählen
<File path="C:\Windows\Setup\Scripts\unattend-01.cmd" transformation="Text">
@Echo off
(
ECHO ^<Configuration^>
ECHO ^<Add OfficeClientEdition="64" Channel="PerpetualVL2024" AllowCdnFallback="TRUE"^>
ECHO ^<Product ID="ProPlus2024Volume" PIDKEY="XJ2XN-FW8RK-P4HMP-DKDBV-GCVGB"^>
ECHO ^<Language ID="de-de" /^>
ECHO ^<ExcludeApp ID="Access" /^>
ECHO ^<ExcludeApp ID="Lync" /^>
ECHO ^<ExcludeApp ID="OneDrive" /^>
ECHO ^<ExcludeApp ID="OneNote" /^>
ECHO ^<ExcludeApp ID="Outlook" /^>
ECHO ^<ExcludeApp ID="SHARED" /^>
ECHO ^<ExcludeApp ID="Publisher" /^>
ECHO ^</Product^>
ECHO ^</Add^>
ECHO ^<Property Name="SharedComputerLicensing" Value="0" /^>
ECHO ^<Property Name="FORCEAPPSHUTDOWN" Value="FALSE" /^>
ECHO ^<Property Name="DeviceBasedLicensing" Value="0" /^>
ECHO ^<Property Name="SCLCacheOverride" Value="0" /^>
ECHO ^<Property Name="AUTOACTIVATE" Value="1" /^>
ECHO ^<Updates Enabled="TRUE" /^>
ECHO ^<RemoveMSI /^>
ECHO ^<Display Level="None" AcceptEULA="TRUE" /^>
ECHO ^</Configuration^>
) > "C:\Windows\Setup\Scripts\ProPlus2024VL.xml"
</File>
<File path="C:\Windows\Setup\Scripts\Specialize.ps1" transformation="Text">
$scripts = @(
{
net.exe accounts /maxpwage:UNLIMITED;
};
{
C:\Windows\Setup\Scripts\unattend-01.cmd;
};
);
& {
[float] $complete = 0;
[float] $increment = 100 / $scripts.Count;
foreach( $script in $scripts ) {
Write-Progress -Activity 'Running scripts to customize your Windows installation. Do not close this window.' -PercentComplete $complete;
& $script;
$complete += $increment;
}
} *>&1 >> "C:\Windows\Setup\Scripts\Specialize.log";
</File>
PDF24 angepasste Installation (nur PDF Druckertreiber) per Script: viewtopic.php?t=30284
Winget (Desktop App Installer) für Windows Versionen ohne Store installieren (HowTo): viewtopic.php?t=26214
Vorstellung: tiny11builder; Script zur Verschlankung von Windows 11: viewtopic.php?t=30134
Windows StartMenü Empfohlen (Recommended Section) komplett ausblenden: viewtopic.php?t=30574
Hyper-V VM per Script erstellen viewtopic.php?t=25114
Winget (Desktop App Installer) für Windows Versionen ohne Store installieren (HowTo): viewtopic.php?t=26214
Vorstellung: tiny11builder; Script zur Verschlankung von Windows 11: viewtopic.php?t=30134
Windows StartMenü Empfohlen (Recommended Section) komplett ausblenden: viewtopic.php?t=30574
Hyper-V VM per Script erstellen viewtopic.php?t=25114
- Holgi
- Elite
- Beiträge: 2882
- Registriert: 12.05.2018, 12:33
- Hat sich bedankt: 364 Mal
- Danke erhalten: 463 Mal
- Gender:
Re: Programme automatisch installieren nach Installation
ich hatte hier:
viewtopic.php?t=30594&start=465#p435127
schon mal geschrieben, wie man einen Desktop Arrow Shortcut (Verknüpfungspfeil) los wird.
Das geht zwar grds. sehr gut mit dem Tool von WINAERO:
https://winaero.com/how-to-remove-short ... indows-11/
aber da ist man auf ein externes Icon-Symbol (blank.ico) angewiesen und Windows-eigene-Lösungen (Boardmittel) sind mir da immer lieber.
Jetzt ist mir ein dem blank.ico ebenbürtiger durchsichtiger Verknüpfungspfeil unter Windows aufgefallen. Der steckt hier:
"C:\Program Files\WindowsApps\MicrosoftWindows.Client.WebExperience_524.34401.20.0_x64__cw5n1h2txyewy\Dashboard\WebContent\wwwroot\favicon.ico"
Dumm nur, das die Versionsnummer (524.34401.20.0) sich irgendwann mal ändern wird. Also flugs ein Script geschrieben, welches die aktuelle Versionsnummer ausliest und dann den Registry-Eintrag entsprechend anpasst.
So kann man dieses Script gut mit in die autounattend.xml stecken.
arrow_remover (neu).cmd
Anmerkung:
der Teil von kann ggf. weggelassen werden. Da geht es nur um Administratorrechte.
Viel Spaß!
viewtopic.php?t=30594&start=465#p435127
schon mal geschrieben, wie man einen Desktop Arrow Shortcut (Verknüpfungspfeil) los wird.
Das geht zwar grds. sehr gut mit dem Tool von WINAERO:
https://winaero.com/how-to-remove-short ... indows-11/
aber da ist man auf ein externes Icon-Symbol (blank.ico) angewiesen und Windows-eigene-Lösungen (Boardmittel) sind mir da immer lieber.
Jetzt ist mir ein dem blank.ico ebenbürtiger durchsichtiger Verknüpfungspfeil unter Windows aufgefallen. Der steckt hier:
"C:\Program Files\WindowsApps\MicrosoftWindows.Client.WebExperience_524.34401.20.0_x64__cw5n1h2txyewy\Dashboard\WebContent\wwwroot\favicon.ico"
Dumm nur, das die Versionsnummer (524.34401.20.0) sich irgendwann mal ändern wird. Also flugs ein Script geschrieben, welches die aktuelle Versionsnummer ausliest und dann den Registry-Eintrag entsprechend anpasst.
So kann man dieses Script gut mit in die autounattend.xml stecken.
arrow_remover (neu).cmd
Code: Alles auswählen
@Echo off
:: BatchGotAdmin
:-------------------------------------
REM --> Check for permissions
IF "%PROCESSOR_ARCHITECTURE%" EQU "amd64" (
>nul 2>&1 "%SYSTEMROOT%\SysWOW64\cacls.exe" "%SYSTEMROOT%\SysWOW64\config\system"
) ELSE (
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
)
REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
echo Requesting administrative privileges...
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
set params= %*
echo UAC.ShellExecute "cmd.exe", "/c ""%~s0"" %params:"=""%", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs"
del "%temp%\getadmin.vbs" 1>nul 2>nul
exit /B
:gotAdmin
pushd "%CD%"
CD /D "%~dp0"
@echo off
setlocal enabledelayedexpansion
REM Pfad zur WindowsApps mit MicrosoftWindows.Client.WebExperience
set "basePath=C:\Program Files\WindowsApps"
set "searchFolder=MicrosoftWindows.Client.WebExperience_*"
set "targetPath=C:\Windows\System32"
set "iconFileName=favicon.ico"
REM Suche nach dem neuesten Ordner
for /d %%D in ("%basePath%\%searchFolder%") do (
set "currentFolder=%%D"
)
REM Überprüfen, ob ein Ordner gefunden wurde
if not defined currentFolder (
echo Kein passender Ordner gefunden. Abbruch.
exit /b 1
)
REM Vollständigen Pfad zur Favicon-Datei
set "sourceIconPath=%currentFolder%\Dashboard\WebContent\wwwroot\%iconFileName%"
REM Überprüfen, ob die Datei existiert
if not exist "%sourceIconPath%" (
echo Favicon.ico nicht gefunden unter "%sourceIconPath%". Abbruch.
exit /b 1
)
REM Kopiere Favicon.ico nach C:\Windows\System32
copy /Y "%sourceIconPath%" "%targetPath%\%iconFileName%"
if %errorlevel% neq 0 (
echo Fehler beim Kopieren der Datei nach "%targetPath%".
exit /b 1
)
REM Registry-Schlüssel aktualisieren
set "finalIconPath=%targetPath%\%iconFileName%"
set "escapedPath=%finalIconPath:\=\\%"
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Icons" /v "29" /t REG_SZ /d "\"%escapedPath%\"" /f
REM Erfolgsmeldung
if %errorlevel% equ 0 (
echo Registry erfolgreich aktualisiert mit "%escapedPath%".
echo Bitte starten Sie den Explorer neu oder melden Sie sich ab/an, um die Änderungen zu übernehmen.
) else (
echo Fehler beim Aktualisieren der Registry.
)
endlocal
taskkill /IM explorer.exe /F > NUL 2>&1 && start explorer > NUL 2>&1
der Teil von
Code: Alles auswählen
:: BatchGotAdmin bis :gotAdmin
Viel Spaß!
PDF24 angepasste Installation (nur PDF Druckertreiber) per Script: viewtopic.php?t=30284
Winget (Desktop App Installer) für Windows Versionen ohne Store installieren (HowTo): viewtopic.php?t=26214
Vorstellung: tiny11builder; Script zur Verschlankung von Windows 11: viewtopic.php?t=30134
Windows StartMenü Empfohlen (Recommended Section) komplett ausblenden: viewtopic.php?t=30574
Hyper-V VM per Script erstellen viewtopic.php?t=25114
Winget (Desktop App Installer) für Windows Versionen ohne Store installieren (HowTo): viewtopic.php?t=26214
Vorstellung: tiny11builder; Script zur Verschlankung von Windows 11: viewtopic.php?t=30134
Windows StartMenü Empfohlen (Recommended Section) komplett ausblenden: viewtopic.php?t=30574
Hyper-V VM per Script erstellen viewtopic.php?t=25114