PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : .DLL



Import-Script
10.10.2003, 11:50
Wie kann man eine .DLL öffnen? Bzw. wie komme ich an den Source Code &#40;wahrscheinlich in C&#41; einer DLL-Datei? <BR> <BR>Gruss <BR>Inscheniör

Import-Script
10.10.2003, 12:44
mit einem Debugger!!! <BR>Nur ob Dir das sonderlich viel nutzt, da revers-engeneering zu betreiben bleibt fraglich. Zumindest den Header mit den Funktionsrümpfen sollte ein guter Debugger können. <BR>Jetzt frag mich leider bitte nicht was ein guter Windows Debugger ist, aber alle preisen es hochgelobt an. Das Problem wird wohl sein, dass in den fertigen DLLs der Debug-Overhead vor der Auslieferung entfernt wurde, rein aus Laufzeitgründen. Ich selbst habe gute Erfahrungen mit &#34;Sourcer&#34;, das ist ein symbolischer Disassembler &#40;eben für DOS&#41;. Was da an Assemblerlisting &#40;er kommentiert das sogar und labelt es&#41; herauskommt ist schon fast erste Sahne. <BR>Wie gesagt halt auf Assemblerebene, aber so Sachen wie &#34;INT Videoint_Char-out&#34; kommen da schon raus. <BR>Das nach gültigen bzw. gebräuchlichen C-Konstrukten aufzuschlüsseln, also Schleifen oder Tabellenzugriffe zu erkennen traue ich modernen Debuggern schon zu, dto.z.B. &#34;Sourcer für Windows&#34; - den hab ich halt leider nicht - dass er Windows API Aufrufe kennt. <BR>Google mal nach! <img src="http://progshop.com/elektronik/diskussion/clipart/smile.gif" border=0>

Import-Script
10.10.2003, 13:44
Stichwort &#34;SoftICE&#34; - Debugger und Disassembler unter Windows. Etwas kompliziert wenn man neu in der Materie ist, allerdings ein mächtiges Teil! <BR> <BR>Gruss, Malte

Import-Script
14.10.2003, 10:37
Hi, <BR> <BR>eine .DLL beinhaltet fertig Compilierte oftwareteile, die von Programmen genutzt werden können. So muss nicht jedes Programm diese immer wieder kehrenden Teile beinhalten bzw. Die Programmteile können schnell auf den neusten Stand gebracht werden, ohne das Programm umzuschreiben. <BR>Reingucken mit blossem Auge ist wenig Sinnwoll. Ob beim &#34;decompilieren&#34; was Sinnvolles rauskommt ist auch fraglich. Kann ja in Assebbler geschrieben werden. Und den Spagetticode zu durchschauen ist sehr schwehr. Auch muss man wissen, was in die DLL reingeht bzw. rauskommt. Aber dazu gibt es Datenbanken. Sonnst würde einem Programierer die DLL ja nichts nützen, wenn er nihts damit anfangen könnte. In den Datenbanken steht natürlich auch drinn, was die Funktionen so drauf haben. Sind es DLLs von Fremdfirmen, dann hat man meist schlechte Karten, da ja nur diese Firma diese DLLs benutzt. <BR> <BR>Gruß <BR>Elmar

Import-Script
14.10.2003, 12:01
@Inscheniör: <BR>Also mit SoftIce ist es durchaus möglich, die funktionen einer DLL getrennt zu disassemblieren. <BR>Nur wie Elmar es bereits erwähnt hat: <BR>Ohne header file &#40;Beschreibung der Funktionen / Parameter&uuml;bergabe/r&uuml;ckgabe&#41; wirst du nach 5 Minuten schizophrän <img src="http://progshop.com/elektronik/diskussion/clipart/wink.gif" border=0> <BR> <BR>Borland Delphi hat &uuml;brigens die Möglichkeit, Headerdateien aus einer DLL zu erstellen. <BR>Allerdings weisst du danach immer noch nicht, f&uuml;r was die Funktionen gut sind und was die Parameter bedeuten. <BR> <BR>Also alles in allem eine &#34;mission impossible&#34;. <BR>Weshalb möchtest du denn ne DLL zerpfl&uuml;cken? <BR>Den text &#34;Start&#34; im Startbutton von Windows durch &#34;Gnaaa&#34; ersetzen? Das machst du leichter dann mit nem Hex-Editor &#42;grins&#42; &#40;sorry f&uuml;r sarkasmus&#41;