Creopard header Logo

Unterstüzen Sie dieses Projekt mit Ihrer Spende

Herzlichen Glückwunsch,

Ihr Werbeblocker funktioniert!

Bitte deaktivieren Sie Ihren Werbeblocker für diese Seite,
um kostenlose Dienste weiterhin zu ermöglichen.

Windows 98 SE unbeaufsichtigte Installation + Slipstreaming (Updates in Installations-CD integrieren)

Zuletzt geändert: 26.09.2022


Bild: https://giphy.com

Windows 98 (SE) wird heutzutage eigentlich nur noch für Retro-Spiele verwendet.
Oft ist man daher gezwungen, Windows 98 (SE) auf verschiedensten Systemen und Umgebungen (neu) zu installieren. Spätestens hier kommt dann schnell der Wunsch auf:

  1. den Installationsprozess zu automatisieren
  2. wichtige Systemupdates gleich auf der Installations-CD zu integrieren, so dass diese gleich während der Installation mitinstalliert werden

Beide Punkte werden hier beschrieben, so dass eine Windows 98 (SE) Neuinstallation tatsächlich eine wahre Freude sein kann.


1. Windows Installation automatisieren

Um eine Windows 98 (SE) installation ohne große User-Interaktion durchzuführen, ist nur eine "msbatch.inf" Datei im "Win98"-Verzeichnis der Installations-CD notwendig. In diesem Verzeichnis liegen auch die ganzen *.CAB Dateien.
Beim Start der Installation prüft Windows automatisch, ob diese Datei vorhanden ist und führt die darin enthaltenen Konfigurationsschritte aus. (Das Vorgehen ist ähnlich wie bei Windows XP mit der "winnt.sif" Datei.)

Der Aufbau einer msbatch.inf Datei für ein deutsches Windows 98 kann z.B. so aussehen:

; MSBATCH.INF
;
; Copyright (c) 1995-1998 Microsoft Corporation.
; All rights reserved.
;

[BatchSetup]
Version=3.0 (32-bit)
SaveDate=11.03.18

[Version]
Signature = "$CHICAGO$"
AdvancedINF=2.5
LayoutFile=layout.inf

[Setup]
Express=1
InstallDir="c:\windows"
InstallType=3
ProductKey="12345-12345-12345-12345-12345"
EBD=0
ShowEula=0
ChangeDir=0
OptionalComponents=1
Network=1
System=0
CCP=0
CleanBoot=0
Display=0
DevicePath=0
NoDirWarn=0
TimeZone="W. Europe"
Uninstall=0
NoPrompt2Boot=1

[System]
Locale=L0407
SelectedKeyboard=KEYBOARD_00000407

[NameAndOrg]
Name="Benutzer"
Display=0

[Network]
ComputerName="Win98PC"
Workgroup="WORKGROUP"
Display=0
PrimaryLogon=VREDIR
Clients=VREDIR
Protocols=MSTCP
Services=VSERVER
Security=SHARE

[MSTCP]
LMHOSTS=1
LMHOSTPath="C:\WINDOWS\lmhosts"
DHCP=1
DNS=0
WINS=D

[VREDIR]
LogonDomain="WORKGROUP"
ValidatedLogon=0

[VSERVER]
LMAnnounce=0
MaintainServerList=2

