Seite 1 von 1

PreOSPackage BiosUpdateTemplate

Verfasst: 13. Nov 2019, 13:49
von JKA
Hallo,

versuche seit ein paar Tagen das PreOS-Paket "BiosUpdateTemplate 1.3" zu erweitern und zu testen.
Leider mit wenig Erfolg. PowerShell Kenntnisse sind auch begrenzt.
Habe wie in der Anleitung die Funktionen erweitert und um ein weiteres DELL Modell ergänzt.
Das Paket soll noch vor DiskPartitioning ausgeführt werden.
Paket startet, startet laut log die Ausführung der Update-Datei und beendet sich nach 2 Sekunden mit BIOS update failed with exit code -1073741819.
Verwendet wird WinPE1.6.6
Die Log Datei "debug_BiosUpdate.log" die vom Skript erzeugt wird ist 0 KB groß und leer!
Bios_log.PNG
(24.34 KiB) 178-mal heruntergeladen
Mir scheint es als würde die angegebene Update-Datei zwar aufgerufen, aber aus irgendeinem Grund nie ausgeführt wird.
Skript als install.log und Empirum-Log sind im Anhang enthalten.
Versuche ich in der WINPE Umgebung das Skript manuell auszuführen, erhalte ich den gleichen Fehler.
Manuelles starten der Datei Flash64W.exe in der WINPE Umgebung funktioniert nicht, es wird nichts ausgeführt.
Über jegliche Info, Hinweise, Vermutungen und Lösungsansätze bin ich dankbar.

Install.zip
(2.58 KiB) 173-mal heruntergeladen
Gruß Jan

Re: PreOSPackage BiosUpdateTemplate

Verfasst: 18. Nov 2019, 15:12
von JKA
Nachtrag:
Die im BIOSUPDATETEMPLATE enthaltene Flash64w.exe von Dell funktioniert mit den neusten Modellen 5x00 sowie den 2-1 Geräten nicht mehr.
Es gibt seit September 2019 ein Update der Flash64w.exe von Dell.

Nachdem die Flash64w.exe im Empirum Paket ausgetauscht wurde funktioniert auch das automatische BIOS Update wie es soll!

Gruß
Jan

Re: PreOSPackage BiosUpdateTemplate

Verfasst: 06. Feb 2020, 10:05
von Data
Hallo

Habe mich jetzt mal mit dem Template 2.0 angefreundet.
Meine install.ps1 ebenfalls angepasst und im Trockenlauf für 3 Modelle von Dell getestet.

Dann stellten sich mir aber folgende Fragen:
  • Das ist ein PreOS Paket. wie soll ich damit zeitgesteuert und ohne eine Neuinstallation des Client das BIOS aktualisieren? In der Doku zum Paket 2.0 wird es als eigenständig bezeichnet, was ich aber als Widerspruch sehe.
  • Dann muss es ja in einer Zuweisungsgruppe laufen da ein Client nur einmal in einer Konfigurationsgruppe sein kann.
    Das Verzeichnis mit den ausführbaren Update-Dateien scheint aber nicht auf den Client zu zeigen sondern bleibt auf dem Server.
  • Dann werden die BIOS erst bei einer Neuinstallation upgedated?
In dem aktuellen Templatepaket ist auch die beschriebene Flash64W von Dell im letzten Stand enthalten. Brauch also auch nicht mehr extra gesucht und hinzugefügt zu werden.

Habe ich einen Denkfehler? Ist das BIOS Update Template nur für eine Pre-Install Routine geeignet?

Ansonsten könnte ich die Flash64W und das eigentliche BIOS in ein eigenes Paket stellen und darüber in eine Zuweisungsgruppe zuordnen. Beispielsweise über eine WMI-Abfrage.

Re: PreOSPackage BiosUpdateTemplate

Verfasst: 07. Feb 2020, 16:48
von Hendrik_Ambrosius
Ja, läuft nur in der PreOS-Phase.
Wenn das Update also nicht für das OS-Setup zwingend ist würde ich ein normales Paket mit setup.inf dafür erstellen.

Re: PreOSPackage BiosUpdateTemplate

Verfasst: 14. Feb 2020, 09:00
von Data
Guten Morgen

Habe ich dann auch so erkannt und versucht umzusetzen.

Ist jetzt etwas Offtopic.

