【发布时间】:2011-06-21 01:34:04
【问题描述】:
Win 7/UAC 快把我逼疯了。
在我的 C++ 应用程序中,我需要在 Windows 7 上运行一个需要提升的可执行文件。我想关闭这个东西并等待它完成后再继续。最简单的方法是什么?
我通常通过CreateProcess() 做这种事情,但是对于需要提升的可执行文件它会失败。
我尝试使用cmd.exe /c ... 到CreateProcess 运行,它可以运行,但会弹出一个丑陋的 cmd 终端窗口。
我读到ShellExecute() 将允许提升,但在使用ShellExecute() 时等待exe 完成似乎并不容易。
像system() 这样简单的东西会起作用吗?
非常感谢任何其他想法!
【问题讨论】:
标签: c++ winapi uac shellexecute createprocess