[OptionalComponents]
"Eingabehilfen"=0
"Hilfsprogramme für Eingabehilfen"=0
"Aktenkoffer"=0
"Rechner"=0
"Desktop-Hintergrund"=0
"Dokumentvorlagen"=0
"Spiele"=1
"Imaging"=0
"Mauszeiger"=0
"Paint"=0
"Schnellansicht"=0
"Windows Scripting Host"=0
"WordPad"=0
"Adressbuch"=0
"DFÜ-ATM-Unterstützung"=0
"DFÜ-Netzwerk"=0
"DFÜ-Server"=0
"PC-Direktverbindung"=0
"HyperTerminal"=0
"Microsoft Chat 2.1"=0
"Microsoft NetMeeting"=0
"Virtuelles privates Netzwerk"=0
"Baseball"=0
"Faszinierende Kreaturen"=0
"Computer-Innenleben"=0
"Dschungel"=0
"Leonardo da Vinci"=0
"Windows extra"=0
"Mysterium"=0
"Natur"=0
"Wissenschaft"=0
"Weltraum"=0
"Sport"=0
"Die 60er Jahre (USA)"=0
"Goldene Ära"=0
"Reisen"=0
"Unterwasser"=0
"Windows 98"=0
"Internetverbindungsfreigabe"=0
"Microsoft Wallet"=0
"Personal Web Server"=0
"Web Publishing-Assistent"=0
"WBEM"=0
"Microsoft Outlook Express"=0
"Baltisch"=0
"Mitteleuropäisch"=0
"Kyrillisch"=0
"Griechisch "=0
"Türkisch"=0
"Audiokomprimierung"=0
"CD-Wiedergabe"=0
"Macromedia Shockwave Director"=0
"Macromedia Shockwave Flash"=0
"Multimedia-Audioschema"=0
"Audiodateien"=0
"Audiorecorder"=0
"Videokomprimierung"=0
"Lautstärkeregelung"=0
"America Online"=0
"CompuServe"=0
"The Microsoft Network"=0
"Zusätzliche Bildschirmschoner"=0
"Flying Windows"=0
"OpenGL-Bildschirmschoner"=0
"Backup"=0
"Zeichentabelle"=0
"Zwischenablage"=0
"Datenträgerkomprimierung"=0
"Laufwerkkonvertierung (FAT32)"=0
"Gruppenrichtlinien"=0
"Netzwerkmonitor"=0
"Systemmonitor"=0
"Systemressourcen-Anzeige"=0

[Printers]

[InstallLocationsMRU]

[Install]
AddReg=OPKInstall,RunOnce.BatchDelay,Run.Installed.Components,Skip.PCMCIA.Wizard,Registry.WinUpdate

[OPKInstall]
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion","ProductId",,12345-OEM-1234567-12345
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion","ProductKey",,"12345-12345-12345-12345-12345"
HKLM,"Software\Microsoft\Windows\CurrentVersion","RegisteredOwner",,Benutzer
HKLM,"Software\Microsoft\Windows\CurrentVersion","RegisteredOrganization",,none

[RunOnce.BatchDelay]
HKLM,%KEY_RUNONCE%,BatchRun1,,"%25%\rundll.exe setupx.dll,InstallHinfSection Delete.MSN.Icon 4 %10%\msbatch.inf"
HKLM,%KEY_RUNONCE%,BatchRun2,,"%25%\rundll.exe setupx.dll,InstallHinfSection Delete.Welcome 4 %10%\msbatch.inf"
HKLM,%KEY_RUNONCE%,BatchRun3,,"%25%\rundll.exe setupx.dll,InstallHinfSection Delete.Regwiz 4 %10%\msbatch.inf"

[Run.Installed.Components]
HKLM,%KEY_INSTALLEDCOMPS%\>BatchSetupx,,,">Batch 98 - General Settings"
HKLM,%KEY_INSTALLEDCOMPS%\>BatchSetupx,IsInstalled,1,01,00,00,00
HKLM,%KEY_INSTALLEDCOMPS%\>BatchSetupx,Version,,"3,0,0,0"
HKLM,%KEY_INSTALLEDCOMPS%\>BatchSetupx,StubPath,,"%25%\rundll.exe setupx.dll,InstallHinfSection Installed.Components.General 4 %10%\msbatch.inf"
HKLM,%KEY_INSTALLEDCOMPS%\>BatchAdvpack,,,">Batch 98 - Advanced Settings"
HKLM,%KEY_INSTALLEDCOMPS%\>BatchAdvpack,IsInstalled,1,01,00,00,00
HKLM,%KEY_INSTALLEDCOMPS%\>BatchAdvpack,Version,,"3,0,0,0"
HKLM,%KEY_INSTALLEDCOMPS%\>BatchAdvpack,StubPath,,"%25%\rundll32.exe advpack.dll,LaunchINFSection %10%\msbatch.inf,Installed.Components.Advanced"
HKLM,%KEY_INSTALLEDCOMPS%\>Batchwu,,,">Batch 98 - Windows Update"
HKLM,%KEY_INSTALLEDCOMPS%\>Batchwu,IsInstalled,1,01,00,00,00
HKLM,%KEY_INSTALLEDCOMPS%\>Batchwu,Version,,"3,0,0,0"
HKLM,%KEY_INSTALLEDCOMPS%\>Batchwu,StubPath,,"wupdmgr.exe -shortcut"

