我想防止标准用户重命名或替换软件中的.exe
文件。在无设置上设置users-readexec
时,该软件不适用于标准用户。在保护文件标准用户的同时如何保留功能?
我正在使用inno setup创建该软件的安装文件。我尝试将权限设置为users-readexec
。我也尝试了icacls <filepath> /deny Users:M
,但没有运气
这是我在安装时为inno setup设置安装目录权限的方式。
[Dirs]
Name: "{app}" ; Permissions: admins-full
; to allow the admin to have read/write permission of all files within the installation folder.
; user group have only read permission.
[Languages]
Name: "en"; MessagesFile: "compiler:Default.isl"
[Files]
Source: "{#SourcePath}Exe Source\dot net 3\program.exe"; DestDir: "{app}"; OnlyBelowVersion: 0,6.2 ; Permissions: users-readexec
Source: "{#SourcePath}Exe Source\dot net 3\program.exe.config"; DestDir: "{app}"; OnlyBelowVersion: 0,6.2
Source: "{#SourcePath}Exe Source\dot net 3\program.xml"; DestDir: "{app}"; OnlyBelowVersion: 0,6.2
Source: "{#SourcePath}Exe Source\dot net 3\engine.dll"; DestDir: "{app}"; OnlyBelowVersion: 0,6.2
这可以防止标准用户修改文件,但是实际程序(program.exe
)本身无法正常工作。