调用文件夹的 GetFileAttributes() 时出现“访问被拒绝”

问题描述 投票:0回答:1

我的程序(以管理员身份运行)正在对 Program Files 中的目录调用 GetFileAttributes()。

失败,GetLastError() 返回 0x80070005(“访问被拒绝”)。我无法确定用户可能会如何陷入这种情况。该文件夹是我的应用程序之前创建的。它适用于大多数用户,但并非全部。

问题:

  1. 如何模拟文件夹的“访问被拒绝”,导致 GetFileAttributes() 函数失败?

  2. 以管理员身份运行程序并请求se_backup_name和se_restore_name是否可以解决此问题?

我尝试从安全选项卡中删除用户,但 GetFileAttributes 没有失败。

问题在 Win 7、8、10 上重现。

windows winapi
1个回答
0
投票

我知道这个话题确实很老了,但我昨天遇到了同样的问题,我找到了一个解决方案,不是最好的,但确实很有帮助。 此问题来自于用于获取 SCCM 需要使用/安装的文件/dll 的帐户缺乏权限。 请参阅 technet 中的此主题以获取更多信息。

只需进入安全并将关于每个人的权限更改为完全控制。 这是有风险的,因为之后每个人都可以访问该文件夹。更新后即可删除。

© www.soinside.com 2019 - 2024. All rights reserved.