[Installed.Components.General]
AddReg=Mydocs.Icon, Browser.Settings, Security.Settings, Shell.Prep
BitReg=Shell.Settings
UpdateInis=DelOEQuick.Links

[DelOEQuick.Links]
setup.ini, progman.groups,, "groupQL=..\..\Anwend~1\Micros~1\Intern~1\Quickl~1"
setup.ini, groupQL,, """Launch Outlook Express"""                ;deletes link

[Installed.Components.Advanced]
DelFiles=Connect.Icon, OLS.Icons, QuickLaunch.Icons
CustomDestination=Custom.Dest
RunPostSetupCommands=DirCleanup

[Custom.Dest]
49070=DesktopLDIDSection,5
49050=QuickLinksLDIDSection,5

[Mydocs.Icon]
HKCU,Software\Microsoft\Windows\CurrentVersion\Explorer\Documents,HideMyDocsFolder,,

[Connect.Icon]
verbin~1.lnk

[Delete.MSN.Icon]
DelReg=MSN.Icon

[MSN.Icon]
HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\Desktop\NameSpace\-822,,,

[DesktopLDIDSection]
HKCU,"SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders",Desktop,OLSFolder,"%25%\Desktop"

[OLS.Icons]
americ~1.lnk
at&two~1.lnk
compus~1.lnk
prodig~1.lnk
themic~1.lnk
aboutt~1.lnk
abouto~1.txt
services.txt

[DirCleanup]
rundll32.exe advpack.dll,DelNodeRunDLL32 %49070%\%OnlineLong%

[Delete.Welcome]
DelReg=Registry.Welcome

[Registry.Welcome]
HKLM,Software\Microsoft\Windows\CurrentVersion\Run,Welcome,,

[Delete.Regwiz]
AddReg=Registry.Regwiz

[Registry.Regwiz]
HKLM,Software\Microsoft\Windows\CurrentVersion\Welcome\Regwiz,@,1,01,00,00,00
HKLM,Software\Microsoft\Windows\CurrentVersion,RegDone,1,01,00,00,00

[Registry.WinUpdate]
HKLM,Software\Microsoft\Windows\CurrentVersion\Policies\Explorer,NoDevMgrUpdate,0x10001,1
HKLM,Software\Microsoft\Windows\CurrentVersion\Policies\Explorer,NoWindowsUpdate,0x10001,1

[Browser.Settings]
HKCU,%KEY_IEXPLORERMAIN%,"Start Page",,"http://www.msn.de/"
HKCU,%KEY_IEXPLORERMAIN%,"First Home Page",,"http://www.msn.de/"
HKCU,%KEY_IEXPLORERMAIN%,"Search Page",,"http://www.microsoft.com/isapi/redir.dll?prd=ie&clcid=0x0407&ar=iesearch"
HKLM,%KEY_IEXPLORERMAIN%,"Search Bar",,"http://www.microsoft.com/isapi/redir.dll?prd=ie&clcid=0x0407&ar=iesearch"
HKCU, "SOFTWARE\Microsoft\Internet Explorer\Help_Menu_URLs","Online_Support",,"http://support.microsoft.com/support"

[Security.Settings]
HKCU,"Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\1",CurrentLevel,1,00,00,01,00
HKCU,"Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3",CurrentLevel,1,00,00,01,00
HKCU,"Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\4",CurrentLevel,1,00,00,01,00

