Logisch oder? Der String befindet sich ja noch in deiner Anwendung und nicht im Adressraum des Zielprozesses. Guck dir mal das Beispiel
DLL Injection an. Dort wird auch mittels VirtualAllocEx und WriteProcessMemory zuerst der Pfad der
DLL in den Zielprozess geschrieben und dann erst ein RemoteThread auf LoadLibraryA / W mit dem Pfad als entsprechenden Parameter gestartet.
€: Und ja das @ muss auch weg ..