dll aus ressource injecten
-
heya,
ich müsste eine DLL injecten, sie muss aber in der exe sein. Entweder als ressource, oder ich kopiere einfach die bytes der dll in ein array?
Geht das irgendwie? Oder kann ich Code direkt aus der exe ohne dll injecten?
-
Gleiche Seite, wie dort auch empfohlen wurde:
http://www.c-plusplus.net/forum/viewtopic-var-t-is-257681.html
-
Du könntest sie manuell mappen, ist aber eine enorme Frickelarbeit.
-
wozu musst du das? schreib sie aus der resource ins tmp verzeichnis und lad sie von da. LoadLibrary und GetProcAddress selbst schreiben kriegst du nicht hin, wenn du hier fragen musst.
-
ich hab schon gegoogelt aber nix gefunden^^
-
nutz' LoadLibrary.
-
aha danke mit diesem Tipp schaff ich das locker!

-
WinExecc schrieb:
sie muss aber in der exe sein. Entweder als ressource, oder ich kopiere einfach die bytes der dll in ein array?
Geht das irgendwie?Nein. Es gibt keinen Dokumentierten/Supporteten Weg. (Punkt)
Du musst die Datei in auf die Festplatte schreiben und dann von dort laden.
-
WinExecc schrieb:
aha danke mit diesem Tipp schaff ich das locker!

nagut ich will mal nicht so sein. prinzipiell musst du folgende schritte durchführen
1. speicher an der bevorzugten basis adresse reservieren, falls möglich.
2. falls 1. nicht möglich, woanders reservieren
3. pe sections in speicher mappen. müssen in aller regel auf ein vielfaches der seitengrösse ausgerichtet sein.
4. falls 1. nicht möglich war, relocation table auslesen und relozierung durchführen
5. import verzeichnis auslesen und importierte symbole auflösen
6. page protections für die sections setzen
7. dll entry point aufrufen