gpt4 book ai didi

c++ - 检查 SHBrowseForFolder 的权限类似于 GetSaveFileName,C++/Win32

转载 作者:行者123 更新时间:2023-11-30 17:47:36 25 4
gpt4 key购买 nike

我有一个同时使用 SHBrowseForFolder 和 GetSaveFileName 的程序。

当我使用 GetSaveFileName 并且所选目录没有正确的权限时,它会自动显示错误,指出当前用户没有正确的权限。

当我使用 SHBrowseForFolder 时,我需要进行与此类似的检查。

已尝试 CreateDirectory,但如果选择的目录是 C:,则会成功,而 GetSaveFileName 只允许管理员在此处写入。

最佳答案

您可以使用以下方法检查权限:

  1. 获取进程 token
  2. GetTokenInformation(获取用户的 tokenuser 和 SID)
  3. GetNamedSecurityInfo(获取给定文件夹的 DACL)和
  4. BuildTrusteeWithSid(pTrustee, pSidUser);
  5. GetEffectiveRightsFromAcl

有关更多详细信息,请参阅 Check User’s Permissions On A File or Folder文章。

关于c++ - 检查 SHBrowseForFolder 的权限类似于 GetSaveFileName,C++/Win32,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18889164/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com