Discussion:
Herausfinden, welche Funktionen in einer DLL sind
(zu alt für eine Antwort)
Marvin Massih
2004-02-03 11:55:22 UTC
Permalink
Hallo,

ich möchte gern die Kamera des XDA II aus einem ActiveX-Control
ansprechen.
Wenn ich CreateProcess("Camera.exe") aufrufe, wird der IE beendet.
Daher dachte ich mir, dass ich vielleicht irgendwie heruasbekommen
kann, welche Funktionen in der camera.dll sind und diese dann
irgendwie aufrufen kann.

Kann mir da jemand helfen?
Danke im Voraus.

Gruß

Marvin
Ralf Pichocki
2004-02-03 12:44:31 UTC
Permalink
Hi, Marvin!
Post by Marvin Massih
Daher dachte ich mir, dass ich vielleicht irgendwie heruasbekommen
kann, welche Funktionen in der camera.dll sind und diese dann
irgendwie aufrufen kann.
Du könntest beispielsweise die Dll mit dem Programm "depends.exe"
untersuchen, die zu Deinem VS gehört. Dann kannst Du nicht nur sehen, welche
Funktionen exportiert werden, sondern auch die von dieser Dll wiederum
benutzten anderen Dlls.
Allerdings kennst Du dann nur die Namen der Funktionen, nicht ihre
Parameter-Signatur. Hierfür gibt es - befürchte ich - keine Lösung...
--
Gruß, Pi (Ralf Pichocki).
Marvin Massih
2004-02-03 19:17:27 UTC
Permalink
Hi Ralf,

danke für die Antwort.
Post by Ralf Pichocki
Du könntest beispielsweise die Dll mit dem Programm "depends.exe"
untersuchen, die zu Deinem VS gehört. Dann kannst Du nicht nur sehen, welche
Funktionen exportiert werden, sondern auch die von dieser Dll wiederum
benutzten anderen Dlls.
Ah, schick :-).
Post by Ralf Pichocki
Allerdings kennst Du dann nur die Namen der Funktionen, nicht ihre
Parameter-Signatur. Hierfür gibt es - befürchte ich - keine Lösung...
Hm :-(.
Kann man Camera.exe vielleicht irgendwie debuggen und sehen, welche
Parameter übergeben werden?

Gruß

Marvin
Ralf Pichocki
2004-02-04 07:36:32 UTC
Permalink
Hallo, Marvin!

<...>
Post by Marvin Massih
Post by Ralf Pichocki
Allerdings kennst Du dann nur die Namen der Funktionen, nicht ihre
Parameter-Signatur. Hierfür gibt es - befürchte ich - keine Lösung...
Hm :-(.
Kann man Camera.exe vielleicht irgendwie debuggen und sehen, welche
Parameter übergeben werden?
Da bin ich kein Spezialist, aber ich befürchte, dass das zumindets nicht
*einfach* geht.
Wenn Nachrichten verschickt werden, kannst Du die mit dem "Spy" (ebenfalls
in "Tools") beobachten, reine Funktionsaufrufe in eine Dll "bekommst Du
nicht mit", befürchte ich zumindest. Gibt denn der Hersteller keine Info
über eine API?
--
Gruß, Pi (Ralf Pichocki).
Marvin Massih
2004-02-04 12:04:53 UTC
Permalink
Post by Ralf Pichocki
Da bin ich kein Spezialist, aber ich befürchte, dass das zumindets nicht
*einfach* geht.
Ich hab da mal mit "Attach to process" rumgespielt... es scheitert
schon daran, dass er DLLs verlangt, die ich auf dem Gerät gar nicht
finden kann.
Post by Ralf Pichocki
Wenn Nachrichten verschickt werden, kannst Du die mit dem "Spy" (ebenfalls
in "Tools") beobachten, reine Funktionsaufrufe in eine Dll "bekommst Du
nicht mit", befürchte ich zumindest.
Scheint so :-(.
Post by Ralf Pichocki
Gibt denn der Hersteller keine Info
über eine API?
Das ist so ein OEM-Ding, das O2, T-Online und noch zig andere Firmen
unter verschiedenen Namen verkaufen.
Den Hersteller (HTC) habe ich im Netz nicht definitiv ausmachen
können.
Der Cam-Hersteller (IA Style) meinte, ich solle mich an O2 wenden -
mal schauen, was daraus wird.

Auf xda-developers.com fluchen sie alle darüber.

Trotzdem danke für die Unterstützung.
Stephan Roth
2004-02-04 12:26:01 UTC
Permalink
Hallo Marvin,
Post by Marvin Massih
[...]
Post by Ralf Pichocki
Wenn Nachrichten verschickt werden, kannst Du die mit dem "Spy"
(ebenfalls in "Tools") beobachten, reine Funktionsaufrufe in
eine Dll "bekommst Du nicht mit", befürchte ich zumindest.
Scheint so :-(.
Also, der "dependency walker/Depends" (Auch eine Beigabe als Tool beim
Visual Studio 6.0) scheint das irgendwie zu können - zumindest behauptet er
das:

| "Export Function List View displays the list of export
| functions for the currently selected module..."

(Zitat aus der Hilfe)

Aber fragt mich bitte nicht *wie* er das macht!

MfG
Stephan
Ralf Pichocki
2004-02-04 12:44:13 UTC
Permalink
Hi!
Post by Stephan Roth
Also, der "dependency walker/Depends" (Auch eine Beigabe als Tool beim
Visual Studio 6.0) scheint das irgendwie zu können - zumindest behauptet er
| "Export Function List View displays the list of export
| functions for the currently selected module..."
Ja, aber das sind nur die Funktions-*namen*, nicht die Parameter-Signatur.
--
Gruß, Pi (Ralf Pichocki).
Hans J. Ude
2004-02-04 13:02:30 UTC
Permalink
Post by Marvin Massih
Hm :-(.
Kann man Camera.exe vielleicht irgendwie debuggen und sehen, welche
Parameter übergeben werden?
Für diese Art von reverse engineering ist der Watcom Debugger ganz gut
geeingnet. Jedenfalls viel besser als VS. Den gibt's frei irgendwo im
Netz. Schau mal unter www.openwatcom.org

Hajü
Marvin Massih
2004-02-04 21:21:52 UTC
Permalink
Post by Hans J. Ude
Für diese Art von reverse engineering ist der Watcom Debugger ganz gut
geeingnet. Jedenfalls viel besser als VS. Den gibt's frei irgendwo im
Netz. Schau mal unter www.openwatcom.org
Danke für den Tipp. Funktioniert das auch mit PocketPC-Dateien?

Loading...