[Shell.Prep]
HKCU,"Software\Microsoft\Internet Explorer\Desktop\Components\0",Flags,01,00,00,00
HKCU,"Software\Microsoft\Internet Explorer\main",Show_ChannelBand,0,"no"

[Shell.Settings]
HKCU,"Software\Microsoft\Internet Explorer\Desktop\Components\0",Flags,0,20,1

[QuickLinksLDIDSection]
HKCU,"SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders",AppData,QuickLaunch,"%25%\Application Data"

[QuickLaunch.Icons]
showde~1.scf
channe~1.scf

[Skip.PCMCIA.Wizard]
HKLM,System\CurrentControlSet\Services\Class\PCMCIA,SkipWizardForBatchSetup,,1

[DestinationDirs]
Connect.Icon=10,alluse~1\desktop
OLS.Icons=49070,Online~1
QuickLaunch.Icons=49050,Micros~1\Intern~1\QuickL~1

[Strings]
KEY_RUNONCE="SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce"
KEY_INSTALLEDCOMPS="SOFTWARE\Microsoft\Active Setup\Installed Components"
OnlineLong="Online Services"
KEY_IEXPLORERMAIN="Software\Microsoft\Internet Explorer\Main"

Hier muss an 2 Stellen noch der eigene ProductKey eingetragen werden und schon verkeift sich der Installationsassistent nervige Nachfragen.

Es gibt dabei einen Unterschied, welche Windows 98 (SE) Version installiert wird bzw. ob man eine OEM-Version (wurde damals nur mit neuen PCs vertrieben) oder eine Retail-Version (konnte man im Laden kaufen) verwendet.

Für eine OEM-Version ist der Abschnitt mit

[OPKInstall]

relevant, da hier neben dem ProduktKey auch die ProductId eingetragen wird. Das unterdrückt bei der Benutzung einer OEM-Version nochmal Hinweisfenster zur Eingabe des Produktschlüssels.

2. Windows 98 Slipstreaming - Integrieren von Systemupdates auf dem Installationsmedium

 

Vorwort zum sogenannten Slipstreming

Diese Methodik wurde in den 2000er Jahren mit erscheinen von Windows XP in gewissen Benutzerkreisen zum Volkssport, da man sich damit sein eigenes Windows aktualisieren und gleich "zurechtschneidern" konnte.

Bei Windows 98 (SE) ist die Methodik eher unbekannt oder es gibt sehr komplizierte und fehleranfällige Lösungsansätze.
Einige Ansätze ändern dabei die "layout.inf", "layout1.inf" und "layout2.inf" ab und ersetzen die Dateien in den jeweiligen *.CAB Dateien, wie z.B.: https://github.com/rishooty/Q9xS.

Generelle Vorgehensweise bei der Integration von Updates

Doch es gibt auch einen pragmatischeren Ansatz.

Zuerst besorgt man sich die relevanten Updates, die man integrieren möchte und entpackt die jeweilige Setup-Datei manuell. Die darin enthaltenen Dateien mit der in der Regel höheren Versionsnummer kopiert man anschließend einfach auch ins gleiche Verzeichnis (wie auch bei der "msbatch.inf") in dem bereits die anderen *.CAB Dateien liegen.

Während der Installation schnappt sich Windows einfach die Dateien aus dem Hauptverzeichnis, statt die alten komprimierten Versionen aus der jeweiligen *.CAB Datei. Der zusätzliche Speicherbedarf, da die Dateien ja nun eigentlich doppelt vorhanden sind, ist dabei verschmerzbar.

Man kann im Prinzip auch alle Dateien aus dem SP3-Verzeichnis des inoffiziellen Service Packs benutzen und sie integrieren, aber das empfehlen wir an dieser Stelle nicht, da es bei der Installation zu (ignorierbaren) Fehlern kommt. Aber es ist generell möglich.

Empfohlener Ansatz: Minimal-Set an Updates für die Installation

