Resposta curta: adicione /t para (i) cacls
Resposta longa:
Aqui está meu script que uso quando quero que o arquivo seja acessível a qualquer usuário. Inclui comentários sobre o que cada bandeira faz. Basta colocar isso em um arquivo de lote em algum lugar na pasta %AppData% .
REM --v2 -----------------------------------------------------------
takeown /r /d y /f %1
icacls %1 /t /grant Everyone:F
REM takeown /r /d y /f will set the owner to the Administrators group recursively.
REM /t makes it recursive
REM /grant Sets the permision to the following user, replaces existing permissions for the specified uesr.
REM :f Grants full controll permission.
REM ----------------------------------------------------------------
REM --v1 -----------------------------------------------------------
REM cacls %1 /t /e /g Everyone:f
REM /t makes it recursive
REM /e Edits the ACL instead of replaceing it
REM /g Grants permissions to the following users
REM :f Grants full controll permission.
REM ----------------------------------------------------------------
Em %AppData%\Microsoft\Windows\SendTo , crie um atalho para o script em lote.
Edite as propriedades desse atalho e vá para Advanced... e marque a caixa Run as Administrator.
Agora, em seu right click menu -> Send To , você terá um item chamado Fix Permissions de qualquer arquivo ou pasta em que você fizer um Send To e o grupo Todos receberá Full Access permissões. Se você executá-lo em uma pasta, ele passará por ele de forma recursiva e aplicará as permissões a todos os filhos da pasta.
Salvei o arquivo de lote na pasta %AppData% porque estou em um domínio e isso faz parte do meu perfil móvel. Assim, ele estará pronto para ser usado em qualquer computador ao qual me conecte.