Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/149.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 是否可以从外部进程注入和执行应用程序?_C++_Resources_Execute_Inject - Fatal编程技术网

C++ 是否可以从外部进程注入和执行应用程序?

C++ 是否可以从外部进程注入和执行应用程序?,c++,resources,execute,inject,C++,Resources,Execute,Inject,我喜欢将DLL注入进程,因为我可以更改程序的某些值 dll唯一的缺点是它们不是很好移植,使它们可移植会消耗大量代码 我只是想知道有没有可能将应用程序注入到存储在资源中的进程中,然后再执行它 如果是这样的话,哪些代码部分可能与dll的注入不同?您的问题不是标记Windows,而是我仍然假设您指的是Windows 给定必要的访问权限,可以将可执行文件注入另一个进程,cygwin中的fork实现就是一个概念证明。Windows不支持fork之类的东西,至少不在公共API中公开。Cygwin通过创建一个

我喜欢将DLL注入进程,因为我可以更改程序的某些值

dll唯一的缺点是它们不是很好移植,使它们可移植会消耗大量代码

我只是想知道有没有可能将应用程序注入到存储在资源中的进程中,然后再执行它


如果是这样的话,哪些代码部分可能与dll的注入不同?

您的问题不是标记Windows,而是我仍然假设您指的是Windows

给定必要的访问权限,可以将可执行文件注入另一个进程,cygwin中的fork实现就是一个概念证明。Windows不支持fork之类的东西,至少不在公共API中公开。Cygwin通过创建一个新流程并将自己的流程注入到另一个流程(包括所有数据)来实现它。相反,从一个资源中读取和注入是差不多的事情

区别和困难之一可能是映像库,它在Win32下通常都是相同的。对于DLL来说,它是一个经常被重设基础的东西,对于可执行文件来说,它不是。另一方面,如果要在现有进程代码之外插入代码,则所需的地址可能不是免费的