Frage zu MS Detours 2.1
-
Tag'chen,
Ich benutze die Detours 2.1 Library und arbeite gerade mit einem Tutorial, welches ebenfalls Detours benutzt. Wenn ich eine Function detour'n möchte mache ich folgendes in der DllMainDetourTransactionBegin( ); DetourUpdateThread( GetCurrentThread( ) ); DetourAttach/Detach( &(PVOID&)Real_func, Mine_Func); DetourTransactionCommit( );also halt mit Functionspointern. In dem Tut wird es allerding anders gemacht und zwar mit
-DETOUR_TRAMPOLINE
-DetourFunctionWithTrampoline
-DetourRemovediese Functionen scheinen aber gar nicht in der 2.1 Version implentiert zu sein? Sind das noch alte Funktionen aus der 1.5 Version von Detours? Und wenn, ja sind die beiden Methoden eqivalent zu einander?
Gruß Tobi.
-
Ja, das sind noch alte Funktionen aus 1.5.
Dein Codebeispiel wäre für 2.1.MfG
-
Ok,
Also ich will nämlich die Direct3D8 hook'n allerdings bekomme ich da irgendwie immer einen Fehler sobald ich den fremden Process mit
DetourCreateProcessWithDll starten will um dann halt alles zu detour'n. Das ist der Fehler den ich bekomme, wenn ich versuche eine D3D8 Anwendung zu hook'n. kann das an detours liegen?--------------------------- Lighting: Lighting.exe - Fehler in Anwendung --------------------------- Die Anweisung in "0x7c928fea" verweist auf Speicher in "0x00000010". Der Vorgang "written" konnte nicht auf dem Speicher durchgeführt werden. Klicken Sie auf "OK", um das Programm zu beenden. Klicken Sie auf "Abbrechen", um das Programm zu debuggen. --------------------------- OK Abbrechen ---------------------------EDIT:
Ok es liegt nicht an Detours.Gruß Tobi
-
Sondern?
-
Vielleicht hilft dir das:
http://rhonkar.kilu.de/D3D_Starterkit_v3.0b.zipMfG