"_asm call" in anderer Anwendung ausführen?
-
Hallo,
ich habe ein Problem, und zwar möchte ich ein Programm schreiben, was eine Funktion eines anderen Programms nutzt. Wenn ich das ganze jetzt so mache:
_asm
{
mov esi, entities;
xor edi, edi;
mov eax, 0x495BC0;
call eax;
}wird natürlich nicht auf die andere Anwendung zugegriffen. Was muss ich machen, dass auf die Funktion (an der Stelle 0x495BC9) der anderen Anwendung aufgerufen wird?
Gruß
Neokil
-
Asm -> Compilerabhängig -> Gehört nicht ins C++ Unterforum.
Speicher von anderen Prozessen nutzen -> Systemabhängig -> ..Sag am besten in welches Forum du verschoben werden willst, ich tippe mal ganz stark auf WinAPI.
Deswegen hier auch gleich mal meine Tipps:
http://msdn.microsoft.com/en-us/library/ms680549(v=vs.85).aspx
http://msdn.microsoft.com/en-us/library/ms679303(v=vs.85).aspx
-
ASM ist compilerabhängig? ich dachte es wird einfach der Assemblercode an dieser Stelle im compilierten Programm eingefügt...
Naja ich glaube WinAPI ist eher das richtige Forum.
-
Neokil schrieb:
ASM ist compilerabhängig? ich dachte es wird einfach der Assemblercode an dieser Stelle im compilierten Programm eingefügt...
der asm-Befehl ist zwar im Standard enthalten, aber die meisten Compiler unterstützen ihn nicht in der Form, wie es der Standard verlangt. Wie die EInbindung von Assembler zu erfolgen hat, ist Compilerabhängig. Dann ist Assembler plattformabhängig, weils je nach Plattform eine andere Assemblersprache braucht.
-
Dieser Thread wurde von Moderator/in pumuckl aus dem Forum C++ (auch C++0x) in das Forum WinAPI verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Neokil schrieb:
Funktion eines anderen Programms nutzt
Das geht nicht, außer die Funktion befindet sich in einer DLL.
Alternativ bietet sich ein DLL oder Thread injektion an.