C ++ - DLL注入和调用函数

时间:2013-12-29 15:25:56

标签: c++ dll

很长一段时间我都试图找到我的问题的答案。

我有一个游戏DLL和一个程序。

我的DLL我有一个改变游戏内容的功能。 (如果将DLL注入游戏中)。该程序是我的注射器。

我的问题是,注入后,如何手动调用DLL中的函数?

现在这个函数在附加到游戏时调用,但如何从注入器调用此函数?

3 个答案:

答案 0 :(得分:0)

是的,您可以在正在运行的进程上创建远程线程,并在该线程上进入您提到的该功能。

答案 1 :(得分:0)

为了调用该函数,您需要在目标进程中执行的代码。这就是游戏,但你想从你的注入器调用这个函数,这是一个不同的过程。您已经在目标进程中拥有代码,即您注入的DLL。因此,获取注入的DLL来调用该函数。实现这一目标的一些方法:

  1. 在目标进程中创建另一个远程线程,该线程调用DLL中定义的函数。然后,在目标流程的背景下,它可以随心所欲地做任何事情。
  2. 使用一些IPC机制(例如命名管道,套接字等)来请求注入的DLL执行操作。

答案 2 :(得分:-1)

您必须将符号(函数)从dll加载到程序中。

该符号将是您可以调用的函数指针。操作系统之间存在显着差异,因此我将搜索“来自dll的调用函数”以获取操作系统的示例。