Verbindung zwischen injizierter DLL und externer Anwendung

10/26/2011 09:07 HardCore.1337#1
Hallo,
ich bin letztens auf ein Problem gestossen das ich nicht selber lösen kann.

Ich habe eine DLL in programmiert und sie in den Ziel Prozess injiziert. Diese DLL soll Spielinformationen (Leben, Muni, direkter Funktionsaufruf...) mittels Pointer auslesen und an eine externe (von mir programmierte) Applikation senden. Diese Applikation wertet die Daten nun aus und steuert den Bot.

Nun ist die Frage, wie ich die Verbindung zwischen der Dll und der Anwendung herstellen kann. Ich Programmiere mit C (kein C++!)

Danke :)
10/26/2011 09:17 Demon-777#2
I am not sure but maybe named pipes?
Check this page: [Only registered and activated users can see links. Click Here To Register...]
10/26/2011 09:56 XxharCs#3
Quote:
Originally Posted by HardCore.1337 View Post
Hallo,
ich bin letztens auf ein Problem gestossen das ich nicht selber lösen kann.

Ich habe eine DLL in programmiert und sie in den Ziel Prozess injiziert. Diese DLL soll Spielinformationen (Leben, Muni, direkter Funktionsaufruf...) mittels Pointer auslesen und an eine externe (von mir programmierte) Applikation senden. Diese Applikation wertet die Daten nun aus und steuert den Bot.

Nun ist die Frage, wie ich die Verbindung zwischen der Dll und der Anwendung herstellen kann. Ich Programmiere mit C (kein C++!)

Danke :)
Ich bin mir jetzt nicht so ganz sicher wie, aber du könntest es so versuchen das die externe Applikation wenn sie gestartet wird, die dll un-injectet und sich dann die Infos holt. (weiß jetzt nicht genau ob das so geht)

Für Un-Inject verwendet man FreeLibrary

hoffe konnte dir bissl helfen (:
10/26/2011 10:01 HardCore.1337#4
Hey, danke für deine Antwort :)

Also mit der uninjection (heißt das so?) finde ich nicht so toll, da bestimmte Infromationen die gesamte Zeit überwacht werden müssten. Also die DLL muss schon im Prozess bleiben ;)
10/26/2011 13:00 Xenox3#5
Für was gibt es die connect und send Funktionen ?

Man kann sie nicht nur über das internet verwenden sondern auch lokal.

Einfach Dll und Exe, als ob sie server und client wären, verbinden und Daten hin und her senden.

oder hab ich dein Problem falsch verstanden?
10/26/2011 14:08 HardCore.1337#6
Deine Lösung werde ich mal probieren wenn ich zu Hause bin. Das wäre mir neu
10/26/2011 20:03 MrSm!th#7
Pipes, SendMessage mit WM_COPYDATA, send/recv, einfach nur eine Datei, FileMapping