Warum sind die Argumente für DllMain als const & deklariert?
Und nochwas: Wieso bool als Rückgabewert, wenn du 1 zurückgibst? Sollte zwar nichts ausmachen aber trotzdem, wozu? bool != BOOL. Das Funktionsobjekt, dass du std::thread übergibst kann übrigens irgend eine X beliebige Signatur haben. Muss nicht eine Windows Threadproc sein.
and MainHackFunc is the code that contais tle while(1) loop,and the hotkeys,you can create also another thread to make a "functions "execution" thread".
Warum sind die Argumente für DllMain als const & deklariert?
Und nochwas: Wieso bool als Rückgabewert, wenn du 1 zurückgibst? Sollte zwar nichts ausmachen aber trotzdem, wozu? bool != BOOL. Das Funktionsobjekt, dass du std::thread übergibst kann übrigens irgend eine X beliebige Signatur haben. Muss nicht eine Windows Threadproc sein.
const & spart doch Performance (auch wenn es in diesem Fall nichts ausmachen würde sowie in anderen fällen) oder habe ich da was falsch verstanden?
In der tat, ich bin davon ausgegangen, dass bool == BOOL ist, war der Meinung es währe typedeft.
Zum Thema std::thread, hatte CreateThread im Gedanken, da spielt die "Signatur" ja eine rolle, zumindest laut MSDN.
Du kannst auch ganz normal CreateThread und (bestimmt auch) std::thread nutzen, solange du keinen Jahrzehnte alten Compiler nutzt. Aber dann würdest du auch nicht std::thread nutzen.
Du darfst aber nicht thread.join aufrufen. Der Thread wird erst dann ausgeführt, wenn die DllMain fertig ist. Es ist also eine schlechte Idee, auf den Thread zu warten.
Konstante Referenzen sind nur bei größeren Objekten sinnvoll, sonst wird möglicherweise eine Adresse noch größer als das Adressierte selbst kopiert. Und wenn dir eine Signatur vorgegeben wird, solltest du dich an diese halten.
Du kannst auch ganz normal CreateThread und (bestimmt auch) std::thread nutzen, solange du keinen Jahrzehnte alten Compiler nutzt. Aber dann würdest du auch nicht std::thread nutzen.
Du darfst aber nicht thread.join aufrufen. Der Thread wird erst dann ausgeführt, wenn die DllMain fertig ist. Es ist also eine schlechte Idee, auf den Thread zu warten.
Ah ich verstehe, das war auch der Grund wieso nichts passierte.
Quote:
Konstante Referenzen sind nur bei größeren Objekten sinnvoll, sonst wird möglicherweise eine Adresse noch größer als das Adressierte selbst kopiert. Und wenn dir eine Signatur vorgegeben wird, solltest du dich an diese halten.
Das wusste ich auch noch nicht, von welcher Größenordnung ist hier die rede?
[Frage] Inject DLL via CRT @ EntryPoint 05/03/2012 - General Coding - 9 Replies Hey Epvp,
Ich versuch mich grad an einem simplen Injector, will aber nicht die LoadLibraryA-Methode nutzen.
Wenn ich eine .DLL-Datei in OllyDbg lade (LoadDll.exe), dann breakt Olly am EntryPoint der DLL.
Mir ist es möglich, diesen EntryPoint auszulesen.
Bisherige Vorgehensweise:
Ich allokiere nun Platz im Prozess (ich nenne ihn jetzt mal Game.exe) & schreibe via WriteProcessMemory() die Bytes der DLL in den Prozess.
Wenn ich nun aber via CreateRemoteThread einen Thread an der Adresse...
EntryPoint -> NTMap 10/26/2011 - Diablo 2 - 3 Replies Hi,
hätte da mal ne Frage, ich benutze den NTBot im Moment nur für den Maphack, wie kann ich es ausschalten das er immer chiken used wenn ich am sterben bin ? Hab schon überall wo ich konnte den Wert auf =0 gesetzt, hat aber nichts gebracht :(.
Danke im vorraus.