【问题标题】:Can a process elevate itself after startup?一个进程可以在启动后提升自己吗?
【发布时间】:2010-01-17 17:42:25
【问题描述】:

进程启动后是否有可能获得管理员权限?如果有,怎么做?

示例应使用 C 或 C++。

编辑 - 示例也应该使用非托管代码。

【问题讨论】:

    标签: windows uac


    【解决方案1】:

    当进程正在运行时,您不能提升进程的权限。解决此问题的常用方法是在需要时生成具有提升权限的新进程。然后,该进程执行需要更高权限的工作,然后退出,将控制权释放回主进程。您应该能够通过将新进程父窗口设置为主进程窗口的父窗口来使其相当无缝。

    另一种选择是使用所需的权限重新启动主程序。

    有一个article on UAC in Vista with C++ examples ,看起来很深入。

    【讨论】:

    • 好的。我只是不知道这是否可能。然后我的程序可能会做的是启动另一个与主进程并行运行的进程,并使用 RPC 来处理所有提升的任务。
    猜你喜欢
    • 2010-11-05
    • 2011-08-14
    • 1970-01-01
    • 2011-12-12
    • 2011-04-25
    • 2010-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多