Inno setup 使文件夹在Inno安装程序安装后隐藏

Inno setup 使文件夹在Inno安装程序安装后隐藏,inno-setup,file-attributes,Inno Setup,File Attributes,我的应用程序有一个文件夹,其中包含所有标记为“隐藏”的文件(包括文件夹本身)。但是,除非我先删除“hidden”属性,否则Inno安装程序不会复制它们进行安装 很公平,但是有没有办法让Inno安装程序在我的最终用户机器上完成安装后,将已安装的文件夹标记为“隐藏”呢 谢谢。有关[Dirs]部分中的条目,请参见Attribs参数 [Dirs] Name: "{app}\blah"; Attribs: hidden; 请注意,这并不会真正阻止人们看到它,只是让它看起来像你有东西要隐藏。首先,确保只隐

我的应用程序有一个文件夹,其中包含所有标记为“隐藏”的文件(包括文件夹本身)。但是,除非我先删除“hidden”属性,否则Inno安装程序不会复制它们进行安装

很公平,但是有没有办法让Inno安装程序在我的最终用户机器上完成安装后,将已安装的文件夹标记为“隐藏”呢


谢谢。

有关
[Dirs]
部分中的条目,请参见
Attribs
参数

[Dirs]
Name: "{app}\blah"; Attribs: hidden;

请注意,这并不会真正阻止人们看到它,只是让它看起来像你有东西要隐藏。

首先,确保只隐藏目录,而不是子目录。说它的名字是srcHiddenDir。 现在,创建另一个目录dstHiddenDir,但现在不要将其隐藏。但它应该是空的

然后,打开settings.json,并用dstHiddenDir替换所有出现的srcHiddenDir

现在,像往常一样准备好复制文件。在代码的一部分中,您将获得:

[Files]

Source: "wherethewholecodeis\phpdesktop\phpdesktop-chrome.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "wherethewholecodeis\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
Source: "wherethewholecodeis\*srcHiddenDir*\*"; DestDir: "{app}\*dstHiddenDir*"; Attribs:hidden; Flags: ignoreversion recursesubdirs createallsubdirs
然后,你需要写:

[Dirs]
Name: {app}\dstHiddenDir; Attribs:hidden;
Name: {app}\dstHiddenDir\application; Attribs:hidden;
Name: {app}\dstHiddenDir\database; Attribs:hidden;
Name: {app}\dstHiddenDir\css; Attribs:hidden;
....
…和所有要隐藏的子目录,只是为了更安全。但是注意这些子目录应该是真实的,并且在源/目标中。否则,运行安装程序时,错误将显示这些目录不存在

现在,编译程序。 希望这有帮助