Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi was ist die .map datei (https://www.delphipraxis.net/80389-ist-die-map-datei.html)

Andidreas 8. Nov 2006 10:20


was ist die .map datei
 
aloha...

in dem verzeichnis wo ich meine exe erstellen lasse, erstellt delphi mir neuerdings eine .map datei...
was is das??? für was brauch ich die???

Balu der Bär 8. Nov 2006 10:23

Re: was ist die .map datei
 
AFAIR gibt man die .map-Datei mit zu Kunden um bei Fehlern an die nötigen Adressen zu gelangen (aber genauer hab ich keine Ahnung, dass ist das einzigste was mir im Kopf herumschwirrte :mrgreen: ).

Union 8. Nov 2006 10:24

Re: was ist die .map datei
 
In der MAP-Datei werden die Segment-Adressen und Speicherbereiche Deines Programms in lesbarer Form ausgegeben. Sehr schön z.B. , wenn Du eine AV 08005B3 bekommst und sonst nichts. Dann kannst Du den Speicherbereich in der MAP-Datei suchen und findest evtl. den Auslöser.

Eine andere Möglichkeit ist das Auffinden von überflüssigerweise eingebundenen, speicherfressenden Modulen.

Andidreas 8. Nov 2006 10:33

Re: was ist die .map datei
 
ok jetzt nur mal kucken ob ichs kapiert hab...

zum vergleich...
wenn ich auf der as/400 eine programm umwandle/kompeliere, dann krieg ich ne umwandlungsliste wo mein source und noch anderer krust drinne steht, desweitern wir mir neben dem source eine nr. angegeben... bricht ein programm ab, sagt es mir meistens die zeile wo es abgebrochen hat und ich kann in der umwandlungsliste mir die stelle anschauen...

also im delphi ist dann die umwandlungsliste meine .map datei... seh ich das richtig???
es passiert z.b. ein fehler und der gibt mir irgend en wirwar an zahlen und buchstaben aus... wenn ich das nehm kann ich in der map datei nachschauen wo mein fehler passiert ist?!

Union 8. Nov 2006 10:55

Re: was ist die .map datei
 
Nicht ganz. Die Umwandlungsliste ist eher ein Compilierprotokoll (Ausgabe des Compilers, zb. RPG). Das hast Du in der Delphi-IDE integriert - es werden im Message-Tab die Fehlermeldungen ausgegeben und Du kannst die Stellen im Source durch anklicken anspringen und korregieren.

Die MAP-Datei dagegen stellt eine Aufschlüsselung des gelinkten Compilats (=> EXE, DLL) dar.

Reinhard Kern 8. Nov 2006 13:27

Re: was ist die .map datei
 
Zitat:

Zitat von Andidreas
ok jetzt nur mal kucken ob ichs kapiert hab...

zum vergleich...
...

also im delphi ist dann die umwandlungsliste meine .map datei... seh ich das richtig???
es passiert z.b. ein fehler und der gibt mir irgend en wirwar an zahlen und buchstaben aus... wenn ich das nehm kann ich in der map datei nachschauen wo mein fehler passiert ist?!

Hallo,

im Prinzip ist das so, allerdings hochgradig mühsam. Du bekommst eine Fehlermeldung "Fehler an Adresse abc..." und willst wissen, welcher Programmteil?

In der Map-Datei steht u.A. die Anfangsadresse aller Routinen (was drin steht, ist einstellbar, im Fehlerfall am besten gleich alles einschalten). Du must "nur" die grösste Adresse vor der mit dem Fehler suchen, das ist dann die Routine, in der der Fehler aufgetreten ist. Also vereinfacht:

0100 Routine1
0300 Routine2
0400 Routine3 usw. , Fehler bei 316, also ist es Routine2.

Leider tritt der Fehler oft in einer Routine der Laufzeitbibliothek auf, überhaupt ist das Auftreten eines Fehlers sehr oft nicht die Stelle, an der etwas falsch programmiert wurde. Ausserdem sind die Routinen glaube ich alphabetisch sortiert und nicht nach Adresse :(

Gruss Reinhard


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:58 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz