分享

删除文件时提示需要**权限, 通过命令行修改文件/目录的所有者和权限

 醉人说梦 2023-05-26 发布于广东

删除文件失败,错误码是5,手动删除的时候提示需要 trustinstaller权限

通过cacls看一下所在目录的权限

  1. C:\Windows\system32>cacls "C:\Program Files\Internet Explorer\iexplore.exe"
  2. C:\Program Files\Internet Explorer\iexplore.exe NT SERVICE\TrustedInstaller:F
  3. BUILTIN\Administrators:R
  4. NT AUTHORITY\SYSTEM:R
  5. BUILTIN\Users:R
  6. APPLICATION PACKAGE AUTHORITY\ALL APPLICATION PACKAGES:R
  7. APPLICATION PACKAGE AUTHORITY\所有受限制的应用程序包:R

以前从不知道哪里的渠道得知takeown和icacls组合使用的方法

  1. C:\Windows\system32>takeown /f "C:\Program Files\Internet Explorer" /r /d n /a
  2. 成功: 此文件(或文件夹): "C:\Program Files\Internet Explorer" 现在由管理员组所有。
  3. 成功: 此文件(或文件夹): "C:\Program Files\Internet Explorer\en-US" 现在由管理员组所有。
  4. 成功: 此文件(或文件夹): "C:\Program Files\Internet Explorer\ExtExport.exe" 现在由管理员组所有。
  5. 成功: 此文件(或文件夹): "C:\Program Files\Internet Explorer\hmmapi.dll" 现在由管理员组所有。
  6. 成功: 此文件(或文件夹): "C:\Program Files\Internet Explorer\iediagcmd.exe" 现在由管理员组所有。
  7. 成功: 此文件(或文件夹): "C:\Program Files\Internet Explorer\ieinstal.exe" 现在由管理员组所有。
  8. 成功: 此文件(或文件夹): "C:\Program Files\Internet Explorer\ielowutil.exe" 现在由管理员组所有。
  9. 成功: 此文件(或文件夹): "C:\Program Files\Internet Explorer\IEShims.dll" 现在由管理员组所有。
  10. 成功: 此文件(或文件夹): "C:\Program Files\Internet Explorer\iexplore.exe" 现在由管理员组所有。
  11. 成功: 此文件(或文件夹): "C:\Program Files\Internet Explorer\images" 现在由管理员组所有。
  12. 成功: 此文件(或文件夹): "C:\Program Files\Internet Explorer\sqmapi.dll" 现在由管理员组所有。
  13. 成功: 此文件(或文件夹): "C:\Program Files\Internet Explorer\en-US\hmmapi.dll.mui" 现在由管理员组所有。
  14. 成功: 此文件(或文件夹): "C:\Program Files\Internet Explorer\images\bing.ico" 现在由管理员组所有。
  15. C:\Windows\system32>icacls "C:\Program Files\Internet Explorer" /inheritance:e /c
  16. 已处理的文件: C:\Program Files\Internet Explorer
  17. 已成功处理 1 个文件; 处理 0 个文件时失败

再次删除,除了提示需要管理员权限,需要点击一下确定外,并没有什么异常。

两个命令都需要执行,执行了takeown之后,依然不能删除

icacls的参数参考

icacls | Microsoft Docs

takeown参考

takeown | Microsoft Docs

里面介绍了权限相关的介绍,可以

/grant授予权限

/deny拒绝权限

/remove移除权限

/setowner设置说有者

想要通过程序实现,可以参考Acess Control系列的windows api

Access Control (Authorization) - Win32 apps | Microsoft Docs

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多