Wie hooke ich hier am Geschicktesten?



  • Hallo!

    Ich muss Outlook Express hooken um zu erkennen, wann Outlook ein neues Fenster öffnet (=> CreateWindowEx hooken).

    Wäre kein Akt.....einfach Code reinjagen der meine DLL lädt, welcher CreateWindowEx in der Mainapp auf meine umlenkt.

    Allerdings bedient sich die Outlookexe nur einer Dll. Lädt diese praktisch per LoadLibrary.

    In dieser DLL die Outlook lädt wird nun CreateWindowEx erst aufgerufen.

    WIe hooke ich nun in dieser DLL am geschicktesten die Verwendung von CreateWindowEx?

    Danke,
    Gruß,
    Kevin





  • Du kannst einfach den IAT Eintrag für CreateWindowExA abändern in der DLL die Outlook Express benutzt.



  • Cooles Teil.

    Damit lassen sich in einer Anwendung sehr einfach API Funktionen ersetzen.

    Aber wie sieht es damit aus, wenn ich in einer DLL, welche von der Anwendung, die ich hooke, geladen wird eine API Funktion hooken will?

    Beispiel:

    Anwendung App.exe hat eine DLL modul.dll.

    Modul.dll besitzt eine Funktion MySleep(DWORD Milli);
    Diese exportierte Funktion ruft die API Funktion Sleep(2*Milli) auf. Lässt also doppelt so lange schlafen.

    App.exe ruft beim Start die Funktion MySleep mit dem Parameter 500 auf.

    Nun will ich eine Anwendung Hook.exe schreiben, welche dafür sorgt, dass beim Sleep in der modul.dll der zu schlafende Wert geteilt wird.

    Ist das mit Detours möglich? Habe in der Doku dazu nichts gefunden.

    Gruß,
    Kevin



  • Hmm ich hab gerade für ein anderes Borad ein Tutorial übers APIHooking(inline)
    geschrieben,vielleicht kannst du es gebrauchen!
    Hier der Link:
    http://xalonsspace.xa.funpic.de/api-hooking.html
    Du musst einfach so vorgehen wie beim API-Hooking,die Adresse also mit
    LoadLibrary und GetProcAddress auslesen.

    @all:Würde mich über Feedback freuen da das Tut erst ein paar Stunden alt ist 😉

    Xalon



  • Meine Lösung ist hier die effektivste und beste da der Aufwand am kleinsten ist, man keine extra Bibliothek benötigt und meine Lösung in 95% der Fälle zum Erfolg führt, hier auf jeden Fall. Was willst du überhaupt machen Surkevin?


Anmelden zum Antworten