| |
|
|
Matthias Arlt | Hat schon jemand versucht (und es auch hinbekommen), direkt Funktionen einer DLL aufzurufen, die nur als Ressource in bspw. der Runtime, aber nicht phys. als Datei vorliegt ? Alle meine Experimente nach dem Schema:
-FindResorce / LoadResource -FileMapping -GetProcAdress / Call
schlagen bislang leider fehl...
Prinzipiell sollte da ja möglich sein ?
Es wäre schön, wenn mir da jemand auf die Sprünge helfen könnte.
Danke vorab und Gruss Matthias |
|
|
| WinXP SP2, Win7 - XProfan 10/11/FreeProfan32 - Xpia | 03.12.2006 ▲ |
|
|
|
|
| Eigendlich steht hier alles: [...] |
|
|
| |
|
|
|
H.Brill | Sowas würde mich auch mal interessieren. Im Moment includiere ich meine DLLs mit dem XProfan Datengenerator von Frank Abbing, speichere sie beim Start temporär auf Platte und lösche sie bei Programmende. Hab auch immer das Problem, daß meine User die DLL ständig löschen und ins System32 oder Windows - Verzeichnis möchte ich sie auch nicht unbedingt schreiben.
Irgendwie gehts auch mit DLL - Injection. Das hab ich aber nur mal gelesen. Da wird mit OpenProcess(), VirtualAlloc() WriteProcessMemory() und Create- RemoteThread() gearbeitet.
Vielleicht kann dir aber TS-Soft, der hier auch ab und an im Forum weilt, weiter helfen. Hab da eine schöne Resourcen - Library (UDRes) für PureBasic von ihm. Die kann sogar gepackte Resourcen erstellen und wieder laden. Vielleicht macht er mal eine .PCU - Datei (compilerte UNIT) , wenns machbar ist. Den Quelltext braucht er dann ja nicht zu veröffentlichen. |
|
|
| Benutze XPROFAN X3 + FREEPROFAN Wir sind die XProfaner. Sie werden von uns assimiliert. Widerstand ist zwecklos! Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.
Was die Borg können, können wir schon lange. | 04.12.2006 ▲ |
|
|
|
|
| Was Thomas da nutzt stammt leider nicht aus seiner Feder. Tatsächlich wir eine DLL im Speicher gehalten und dort auch ausgeführt. Ich kann mir nur grob vorstellen wie das Funktioniert ohne die nötigen Apis dafür hinpinseln zu können.
DLL-Injection ist aber auch was anderes - hat eigendlich damit nix zu tun was Matthias gerne hätte.
IMHO kann die LoadLibrary(ex?) API aus Ressourcen DLLs anladen - und die Funktionsadressen kann man auch beziehen. Habe aber oben schon den nötigen MSDN-Link geschrieben. Vielleicht schreibt ja mal einer ein Beispiel. ;) |
|
|
| |
|
|
|
H.Brill | Ja, den Link hatte ich auch gesehen. Weiß bloß nicht wie es mit LoadLibraryEX() genau gehen soll. Da wird doch als erster Parameter auch eine Datei erwartet. Wie dann dw_flag (LOAD_LIBRARY_AS_IMAGE_RESOURCE ) zu nutzen ist, weiß ich nicht.
Evtl. hat ja jemand einBeispiel, wie man sowas dann z. B. aus einem Bereich# lädt. Meine dann sowas : ~LoadLibraryEx(Bereich#, handle&, LOAD_LIBRARY_AS_IMAGE_RESOURCE).
Ich hätte gern so was, wo ich nichts vorher auf Platte/Disk speichern muß. |
|
|
| Benutze XPROFAN X3 + FREEPROFAN Wir sind die XProfaner. Sie werden von uns assimiliert. Widerstand ist zwecklos! Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.
Was die Borg können, können wir schon lange. | 04.12.2006 ▲ |
|
|
|
|
| Verstehe! Mit LOAD_LIBRARY_AS_IMAGE_RESOURCE hat das aber nix zu tun.Wie das geht steht hier: [...]
Ich kann mich der Sache nicht annehmen da ich grad mit etwas anderem beschäftigt bin. Kann mir aber vorstellen später mal ne Unit draus zu machen. |
|
|
| |
|
|