我正在开发Windows资源pipe理器命名空间扩展。 我的应用程序是一个dynamic库,由explorer.exe在某些时候加载和使用。 我需要我的DLL在C:\中创build文件,有时在需要提升的其他位置执行这样的操作。
我怎样才能在C:\下执行这样的提升和创build文件?
如果你的代码在另一个进程中运行,那么这个进程的高程状态就是摆布的。 如果该进程不运行提升,而资源管理器没有,那么你的DLL中的代码不能执行提升。
因此,您的解决方案是创建另一个流程来执行需要提升的任务。 这样做使用这些方法之一:
requestedExecutionLevel
指定requireAdministrator
选项。 runas
动词使用ShellExecuteEx
开始这个过程。