将“用户帐户控制”窗口置于最前面

时间:2009-12-17 20:23:22

标签: uac

我的产品需要更改文件关联。为了允许它在Vista中以非管理员身份运行,我已将注册表更改代码移动到名为“assocsetup.exe”的单独二进制文件。

启动时,Vista UAC正确地要求获得以管理员身份运行“A程序需要您的权限才能继续”消息的权限。

然而,它并没有立即将它带到前面。它只是在任务栏上闪烁它的条目,用户必须单击它以显示UAC窗口。

有没有办法自动使UAC窗口可见,以避免单击任务栏?

谢谢!

2 个答案:

答案 0 :(得分:2)

您没有说明如何启动帮助程序,但我假设您使用的是ShellExecute(您没有在标记中指定语言)

请记住将当前窗口的HWND传递给ShellExecute [Ex](当调用UAC对话框显示为活动窗口时,此窗口必须是前台窗口)

答案 1 :(得分:1)

这里的常识,但是由于UAC触发了Window焦点的提示,是不是有办法聚焦assocsetup.exe窗口,这样它可以调暗桌面并提示?