Se um arquivo puder ser lido, ele poderá ser copiado. Você pode, no entanto, impedir que o arquivo seja excluído ou movido, não dando permissões de gravação ao diretório em que o arquivo reside.
Editado com informações adicionais desde que a pergunta foi alterada:
Dado o cenário que você adicionou à pergunta, você pode fazer isso:
- crie um usuário que será usado apenas para este programa, por exemplo %código%
- altera a propriedade do diretório / GUI / images para, por exemplo, %código%
- altere as permissões do diretório e dos arquivos dentro dele para que apenas
guiuser
tenha permissão de leitura - altere o proprietário do programa GUI.exe para pertencer a
guiuser
- altere as permissões do programa para executar o setuid (
guiuser
)
Quando seus usuários executarem o programa, esse programa terá os direitos de acesso de guiuser
, para que o programa possa ler os arquivos mesmo que o usuário comum não tenha permissão.