我正在开发Windows资源管理器命名空间扩展。我的应用程序是一个动态库,由explorer.exe在某个时候加载和使用。我需要我的DLL在C:\中创建文件,有时在需要提升的其他位置执行此类操作。
如何在C:\执行此类提升并创建文件?
答案 0 :(得分:1)
如果您的代码在另一个进程内运行,则它受该进程的提升状态的支配。如果该进程未升级,并且资源管理器没有,则您的DLL中的代码无法执行提升。
因此,您的解决方案是创建另一个进程来执行需要提升的任务。使用以下方法之一来做到这一点:
requireAdministrator
的{{1}}选项。 requestedExecutionLevel
动词ShellExecuteEx
开始此过程。