Seite 1 von 1

[D3D11] Overlay... Wie?

Verfasst: 02.08.2012, 12:31
von DomiOh
Hallo,

wie kann man ein Direct3D Overlay (bevorzugt D3D10/D3D11) programmieren? (so wie Fraps, Steam, Teamspeak etc.)
Es scheint via Hooking zu funktionieren.
Hat das mal jemand gemacht? Ohne Detours oder EasyHook - einfach von hand?
(für 32 und 64bit)

Wenn ja, wäre ich happy wenn mir jemand ein wenig helfen würde.

Gruß,
Domi

Re: [D3D11] Overlay... Wie?

Verfasst: 02.08.2012, 12:34
von dot
Hooking ist das Stichwort. Gemacht hab ich's noch nie, aber damit solltest du bei google eigentlich genug finden.

Re: [D3D11] Overlay... Wie?

Verfasst: 02.08.2012, 12:38
von DomiOh
Tja, genau da liegt das Problem. Hooking schön und gut, aber diese "Tutorials" sind teils veralted, nicht mehr auf D3D11 basierend (meist nur auf D3D9), die Lösungen werden von einigen Anti-Cheat-Engines als Cheating "detected" und viele basieren eben auf Dertours und EasyHook. Bei beiden gefällt mir die Lizenz nicht besonders.

Re: [D3D11] Overlay... Wie?

Verfasst: 02.08.2012, 12:40
von Artificial Mind
Ist die Lizenz wirklich dein Hauptproblem beim Hooking?

Also wir haben es über eine Proxy-Dll gelöst, sprich: die komplette d3d11.dll durch eine eigene ersetzen, die im Wesentlichen alle Aufrufe an eine gespeicherte Original-Dll weiterleitet und nur bei den interessanten Funktionen was verändert. Ist etwas aufwendiger, dafür aber wesentlich schwerer zu detecten und man ist auch direkt bei Programmstart geladen.

Re: [D3D11] Overlay... Wie?

Verfasst: 02.08.2012, 12:46
von DomiOh
Gute Idee. Das Problem dabei ist, dass ich gar nicht wüsste wie ich das Anfange...
Aber die Idee ist klasse.

Edit: D.h. ihr habt in eurem Programmverzeichnis eine eigene d3d11.dll ?