创建过程暂停和UAC

Create process suspend and UAC

本文关键字:UAC 暂停 过程 创建      更新时间:2023-10-16

我有一个inyector应用程序将远程dll映射到另一个过程中。我试图插入的过程具有自己的清单,需要管理特权。我正在尝试使用CreateProcess,因为我可以在悬挂状态下创建该过程,将映射到远程内存中然后恢复。

现在根据MS我可以将Shellexecute与Runas动词一起使用,但这将立即开始运行该过程。是否有任何方法可以要求用户以admin的身份运行该过程,同时在悬浮状态下创建该过程?

如果目标可执行文件具有指定requiresAdminstrator的UAC清单,那么您无需做任何额外的事情。只需正常使用CreateProcess(),然后让操作系统为您处理高程即可。高程将在CreateProcess()返回控制回到您之前将其应用于新过程。

只有目标可执行文件没有迫使高程的UAC表现,才需要手动提升。在这种情况下,如果您不想使用ShellExecute/Ex()

,可以使用CreateProcessElevated()之类的东西