![]() |
Bios auslesen funktioniert nicht
Code:
ich hab den quellcode verwendet und auch schon über google gesucht. über google komm ich an die gleiche lösung, nur funktioniert das scheinbar nicht mit delphi 6.
try
Label1.Caption := String(Pchar(Ptr($FE061))); // BIOS Name Label2.Caption := String(Pchar(Ptr($FE091))); // CopyRight-Informationen Label3.Caption := String(Pchar(Ptr($FFFF5))); // BIOS Datum Label4.Caption := String(Pchar(Ptr($FEC71))); // Seriennummer except Label1.Caption := 'keine Info'; Label2.Caption := 'keine Info'; Label3.Caption := 'keine Info'; Label4.Caption := 'keine Info'; end; könnte mir da jemand helfen oder kennt den fehler? gruß, creature |
Re: Bios auslesen funktioniert nicht
NJimm die BIOSHelp von Nico:
![]() |
Re: Bios auslesen funktioniert nicht
Schau mal
![]() [edit]da war wohl wieder jemand schneller...[/edit] |
Re: Bios auslesen funktioniert nicht
Zitat:
Frank :coder: |
Re: Bios auslesen funktioniert nicht
Von ASM habe ich persönlich keine Ahnung, a müsstest du wohl mit dem Author der Software bzw. des Codes Kontakt aufnehmen. Habe nur kurz im Internet nach einer Lösung für creature gesucht un das gefunden. Hab mir dann nur noch das Demo runtergeladen und getestet ob es funktioniert, was es auch tut - warum kann ich dir also net sagen :lol:
|
Re: Bios auslesen funktioniert nicht
das ging ja flott. :cheers:
danke. :thumb: |
Re: Bios auslesen funktioniert nicht
Zitat:
|
Re: Bios auslesen funktioniert nicht
Zitat:
(ok, in der ersten Version habe ich genau das gemacht - aber es gibt auch Pascal-Compiler die kein Intel-ASM verstehen...) Die aktuelle Version liegt auf meiner Homepage (2.2). Im Netz ist ab und zu eine 3.0 zu finden (x64/w2k3sp1-Support) die für TuneUp erweitert wurde. |
Re: Bios auslesen funktioniert nicht
Die von deiner HP ist von 2003-07-23. Dann dürfte ich auch die aktuelle auf meiner Homepage haben.
|
Re: Bios auslesen funktioniert nicht
Zitat:
|
Re: Bios auslesen funktioniert nicht
Dann gib mir doch mal den Link zur 3.0'er. ;)
|
Re: Bios auslesen funktioniert nicht
Zitat:
|
Re: Bios auslesen funktioniert nicht
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo zusammen,
ich muss dieses Thema nochmals aufgreifen. Ich benutze das BIOSHelp von ![]() Kann mir da jemand weiterhelfen, wie ich auch jetzt die Daten vom BIOS bekomme ? |
Re: Bios auslesen funktioniert nicht
Das Beispielprojekt (BiosInfo) ist nur ein Beispiel, keine SMBIOS-Referenzimplementierung.
1) Die SMBIOS-Tabellen werden nicht standardkonform ausgelesen (um Probleme mit diversen nicht standardkonformen BIOS-Versionen zu verhindern). BiosInfo hat immer dann Probleme, wenn der erste Tabelleneintrag nicht die BIOS-Info 0 ist (tritt oft bei Dell Noteboks auf). 2) Einige BIOS-Versionen legen die SMBIOS-Tabelle an ungewöhnliche Adressen. Aber dafür gibt es ja die Ex-Funktion. Nichts, was sich nicht durch Änderungen an deinem Programm beheben lässt... |
Re: Bios auslesen funktioniert nicht
Zitat:
|
Re: Bios auslesen funktioniert nicht
Nimm erstmal die Version 3.0 (
![]() |
Re: Bios auslesen funktioniert nicht
Zitat:
|
Re: Bios auslesen funktioniert nicht
Schreib mal in der BiosInfo.dpr vor die Zeile
Delphi-Quellcode:
den folgenden Code
// validate table address
Delphi-Quellcode:
und poste hier den Wert oder einen Screenshot.
Text := Text + 'TableAddress: 0x' + IntToHex(SmEP.TableAddress, 8) + #10;
|
Re: Bios auslesen funktioniert nicht
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
müsste die Zeile nicht so heißen ?
Delphi-Quellcode:
Ohne Intermediate, bekomme ich einen Syntax-Fehler. Die Zeile ergibt den Screenshot 1 im Anhang. Was sagt Dir aber nun diese TableAddress ? Den Screenshot vom anderen Rechner kann ich hier erst morgen früh posten.
Text := Text + 'TableAddress: 0x' + IntToHex(SmEP.Intermediate.TableAddress, 8) + #10;
|
Re: Bios auslesen funktioniert nicht
Zitat:
Zitat:
Um das analysieren zu können, bräuchte ich erstmal einen kompletten Dump des ROM-BIOS... ich schreibe heute Abend/Nacht mal ein Tool dafür. |
Re: Bios auslesen funktioniert nicht
Zitat:
|
Re: Bios auslesen funktioniert nicht
Zitat:
|
Re: Bios auslesen funktioniert nicht
Ok, das habe ich jetzt verstanden. Nur wie bringt mich dieses Dump dann weiter ? Kann ich dann sehen, an welcher Stelle der Manufacture, die Seriennummer u.s.w. steht ?
Edit: Welche Adressen ich brauche um bestimmte Dinge auszulesen ? |
Re: Bios auslesen funktioniert nicht
Hi,
ist ein interessantes Thema... Wie wird denn ein Dump des BIOS ROM erstellt? Gibts dafuer APIs? |
Re: Bios auslesen funktioniert nicht
Zitat:
//Edit: @RWarnecke: Zitat:
Zitat:
![]() Da kannst du dir mal die Definition für diesen Standard herauspicken. @Mackhack: Müsste Nico beantworten, die Frage. Dafür habe ich mich zu wenig mit der Materie beschäftigt. |
Re: Bios auslesen funktioniert nicht
Zitat:
Ich vermute eher, dass das High-Word ignoriert werden kann (also TableAddress $000C000 ist) oder, dass es als Segment-Adresse zu interpretieren ist (also TableAddress $000C3FF7 ist). Aber beantworten kann ich es erst, wenn ich mir die Bios-Daten (in eine Datei gespeichert = Dump) ansehen kann. |
Re: Bios auslesen funktioniert nicht
Zitat:
Zitat:
|
Re: Bios auslesen funktioniert nicht
Um einen Dump zu erstellen, legst du zwei neue Variablen in der Hauptfunktion an
Delphi-Quellcode:
und fügst folgenden Code vor "if SmBiosGetEntryPoint(Dump, SmEP) = nil then" ein:
var
//... FileHandle: THandle; BytesWrite: DWORD; begin
Delphi-Quellcode:
Dann das Programm starten und die BiosDump.dmp hier anhängen oder mir per PN schicken.
//...
FileHandle := CreateFile('BiosDump.dmp', GENERIC_WRITE, 0, nil, CREATE_ALWAYS, 0, 0); if FileHandle <> INVALID_HANDLE_VALUE then try WriteFile(FileHandle, Dump, SizeOf(Dump), BytesWrite, nil); finally CloseHandle(FileHandle); end; |
Re: Bios auslesen funktioniert nicht
Hallo!
Ist es auch möglich über den BiosHelper den Bios-Ram (also den Datenbereich des Bios: ![]() Die Funktion MEM bzw. MEMW gibt es ja meines Wissens unter Delphi nicht mehr. Ich möchte nämlich den gesamten Datenbereich einfach in eine Datei dumpen! Ein Assembler Beispiel würde mir auch schon genügen. mfg core |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:44 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz