你可以在不重新打开win32窗口的情况下执行需要提升的任务吗?

时间:2016-05-19 08:01:16

标签: c++ windows winapi mfc

是否可以执行需要提升的任务(在我的示例中,我必须编辑注册表)而无需重新打开整个窗口? 所以我有一个CPL项目,其页面可以选择编辑我的应用程序设置(写入注册表)。是否可以仅在用户点击applyok时执行此操作?但是没有重新打开整个cpl窗口。

1 个答案:

答案 0 :(得分:2)

Alf的评论已经说了很多:没有。 Windows与进程绑定,创建后无法提升进程。

当然,您可以拥有第二个子进程,它实际上显示任何内容,但只执行请求的任务。

或者,您可以定义自己的COM对象来执行请求的任务,然后使用COM Elevation Moniker在需要时以抬高的状态创建该COM对象。