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
[D3D11] Overlay... Wie?
- dot
- Establishment
- Beiträge: 1745
- Registriert: 06.03.2004, 18:10
- Echter Name: Michael Kenzel
- Kontaktdaten:
Re: [D3D11] Overlay... Wie?
Hooking ist das Stichwort. Gemacht hab ich's noch nie, aber damit solltest du bei google eigentlich genug finden.
Re: [D3D11] Overlay... Wie?
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.
- Artificial Mind
- Establishment
- Beiträge: 802
- Registriert: 17.12.2007, 17:51
- Wohnort: Aachen
Re: [D3D11] Overlay... Wie?
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.
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?
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 ?
Aber die Idee ist klasse.
Edit: D.h. ihr habt in eurem Programmverzeichnis eine eigene d3d11.dll ?