Besser ist es hier, lediglich ein minimales Set an Updates zu integrieren, so dass z.B. Windows 98 (SE) direkt auf PC-Systemen mit mehr als 512MB oder Festplatten größer als 120 GB installiert werden kann.
Dies erfordert in der Regel nur die Ersetzung einiger weniger Dateien.

Dem kommen wir mit dem "minimalen Service Pack" nach, das nur folgende Fehlermehebungen und Verbesserungen beinhaltet:

Datum
28.07.2022
Details
icon
>> Der Link zum Blogeintrag für Windows 98 SE Slipstreaming <<

Der häufigste Haupkritikpunkt an den inoffiziellen Service Packs ist und war, dass sie zu groß und aufgeblasen seien und dass viele Updates aus späteren Windows Version aus Sicherheitsaspekten unnötig "zurückportiert" wurden. Aus heutiger Sicht wird Windows 98 nur noch zum Spielen benutzt. Mittlerweile mag es richtig sein, nur noch die Updates verwenden zu wollen, die einen tatsächlichen Mehrwert, Performanceverbesserung oder Stabilität bieten.

Die Idee dafür kam mit einer englischen Version eines "Slipstreaming Packs" für Windows 98 SE aus dem VOGONS.ORG Forum.

Weitere Informationen zu den einzelnen Updates unter: Komplette Liste aller Hotfixes, Updates und Addons für Windows 98 Second Edition

Das Slipstreaming Pack beinhaltet folgende bereits entpackte Updates:

