Du kannst auch die InjectMe Funktion anpassen:
bei
ReadFile(iFileHandle, pFileMem^, dwFileSize, dwRead, nil);
wird in pFileMem die Datei eingelesen, das kann dein Pointer auf den Speicherbereich der
dll sein.
Innerhalb der Funktion die du bei "pDllMain" angibst, solltest du aber auch nur Funktionen verwenden die bereits im Prozess geladen wurden (und da wohl nur von der kernel32.dll)
uallKernel.CreateImportTable müsste sonst noch angepasst werden, da dort die lokalen Adressen verwendet werden und nicht die vom Zielprozess.
Achja: eine
dll ist ja nichts anderes als ne exe, d.h. du kannst deine Funktionen in die eigene Exe einbauen und dann di eigene exe in den Zielprozess laden, aber mit einem anderen EntryPoint.