Seite 7 von 7

Re: Erstellung einer tagesaktuellen Windows-ISO

Verfasst: 08.10.2026, 21:27
von g-force
Holgi hat geschrieben: 08.10.2026, 19:49 Endlich mal eine tagesaktuelle ISO die wirklich von vornherein aktuell ist (nkl. Browser und Defender).
Vielen Dank für`s Testen und die positive Rückmeldung, Holgi !
Das entspricht dem Ziel "tagesaktuell", erfüllt aber auch die Möglichkeiten von "NOLIMIT". Hattest Du bei deinem Versuch deine eigene "autounattend.xml" eingebunden/importiert?

Re: Erstellung einer tagesaktuellen Windows-ISO

Verfasst: 08.10.2026, 23:04
von Holgi
Nein, diesmal ohne eigene autounattend.xml

Re: Erstellung einer tagesaktuellen Windows-ISO

Verfasst: 09.10.2026, 01:54
von g-force
Ich habe den ganzen Tag damit verbracht, diese "Abbodi-Scripts" in dieses Projekt einzubauen. Erstens muß erstmal eine "jungfräuliche" ISO erstellt werden, dann umständlich die Sprachpakete integriert, erst danach die Updates.....
Ne, laß mal gut sein. Wer die ABBODI-Methode mag, ist eh "vom Fach" und braucht dieses Tool nicht.
Ich möchte etwas, das funktioniert und ein sauberes Ergebnis liefert.

Re: Erstellung einer tagesaktuellen Windows-ISO

Verfasst: 09.10.2026, 08:04
von moinmoin
Ein sauberes Ergebnis liefern beide. (Vielleicht etwas falsch von dir ausgedrückt).

"Die vom Fach" nutzen die Scripte von Abbodi, da hier nichts verbogen ist. Adguard hat schon öfter neue Versionen mit im Script gehabt, die noch nicht auf den MS-Servern lagen. Aber wenn es für dein Tool besser ist, auch kein Problem. :)

Re: Erstellung einer tagesaktuellen Windows-ISO

Verfasst: 09.10.2026, 09:41
von Holgi
die letzten beide Beiträge hier lassen mich rätseln ("Ne, laß mal gut sein"):

ich kenne den Unterschied zwischen den Abbodi und Adguard Scripten nicht im Detail.
Damit ist das tolle Projekt hier am Ende angekommen? Hat doch funktioniert?!
Es ging zuletzt um die Integration eines tagesaktuellem Edge und die Defender Sachen in eine ISO.
Das ist eine spannende Sache, die es sonst so nirgendwo gibt.
Ich hoffe, @g-force macht da weiter.

Re: Erstellung einer tagesaktuellen Windows-ISO

Verfasst: 09.10.2026, 10:25
von g-force
Nein, es geht weiter, das hast Du falsch verstanden. Es ging nur um den eingebauten Converter, den es in 2 Versionen gibt. Ich nutze einen Converter, den ADGUARD mitliefert. Es gibt einen anderen Converter von "abbodi1406", den man u.a. hier findet: https://forums.mydigitallife.net/thread ... ase.75052/
Mehrere Versuche, diesen vermeintlich besseren Converter in dieses Tool einzubinden, sind gescheitert. Es bleibt also beim älteren, aber funktionierenden ADGUARD-Converter.

Re: Erstellung einer tagesaktuellen Windows-ISO

Verfasst: 09.10.2026, 16:40
von g-force
moinmoin hat geschrieben: 09.10.2026, 08:04 Ein sauberes Ergebnis liefern beide. (Vielleicht etwas falsch von dir ausgedrückt).
Da hast Du natürlich recht, beide Converter funktionieren sehr gut. Der abbodi-Converter geht etwas eigene Wege, die Details sind mir nicht bekannt, er wird Gründe haben. Der Adguard-Converter mag veraltet sein und umständlich zu bedienen, aber in meinem Tool ist das ja über die GUI gesteuert. Und genau das funktioniert mit dem Converter besser.

Nächster Schritt ist übrigens eine Treiberintegration incl. Treiberimport vom Hostsystem. Man kann sich seine eigenen Treiber integrieren, notwendige RAID-Treiber werden auch in die "boot.wim" (Setup) integriert. Release kommt heute noch.

Re: Erstellung einer tagesaktuellen Windows-ISO

Verfasst: 09.10.2026, 16:58
von Holgi
moin @g-force:
dieser Jit-Fehler lässt mir keine Ruhe.
Hast du/haben andere den nicht auch?
Hab´s mal in der KI erfragt, weil ich null Ahnung davon habe.
Ergebnis:

Code: Alles auswählen

Meine Vermutung: Der Fehler entsteht beim Laden oder Auswerten der verfügbaren Windows-Sprachen.

Möglicherweise liefert die Onlineabfrage keine Daten zurück, oder die Antwort wird nicht korrekt verarbeitet.

Das kann beispielsweise durch eine geänderte API-Antwort oder einen fehlgeschlagenen Abruf passieren.

3. Wie lässt sich der Fehler beheben?

Im PowerShell-Skript muss vor jedem Arrayzugriff überprüft werden, ob die betreffende Variable tatsächlich Daten enthält.

Bisher möglicherweise:
$ErsteSprache = $Sprachen[0]
Korrigierte Variante:
if ($null -ne $Sprachen -and @($Sprachen).Count -gt 0) {

    $ErsteSprache = @($Sprachen)[0]

}
else {

    Write-Warning "Es wurden keine Sprachen gefunden!"

}

Damit wird dieser konkrete NULL-Array-Fehler verhindert.
Wie der Fehler einmal zu Beginn beim Aufruf aussieht hatte ich schon gepostet.
Vlt. kannst du damit etwas anfangen?
LG
Holgi

Re: Erstellung einer tagesaktuellen Windows-ISO

Verfasst: 09.10.2026, 20:04
von Holgi
jetzt ein erneuter Test mal wieder mit eigener - kleiner - autounattend.xml.
Hat grundsätzlich funktioniert.
Weil ich gesehen hatte, dass du ein Partitionierungs-Script einsetzt, habe ich die Partitionierung in meiner autounattend.xml ausgespart.
Die Installation in einer VM funktionierte dann auch tatsächlich ohne manuelle Festplattenpartitionierung.
Datenträger "0" war vorhanden und offenbar formatiert (?).
Das Setup wurde an der Stelle angehalten und ich mußte das Windows Setup anweisen, die vorhanden Partition zu nutzen. "IntallTo" fehlte also offensichtlich.

Re: Erstellung einer tagesaktuellen Windows-ISO

Verfasst: 09.10.2026, 20:13
von g-force
Das sind natürlich Folgen deiner eigenen "autounattend.xml", die ja sehr komplex ist ist.
Ja, es gibt ein Script im Setup, das analysiert, ob das Gerät "MBR" oder "UEFI" ist und dementsprechend die Partitionierung vornimmt. Da beißt sich wohl noch was. Ist natürlich sehr speziell mit deiner XML, aber es soll doch auch damit funktionieren.
Ich forsche weiter, die neue Version kommt gleich.

Re: Erstellung einer tagesaktuellen Windows-ISO

Verfasst: 09.10.2026, 20:38
von Holgi
g-force hat geschrieben: 09.10.2026, 20:13 Das sind natürlich Folgen deiner eigenen "autounattend.xml", die ja sehr komplex ist ist.
eben nicht. Ich schrieb ja extra " mit eigener - kleiner - autounattend.xml":
sieht so aus:

Code: Alles auswählen

<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
    <settings pass="windowsPE">
		<component name="Microsoft-Windows-International-Core-WinPE" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
			<SetupUILanguage>
				<UILanguage>de-DE</UILanguage>
			</SetupUILanguage>
			<InputLocale>0407:00000407</InputLocale>
			<SystemLocale>de-DE</SystemLocale>
			<UILanguage>de-DE</UILanguage>
			<UserLocale>de-DE</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">

			<UserData>
				<ProductKey>
					<Key>VK7JG-NPHTM-C97JM-9MPGT-3V66T</Key>
				</ProductKey>
				<AcceptEula>true</AcceptEula>
			</UserData>
<RunSynchronous>
  <RunSynchronousCommand wcm:action="add">
    <Order>1</Order>
    <Path>cmd /c reg add HKLM\SYSTEM\Setup\LabConfig /v BypassTPMCheck /t REG_DWORD /d 1 /f</Path>
  </RunSynchronousCommand>

  <RunSynchronousCommand wcm:action="add">
    <Order>2</Order>
    <Path>cmd /c reg add HKLM\SYSTEM\Setup\LabConfig /v BypassSecureBootCheck /t REG_DWORD /d 1 /f</Path>
  </RunSynchronousCommand>

  <RunSynchronousCommand wcm:action="add">
    <Order>3</Order>
    <Path>cmd /c reg add HKLM\SYSTEM\Setup\LabConfig /v BypassRAMCheck /t REG_DWORD /d 1 /f</Path>
  </RunSynchronousCommand>

  <RunSynchronousCommand wcm:action="add">
    <Order>4</Order>
    <Path>cmd /c reg add HKLM\SYSTEM\Setup\LabConfig /v BypassCPUCheck /t REG_DWORD /d 1 /f</Path>
  </RunSynchronousCommand>

  <RunSynchronousCommand wcm:action="add">
    <Order>5</Order>
    <Path>cmd /c reg add HKLM\SYSTEM\Setup\LabConfig /v BypassStorageCheck /t REG_DWORD /d 1 /f</Path>
  </RunSynchronousCommand>

  <RunSynchronousCommand wcm:action="add">
    <Order>6</Order>
    <Path>cmd /c reg add HKLM\SYSTEM\Setup\MoSetup /v AllowUpgradesWithUnsupportedTPMOrCPU /t REG_DWORD /d 1 /f</Path>
  </RunSynchronousCommand>

  <RunSynchronousCommand wcm:action="add">
    <Order>7</Order>
    <Path>cmd /c reg add HKLM\SYSTEM\Setup\LabConfig /v BypassDiskCheck /t REG_DWORD /d 1 /f</Path>
  </RunSynchronousCommand>
</RunSynchronous>


        </component>
    </settings>

    <settings pass="specialize">
    <component name="Microsoft-Windows-Deployment" processorArchitecture="amd64" language="neutral" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" publicKeyToken="31bf3856ad364e35" versionScope="nonSxS">
      <RunSynchronous>
        <RunSynchronousCommand wcm:action="add">
          <Order>1</Order>
          <Path>cmd /c reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\OOBE /v BypassNRO /t REG_DWORD /d 1 /f</Path>
        </RunSynchronousCommand>
      </RunSynchronous>
    </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">
            <ComputerName>Hyper-V</ComputerName>
            <ProductKey>W269N-WFGWX-YVC9B-4J6C9-T83GX</ProductKey>
        </component>

    </settings>

    <settings pass="oobeSystem">
        <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>
                <HideOEMRegistrationScreen>true</HideOEMRegistrationScreen>
                <HideOnlineAccountScreens>true</HideOnlineAccountScreens>
                <HideWirelessSetupInOOBE>true</HideWirelessSetupInOOBE>
                <ProtectYourPC>3</ProtectYourPC>
                <SkipUserOOBE>true</SkipUserOOBE>
                <SkipMachineOOBE>true</SkipMachineOOBE>
            </OOBE>
            <UserAccounts>
                <AdministratorPassword>
                    <Value>Test1234</Value>
                    <PlainText>true</PlainText>
                </AdministratorPassword>
            </UserAccounts>
      <FirstLogonCommands>
        <SynchronousCommand wcm:action="add">
          <Order>1</Order>
          <CommandLine>net user &quot;Administrator&quot; /logonpasswordchg:no</CommandLine>
        </SynchronousCommand>
        <SynchronousCommand wcm:action="add">
          <Order>2</Order>
          <CommandLine>net accounts /maxpwage:unlimited</CommandLine>
        </SynchronousCommand>
      </FirstLogonCommands>
     <AutoLogon>
        <Username>Administrator</Username>
        <Enabled>true</Enabled>
        <LogonCount>999</LogonCount>
        <Password>
          <Value>Test1234</Value>
          <PlainText>true</PlainText>
        </Password>
      </AutoLogon>

            <TimeZone>W. Europe Standard Time</TimeZone>

        </component>

    <component name="Microsoft-Windows-International-Core" processorArchitecture="amd64" language="neutral" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" publicKeyToken="31bf3856ad364e35" versionScope="nonSxS">
      <InputLocale>00000407</InputLocale>
      <SystemLocale>de-DE</SystemLocale>
      <UserLocale>de-DE</UserLocale>
      <UILanguage>de-DE</UILanguage>
      <UILanguageFallback>en-US</UILanguageFallback>
    </component>
    <component name="Microsoft-Windows-SecureStartup-FilterDriver" processorArchitecture="amd64" language="neutral" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" publicKeyToken="31bf3856ad364e35" versionScope="nonSxS">
      <PreventDeviceEncryption>true</PreventDeviceEncryption>
    </component>
    <component name="Microsoft-Windows-EnhancedStorage-Adm" processorArchitecture="amd64" language="neutral" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" publicKeyToken="31bf3856ad364e35" versionScope="nonSxS">
      <TCGSecurityActivationDisabled>1</TCGSecurityActivationDisabled>
    </component>

    </settings>


</unattend>

Re: Erstellung einer tagesaktuellen Windows-ISO

Verfasst: 10.10.2026, 08:20
von g-force
Aus der ReadMe:
Eigene autounattend.xml importieren
Übernimmt Ihre eigene Antwortdatei unverändert. Eine Kopie wird unter data\scripts\unattend-extern abgelegt. Die vom Tool erzeugten XML-Einstellungen werden nicht mit Ihrer Datei zusammengeführt; die betreffenden Optionen werden ausgegraut.
Benutzeranlage, Audit-Modus, Partitionierung und weitere Setup-Vorgaben bestimmen Sie dann selbst in der XML. Die automatische Sprachregistrierung und die zusätzliche Installation von Sicherheitspaketen beim ersten Start entfallen. Die Defender-Aktualisierung im Windows-Image bleibt verfügbar.
Wenn eine eigene XML verwendet wird, ist also auch die automatische Partitionierung ausgeschaltet, damit sich das nicht in die Quere kommt. Deine XML muß also Anweisungen für die Partitionierung enthalten, sonst stoppt es an der Stelle.

Re: Erstellung einer tagesaktuellen Windows-ISO

Verfasst: 10.10.2026, 08:23
von g-force
Neue Version, jetzt mit Treiberintegration:

Re: Erstellung einer tagesaktuellen Windows-ISO

Verfasst: 10.10.2026, 14:21
von Holgi
Hallo @g-force
mit der neuen Version ist die Fehlermeldung am Anfang weg, dafür kommt es jetzt wiederholt zu einem Abbruch:

Code: Alles auswählen

Status Legend:
(OK):download completed.
Preparing...
Eigene Edge.wim übernommen.
"\data\uup\26300.9550\de-de\all\amd64\%A_*.esd" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
**********************
Ende der Windows PowerShell-Aufzeichnung
Endzeit: 20261010141848
**********************
Edit: könnte an einem Leerzeichen im Pfad gelegen haben. Jetzt hat es funktioniert.
Teste gerade die No-Limit ISO.

Re: Erstellung einer tagesaktuellen Windows-ISO

Verfasst: 10.10.2026, 18:16
von g-force
Ich konnte den Fehler nicht reproduzieren. Wenn es ohne Leerzeichen im übergeordneten Pfad funktioniert, ist ja alles gut. Ich hoffe, daß es bei Dir nun mal durchläuft.