Hallo Gemeinde,
ich bin es schon wieder und habe eine -zumindest für mich- sehr knifflige Frage.
Auch hier ist es mir wieder egal, ob man mir den Tipp/Code als VB6, VB2008 oder VB2010 vorgibt
bzw. sich darauf bezieht. Links, Tutorials, Codes und Beispiele sind selbstverständlich willkommen.
Problemstellung/-beschreibung:
Als Anfänger habe ich mich hier und da mit VB6/VB2008/VB2010 Tipps, Tricks und Beispielen
beschäftigt. Nun hänge ich wieder einmal beim Tipp xyz, da dieser unvollständig erstellt wurde
und/oder eben leider nicht alle Varianten einbezieht. Da ich ein neugieriger Kerl bin, bitte ich um Auflösung.
Mir geht es einfach darum, eine .dll zu laden/öffnen und alle enthaltenen Funktionen sauber aufzulisten.
Bei VB6 bzw. VisualStudio2008/2010 lagen ja bereits Tools dabei, um dies bequem per CMD ausführen zu lassen. Alles schön und gut, aber ich will wissen "wie" und v.a. möchte ich eine schicke GUI haben
und es selbstständig umsetzen.
1.) Irgendeine DLL auswählen und dann in einer Listbox alle Funktionen auflisten.
Zusatzfunktionen (kein muss!) =>
(Wäre natürlich Knorke, wenn dies dann von 1-x geordnet wäre und zudem noch
die Address, relative Adress, Name, type (export/import), EntryPoint, Ordinal, Hint
usw. daneben aufgelistet wären)
Soweit sollte dies ja kein Problem sein (für mich schon), aber:
Wie schaut es aber mit "undecorated/decorated c++ function names" aus?
Wie kann ich "alle" Funktionen einlesen und sowohl in "undecorated" als auch in "decorated" anzeigen lassen?
Auch hier gibt es diverse Kommandozeilen-Tools, aber mir geht es um die GUI und v.a.
um den SourceCode => "Wie?"
Nächstes Problem:
Nehmen wir einmal an, dass ich diverse Funktionen vorliegen habe
(undecorated, decorated, Klarnamen) und einfach nur in einer x-beliebigen DLL prüfen möchte,
ob diese Funktion vorhanden ist und unterstützt wird. Wie geht dies vonstatten?
Online habe ich "SourceCode" gefunden, aber dieser Code unterstützt "nur" Klarnamen.
Soll heißen: undecorated + decorated Funktionen, die so 1:1 eingegeben werden, werden gar nicht erkannt!
Wie geht dies? Code, Beispiele und v.a. Erklärungen!
Vielleicht mache ich ja einen Fehler, aber wie kann man dies umsetzen,
dass alles "angenommen" wird? Wie prüft man, ob Funktion (normal, decorated, undecorated) vorhanden ist?
Da ich noch ein Anfänger bin, bitte ich neben Codebeispielen auch um eine Erklärung!
Ich meine mit normal, undecorated, decorated FOLGENDES:
(Für den Fall, dass ich mich falsch ausgedrückt habe)
normal:
TestFunktion1
decorated:
??0TestFunktion1@@QAE@ABV0@@Z
undecorated:
private: unsigned long __thiscall TestFunktion1::AddDataToRecycledBuffers(unsigned char const *,unsigned long)
Nur erfunden, um es zu verdeutlichen!
Danke
ich bin es schon wieder und habe eine -zumindest für mich- sehr knifflige Frage.
Auch hier ist es mir wieder egal, ob man mir den Tipp/Code als VB6, VB2008 oder VB2010 vorgibt
bzw. sich darauf bezieht. Links, Tutorials, Codes und Beispiele sind selbstverständlich willkommen.
Problemstellung/-beschreibung:
Als Anfänger habe ich mich hier und da mit VB6/VB2008/VB2010 Tipps, Tricks und Beispielen
beschäftigt. Nun hänge ich wieder einmal beim Tipp xyz, da dieser unvollständig erstellt wurde
und/oder eben leider nicht alle Varianten einbezieht. Da ich ein neugieriger Kerl bin, bitte ich um Auflösung.
Mir geht es einfach darum, eine .dll zu laden/öffnen und alle enthaltenen Funktionen sauber aufzulisten.
Bei VB6 bzw. VisualStudio2008/2010 lagen ja bereits Tools dabei, um dies bequem per CMD ausführen zu lassen. Alles schön und gut, aber ich will wissen "wie" und v.a. möchte ich eine schicke GUI haben
und es selbstständig umsetzen.
1.) Irgendeine DLL auswählen und dann in einer Listbox alle Funktionen auflisten.
Zusatzfunktionen (kein muss!) =>
(Wäre natürlich Knorke, wenn dies dann von 1-x geordnet wäre und zudem noch
die Address, relative Adress, Name, type (export/import), EntryPoint, Ordinal, Hint
usw. daneben aufgelistet wären)
Soweit sollte dies ja kein Problem sein (für mich schon), aber:
Wie schaut es aber mit "undecorated/decorated c++ function names" aus?
Wie kann ich "alle" Funktionen einlesen und sowohl in "undecorated" als auch in "decorated" anzeigen lassen?
Auch hier gibt es diverse Kommandozeilen-Tools, aber mir geht es um die GUI und v.a.
um den SourceCode => "Wie?"
Nächstes Problem:
Nehmen wir einmal an, dass ich diverse Funktionen vorliegen habe
(undecorated, decorated, Klarnamen) und einfach nur in einer x-beliebigen DLL prüfen möchte,
ob diese Funktion vorhanden ist und unterstützt wird. Wie geht dies vonstatten?
Online habe ich "SourceCode" gefunden, aber dieser Code unterstützt "nur" Klarnamen.
Soll heißen: undecorated + decorated Funktionen, die so 1:1 eingegeben werden, werden gar nicht erkannt!
Wie geht dies? Code, Beispiele und v.a. Erklärungen!
Vielleicht mache ich ja einen Fehler, aber wie kann man dies umsetzen,
dass alles "angenommen" wird? Wie prüft man, ob Funktion (normal, decorated, undecorated) vorhanden ist?
Da ich noch ein Anfänger bin, bitte ich neben Codebeispielen auch um eine Erklärung!
Ich meine mit normal, undecorated, decorated FOLGENDES:
(Für den Fall, dass ich mich falsch ausgedrückt habe)
normal:
TestFunktion1
decorated:
??0TestFunktion1@@QAE@ABV0@@Z
undecorated:
private: unsigned long __thiscall TestFunktion1::AddDataToRecycledBuffers(unsigned char const *,unsigned long)
Nur erfunden, um es zu verdeutlichen!
Danke