我正在使用ShellExecute(NULL, L"open", szSomeDirectory, 0, 0, SW_SHOWDEFAULT)
在资源管理器中打开目录。
我正在尝试打开一个我通常会被You currently do not have permission to access this folder.
提示的目录,并且会为我提供访问权限并显示UAC提示。
当我执行ShellExecute时,资源管理器会向我显示一条错误消息Access Denied
。
我的程序以管理员权限运行,但这似乎并不重要。
如何获得打开此文件夹的权限?
答案 0 :(得分:1)
想出来。
我的用户帐户无权访问该文件。
我的解决方案是在AccessCheck
之前使用ShellExecute
来查看我是否可以访问该文件,如果不能,请使用SetNamedSecurityInfo
为登录用户帐户添加ACE完全访问。
答案 1 :(得分:0)
您可以在程序的链接器清单中设置UAC级别。