Zitat von
Wusel:
ich hab das jetzt so verstanden, dass beim Wrapping einfach eine
dll ersetzt wird, welche dann nur Zusatzcode von mir enthält.
Jein, da du ja ebenfalls sämtliche Funktionen exportieren musst wie dir original-
dll. D.h. es ist vieeel code um nichts. Jede funktion die du exportierst verweist ja wieder auf die original-
dll, nur, in manche funktionen wie z.B. in der Present-Funktion steht dann noch etwas code von dir.
Zitat von
Wusel:
In beiden Fällen müsst ich ja dann aber den Originalcode wissen *verwirrt*
Welche funktionen exportiert werden ist relativ einfach über die Headerdateien herauszufinden, genauso wie die Parameter dieser Funktionen. Daher ist es eigentlich nur viel Copy&Paste ...
Zitat von
Wusel:
Beim Hooking muss ich diese
dll aber erst injizieren, oder?
Ja, aber dafür beschränkst du dich auf das abfangen von ganz bestimmten funktionen, und musst nicht alle (für dich) unwichtigen funktionen auch noch durchkauen. D.h.
API-Hooking ist eine art arbeitersparnis, dafür muss man dazu aber etwas mehr wissen, als beim
DLL-Wrapping. Aus diesem Grund kann ich dir
API-Hooking empfehlen, denn man lernt dabei einiges, und außerdem ist es kein sinnloses copy&paste, welches du für jede DX-Version wiederholen musst ...
ciao, Philipp