Veröffentlicht 22. Februar 200520 j Hallo Leute, weiß jemand ein programm, bzw. gibt es sowas überhaupt, wo man alle Methoden (mit Parametern, und rückgabewerte) einer beliegiben dll - datei herausfinden kann?? dass man dem progrmam also nur eine *.dll datei gibt, und die listet einam alle methoden auf? Evtl weiß jemand was. Ciao SwordMaster
22. Februar 200520 j Bei normalen DLLs: nur exportierte Namen (siehe Tool Dependency Walker). Bei .NET Assemblies: z.B. per Reflection.
22. Februar 200520 j Autor Hab Dependency Walker gerade ausprobiert..... ist echt cool aber wenn ich dann die Parameter brauche um die funktionen auch aufzurufen muss ich im internet suchen und hoffen dass ich den header der funktion irgendwo finde? seh ich das richtig? Danke SwordMaster
22. Februar 200520 j Ja. Man kann die Parameter beliebiger Funktionen aus beliebigen DLLs nicht einfach so ermitteln. Das geht nur bei .NET Assemblies (.NET DLLs) aufgrund der darin enthaltenen Metadaten. Mit COM-Objekten geht es IMO auch (muss ja).
23. Februar 200520 j aber wenn ich dann die Parameter brauche um die funktionen auch aufzurufen muss ich im internet suchen und hoffen dass ich den header der funktion irgendwo finde?Du solltest sowieso keine DLL ohne die dazugehörige Dokumentation benutzen. seh ich das richtig?Bei C-Funktionen hast du tatsächlich keine Möglichkeit, die Anzahl und Typen der Parameter zu ermitteln. Für C++ ist das prinzipiell möglich. Die Compiler arbeiten die Parameter in den Namen der Funktion ein (Name Decoration). Das sieht dann z.B. so aus: ?AddFolder@CCollection@@QAEPAVCFolder@@PBDKPAKG@Z Das kann man prinzipiell entschlüsseln. Leider kocht da jeder Compilerhersteller sein eigenes Süppchen.
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.