----------------------------------------------------------------
* Aus folgenden Updates/Hotfixes wurden die relevanten Dateien extrahiert:
----------------------------------------------------------------
Q236926 (TCP/IP kann Pakete vorzeitig weiterleiten in VTCP.386)
Q239696 (Hängende Rückkehr aus dem Ruhezustand in Situationen mit wenig Speicher oder hoher Plattenaktivität)
Q239887 (Das klassische Shutdown-Supplement in APMBATT.SYS, CONFIGMG.VXD, MSCONFIG.EXE, PCI.VXD, VPOWERD.VXD)
Q240075 (USB-Probleme mit AMD CPU + VIA USB-Controller in UHCD.SYS)
Q240896 (OpenGL-Programm kann eine Fehlermeldung für ungültige Seitenfehler verursachen in OPENGL32.DLL)
Q241052 (Message Box zeigt Browse für Passwortsynchronisation an in MPRSERV.DLL)
Q245065 (Automatische Wiederholung funktioniert nicht für USB-Tastatur nach Suspend/Resume in KBDHID.VXD)
Q246817 (Update für KB239887 mit VPOWERD.VXD)
Q249146 (Sounds können bei vorhandenen USB-HID-Geräten über die PlaySound-API deaktiviert werden in WINMM.DLL)
Q249635 (USB-Treiber verwendet die größte unterstützte Berichtsgröße in HIDCLASS.SYS)
Q253697 (USB-Enumerationsprobleme mit OpenHCI-Controller auf schnellen Computern in OPENHCI.SYS)
Q257821 (Windows Sockets select() Funktion fügt 500 Millisekunden Zeitüberschreitung hinzu, in MSAFD.DLL, MSWSOSP.DLL)
Q258680 (Die Aktivierung des Bildschirmschoners während der Unterbrechung kann dazu führen, dass der Computer nicht mehr reagiert in DESK.CPL, POWERCFG.CPL)
Q269604 (Directsound-Fehler in DSOUND.DLL)
Q272621 (Negative Größe der freien Festplatte wird auf der Registerkarte Virtueller Speicher in den Systemeigenschaften angezeigt in SYSDM.CPL)
Q273017 (Scandisk, das bei jedem Start ausgeführt wird in IFSMGR.VXD)
Q274175 (Kopierfehler ab der 8. Ebene von einer CD/DVD in CDFS.VXD)
Q277628 (Fehler "Fehler 5 Zugriff verweigert" beim letzten Zugriff und bei der Erstellungszeit in VFAT.VXD)
Q278368 (ein Speicherleck in ATMUNI.SYS)
Q281533 (Der USB-Treiber kann einen Trap 14-Fehler beim Andocken verursachen in USBD.SYS)
Q290831 (RB_FUNCTION_SHUTDOWN Anfragen, die während des Herunterfahrens nicht an SCSI-Miniports gesendet werden in SCSIPORT.PDR)
Q291362 (ersetzt durch NUSB Treiber und hier nicht enthalten, USER32.DLL + USER.EXE)
Q293793 (Ausnahme 0E in Vredir-Fehlermeldungen beim Öffnen von Netzwerkdateien in VREDIR.VXD)
Q306453 (Sie erhalten einen Bugcheck in Usbhub.sys, wenn Sie ein USB-Gerät entfernen oder hinzufügen in USBHUB.SYS)
Q310695 (DVD-Player-Programm kann nicht auf Daten zugreifen in UDF.VXD)
Q311561 (MS-DOS verarbeitet Festplatten-Hardware-Fehler nicht richtig in IO.SYS/WINBOOT.SYS)
HIMEM.SYS ersetzt durch umbenannte XMGR.SYS (Schnelleres Booten, 512MB+ RAM-Unterstützung, siehe http://optimizr.dyndns.org/dos/drivers.html)
98KRNLUP (Inoffizielle Lösung für die Korruption in den Stacks in KRNL386.EXE)
98UPDSYS (Inoffizieller Windows 98 SE aktualisierter CPU-Mikrocode in UPDATE.SYS)
IOSYS98 (2GB+ DVD-Unterstützung in CDFS.VXD ersetzt Q274175)
aspi_471a2.exe (aktualisierte ASPI-Treiber in WNASPI32.DLL)
bhdd31.zip + scanfrag.exe (120gb+ HDD-Unterstützung mit CVTAPLOG.EXE, DEFRAG.EXE, DSKMAINT.DLL, ESDI_506.PDR, FDISK.EXE, FORMAT.COM, SCANDISK.EXE, SCANDISKW.EXE)
dst_9xme.exe (Aktualisiert die Zeitzone Sommerzeit)

----------------------------------------------------------------
* Installationsprogramme für die Nachinstallation:
----------------------------------------------------------------
_nusb24d.exe (installiert einen USB-Stack, ersetzt im Gegensatz zu 3.x nicht die EXPLORER.EXE)
_PATCHMEM.zip (512MB+ RAM-Unterstützung, siehe https://archive.org/details/PATCHMEM)
_Copy2Gb (Inoffizieller Hotfix für das Kopieren von Dateien frößer als 2GB im Explorer in KERNEL32.DLL)

----------------------------------------------------------------
* Bekannte Probleme
----------------------------------------------------------------
Die neueren Dateien (hier in _nusb24d.exe) von user32.dll und user.exe ab Version 4.10.2231 oder höher können zu folgendem unschönen Effekt führen: 
Nach dem Schließen von Fenstern (z.B. beim Bildschirmschoner) verbleiben manchmal leere Schaltflächen in der Taskleiste mit oder ohne Text. Erst wenn man auf diese klickt, verschwinden sie. Dies kann dadurch behoben werden, wenn man die Originaldateien der user32.dll und user.exe (Version 4.10.2222) von der Windows 98 CD entpackt (WIN98_41.CAB, WIN98_44.CAB + WIN98_45.CAB) und im MS-DOS Modus die neueren Dateien in C:\Windows\System wieder überschreibt.
siehe auch: https://groups.google.com/g/microsoft.public.win98.gen_discussion/c/4RicciWGFYk

Die darin enthaltenen Dateien werden nun einfach in das "Win98"-Verzeichnis der Windows 98 CD kopiert. Anschließend kann man damit eine neue (bootfähige) CD erzeugen und die Windows 98 Installation automatisiert/aktualisiert ablaufen lassen.

Dateiname
Minimales Slipstreaming Pack für Windows 98 SE.zip
Größe
4 MB




Ähnliche Artikel anzeigen: