Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > C/C++
You last visited: Today at 16:46

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[C++]EndScene hook

Discussion on [C++]EndScene hook within the C/C++ forum part of the Coders Den category.

Closed Thread
 
Old   #1
 
.BritainAndy's Avatar
 
elite*gold: 0
Join Date: Jan 2010
Posts: 1,385
Received Thanks: 1,006
[C++]EndScene hook

Hallo Community,
ich habe ein Problem mit dem Thema 'EndScene' hooking.
Ich habe eine DLL geschrieben (Source unten).
Wenn ich diese in z.b. Css injecte um zu gucken ob bis jetzt alles richtig ist,
sprich ob das game crasht oder nicht.
Jedoch sagt Winject beim injecten der DLL "Both injection methods failed, target is protectet?".
Wenn ich jedoch eine DLL injecte, die einfach nur ne MSGBOX ausgibt, klappt es wunderbar.
Nun ist meine Frage, liegt der Fehler im Source meiner DLL oder ist Counterstrike:Source gegen D3D9 hooks protectet?
Es gibt ja viele Chamhacks usw. für Cs:s, daher würde ich letzteres ausschließen.
Hier der Source der DLL.
Bitte auch sagen, wenn ich Zeilen falsch auskommentiert habe.
Habs versucht leicht ausdrücken was im groben passiert, damit meine Freunde das auch verstehen.

Danke an Ende! für die Hilfe, der jetzt leider offline ist weshalb ich hier frage :>





Und bitte unterlasst nicht qualifizierte Kommentare -.-"
.BritainAndy is offline  
Old 01/03/2011, 16:48   #2


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,904
Received Thanks: 25,394
Die D3D9 und ggf. die D3Dx9 Dlls müssen im gleichen Verzeichnis wie deine Dll sein.
Dass Winject sie nicht injecten kann, liegt daran, dass Windows die Dlls, die die nötigen Funktionen exportieren, nicht finden kann.
Also gehst du in den Ordner deines D3D SDKs, gehst in den Ordner redist und suchst das Package mit den Redistributable Dlls, die zu deinem SDK passen und packst sie in das Verzeichnis.

Eine Frage:
Du kannst kaum C++ und willst D3D hooken wtf?
MrSm!th is offline  
Thanks
1 User
Old 01/03/2011, 17:06   #3
 
.BritainAndy's Avatar
 
elite*gold: 0
Join Date: Jan 2010
Posts: 1,385
Received Thanks: 1,006
Danke für die Antwort.
Mich interessiert Detouring/hooking halt.
Und wollte mich dann daran wagen.
Ich denke man lern am besten wenn man ins kalte wasser geschmissen wird.
Klar, mir fehlen gewisse Sachen, die kann ich dann wenn ich sie mir anschaue und "studiere" viel besser verstehen, wenn ich sie vorher schonmal gebraucht habe
.BritainAndy is offline  
Old 01/03/2011, 17:53   #4


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,904
Received Thanks: 25,394
Dann mal viel Glück lol

Außerdem ist das falsch:

Quote:
//Pointer der EndScene ist das 42te Array element aus der Originalen EndScene function (im Inet gefunden)
Die Adressse von EndScene ist das 42. Element in der VTable, das ist ein Array von Funktionspointern, das ein Objekt mit sich rumschleppt; da sind alle virtuellen Funktionen drin gespeichert.

An den Kommentaren sieht man eigentlich schon, wie viel du verstanden hast und wie viel du höchst wahrscheinlich auf diese Weise verstehen wirst.
MrSm!th is offline  
Old 01/03/2011, 18:06   #5
 
elite*gold: 0
Join Date: Mar 2008
Posts: 747
Received Thanks: 245
Quote:
Originally Posted by .BritainAndy View Post

Und bitte unterlasst nicht qualifizierte Kommentare -.-"
Dann unterlass doch einfach nicht qualifizierte fragen.

Quote:
Ich denke man lern am besten wenn man ins kalte wasser geschmissen wird.
Coole idee schicken wir doch alle Kindergartenkinder auf die Uni

Quote:
Originally Posted by .BritainAndy View Post
Klar, mir fehlen gewisse Sachen, die kann ich dann wenn ich sie mir anschaue und "studiere" viel besser verstehen, wenn ich sie vorher schonmal gebraucht habe
Weil das so gut funktioniert fragst du auch wegen jeden misst nach.
Akorn is offline  
Thanks
2 Users
Old 01/03/2011, 18:13   #6
 
.BritainAndy's Avatar
 
elite*gold: 0
Join Date: Jan 2010
Posts: 1,385
Received Thanks: 1,006
Alles klar akorn.
Ein einfacher satz wie

Quote:
man kann funktionen nicht außerhalb von der mainfunktion oder anderen funktionen aufrufen
lässt sich zwar compilen, wird aber immer 0 returnen
Hätte schon genügt. Habs im eifer des gefechts übersehen.
.BritainAndy is offline  
Old 01/04/2011, 14:01   #7
 
.BritainAndy's Avatar
 
elite*gold: 0
Join Date: Jan 2010
Posts: 1,385
Received Thanks: 1,006


so, nun daran das Pattern nichts finden will.
Muss andere Methoden nehmen oder ne andere Directx version

closerequest
.BritainAndy is offline  
Old 01/04/2011, 15:51   #8


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,904
Received Thanks: 25,394
wenn ich mir den code so ansehe, dann denke ich direkt daran, woran ich schon ein paar posts weiter oben gedacht hab:

das kommt davon, wenn man sich irgendwas zusammenkopiert.

du brauchst keine andere hooking methode, das ist schwachsinn.
ist klar, bei allen leuten funktioniert es und bei dir gerade nicht
außerdem brauchst so oder so keine neue hooking methode, sondern nur eine andere, um die EndScene adresse zu finden.
dein SEH müll da im code hookt EndScene auf ne andere weise, aber die Adresse hast du ja eh nicht....außerdem hat SEH sehr starke einschränkungen und wenn ich das so sehe merke ich, dass du sie nicht kennst.

der ExceptionHandler muss im selben thread gesetzt sein; wenn du das in deiner dll main machst, bewirkt das gar nichts.


und wenn ich den code nochmal sehe....ganz ernsthaft, du kannst die sprache scheinbar kein bisschen, also lass es einfach!
MrSm!th is offline  
Thanks
1 User
Closed Thread


Similar Threads Similar Threads
D3D EndScene Hook Tutorial Frage
10/03/2011 - General Coding - 5 Replies
Hey, ich habe mir das Tutorial von purple.d1amond angeschaut, und habe als Test ( da ich noch nie ne D3D Funktion gehooked habe ) mal den Source aus dem Tut abgetippt und wollte ihn testen. Ich habe die .dll anschließend mit Winject in den Prozess von wow injected. Doch es passiert nichts, da wo eigentlich ein Rechteck sein sollte ( oben Rechts ) ist nichts :D ) Habe ich was falsch gemacht ? : #include "stdafx.h" #include <windows.h> #include <cstdio> #include <d3d9.h> #include...
D3D Hook Frage (Endscene)
10/18/2010 - General Coding - 9 Replies
Hallo, Hab mir mal ein Tutorial zu dem Thema angeschaut. Scheint alles relativ einfach zu sein. Allerdings finde ich in meiner D3D9.dll kein Endscene usw. Ich bin scheinbar nicht der einzige mit dem Problem? :confused: Zumindest wenn ich mir das Forum anschau woher das Tutorial kommt. Aber dort kennt scheinbar auch niemand eine Lösung. Woran liegt das? Oder hat mir jemand ein paar neuere Tutorials zu dem Thema? (Gerne auch englisch). Grüße.
d3d9.dll endscene
10/09/2010 - General Coding - 38 Replies
Huhu, In meiner d3d9.dll scheint es keine endscene zu geben, ich habe mit IDA unter Functions den String "endscene" gesucht und er sagt mir jedes mal "string not found...". Ich hab mir jetzt auch schon eine aus'm Jahr 2002 geladen und IDA findet da komischer weiße auch nichts. Hat wer vllt nen lösungs vorschlag?
d3d9.dll EndScene ?
07/19/2010 - General Coding - 7 Replies
Hey, ich wollte mal fragen ob es noch möglich ist die Funktion EndScene aus der d3d9.dll zu hooken. Weil bei mir findet IDA die Funktion EndSene nicht... Ich hab Windows 7 64 bit Professional. (In der d3d10.dll ist auch keine Funktion die EndSene heißt) mfG



All times are GMT +2. The time now is 16:46.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.