C++ 是否可以从外部进程注入和执行应用程序?
我喜欢将DLL注入进程,因为我可以更改程序的某些值 dll唯一的缺点是它们不是很好移植,使它们可移植会消耗大量代码 我只是想知道有没有可能将应用程序注入到存储在资源中的进程中,然后再执行它C++ 是否可以从外部进程注入和执行应用程序?,c++,resources,execute,inject,C++,Resources,Execute,Inject,我喜欢将DLL注入进程,因为我可以更改程序的某些值 dll唯一的缺点是它们不是很好移植,使它们可移植会消耗大量代码 我只是想知道有没有可能将应用程序注入到存储在资源中的进程中,然后再执行它 如果是这样的话,哪些代码部分可能与dll的注入不同?您的问题不是标记Windows,而是我仍然假设您指的是Windows 给定必要的访问权限,可以将可执行文件注入另一个进程,cygwin中的fork实现就是一个概念证明。Windows不支持fork之类的东西,至少不在公共API中公开。Cygwin通过创建一个
如果是这样的话,哪些代码部分可能与dll的注入不同?您的问题不是标记Windows,而是我仍然假设您指的是Windows 给定必要的访问权限,可以将可执行文件注入另一个进程,cygwin中的fork实现就是一个概念证明。Windows不支持fork之类的东西,至少不在公共API中公开。Cygwin通过创建一个新流程并将自己的流程注入到另一个流程(包括所有数据)来实现它。相反,从一个资源中读取和注入是差不多的事情 区别和困难之一可能是映像库,它在Win32下通常都是相同的。对于DLL来说,它是一个经常被重设基础的东西,对于可执行文件来说,它不是。另一方面,如果要在现有进程代码之外插入代码,则所需的地址可能不是免费的