Paket gebaut welches ich den entsprechenden Hosts zu geordnet habe.
Paket wird nur vor Benutzeranmeldung ausgeführt und der Reboot wird durch das Updatetool von Dell durchgeführt.
Hab mich gefreut, dass das Paket läuft.
In der Testumgebung ist mir dann aber aufgefallen, wie das Paket immer wieder durchgeführt wird - ist ja auch klar. Es gibt ja keine Rückmeldung über den Erfolg.

Gibt es eine Möglichkeit innerhalb der Setup.inf auf die vorhandene Bios-Version zu prüfen? Beispielsweise über eine WMIC. Und damit den Erfolg des Biosupdate auch im Empirum zu sehen?

Re: PreOSPackage BiosUpdateTemplate

Verfasst: 14. Feb 2020, 09:14
von Hendrik_Ambrosius
Wieso gibt es keine Rückmeldung über den Erfolg? Ist doch eine ganz normale setup.inf mit entsprechenden Productkeys, oder?

Klar kann man auf die BIOS Version prüfen:

Set V_Biosversion=%HKLM,"HARDWARE\DESCRIPTION\System\BIOS","BIOSVersion"%

...und dann ein IF darauf.

In diesem Reg-Bereich stehen auch alle anderen Infos wie PC-Modell, usw. so dass man auch ein generisches Update-Paket erstellen könnte.

Wer es noch komfortabler haben möchte sollte mal bei unserem Partner lmbit anfragen:
Wenn ich mich nicht irre haben die dazu eine Erweiterung erstellt die sie gegen Geld zur Verfügung stellen.
Ist leider noch nicht im Matrix42 Marketplace.

Re: PreOSPackage BiosUpdateTemplate

Verfasst: 16. Feb 2020, 23:34
von Data
Hallo

Es gibt keine Rückmeldung da ich einfach das Biosupdate ohne errorlevel hart neu starten lasse.


Ich verstehe überhaupt nicht warum ich nicht selber auf die Registry gekommen bin.
Ja. Hier stehen alle Infos.
Hersteller der HW, Modell und Bios-Version.
Ich lese die Werte in 3 Variablen ein.
Dann wollte ich über ein if auf den auf die ersten 4 Zeichen des Herstellers filtern weil mal Dell oder "Dell Inc." drinsteht.
Ab hier bin ich gescheitert und über den Debugger bin ich auch nicht glücklich.
(Der Stop des Debuggers beendet das Hilfefenster, muss ich manuell starten, jedes Mal werden die zu beobachteten Variablen entfernt, kein Zugriff auf die Variablen per Console,....)

Alles gelesen, Beispiele nachvollzogen, Syntax 1000 mal geprüft, GROSS und kleinschreibweise getestet.

Das if hat keinen passenden Treffer.
Also das Left auf den Inhalt der Variable in eine neue schreiben lassen.

Set HW-Test=Left ("%HW-Hersteller%",4)

Mit dem Ergebnis das in der Variablen HW-Test 'Left ("%HW-Hersteller%",4)' steht.

Andere Funktionen wie DoesRegKeyExist habe ich nicht versucht.

Was mache ich falsch?

Re: PreOSPackage BiosUpdateTemplate

Verfasst: 19. Feb 2020, 11:30
von Hendrik_Ambrosius
Bei mir funktioniert dies:

set hw-hersteller=Dell Inc.
echo %hw-hersteller%
Set HW-Test=Left("%HW-Hersteller%",4)
echo %HW-Test%

Bei solchen Thema exportiere ich den RegKey via "callhidden regedit /e <file>" in eine Datei und mache dann ein DoesTextInFileExist auf z.B. DELL.

Re: PreOSPackage BiosUpdateTemplate

Verfasst: 19. Feb 2020, 12:43
von Data
Hallo

Das ist auch ne coole Idee eine Date danach zu Parsen.

Ich weiss aber auch nicht was ich anders gemacht habe.

Ich vergleiche gerade die laufende Version gegen ein Share.
Damit brauche ich das Paket nicht zu aktualisieren, sondern nur zu aktivieren.

Der kopiert das Bild-Update lokal und führt es aus. Schreibt in das Error Log, rebootet und dann versuche ich das Paket wieder aufzunehmen (Marker setzen) um den Erfolg zu loggen.