我使用innosetup创建了一个安装程序来安装包含两个可执行文件的应用程序。他们每个人都应该去一个单独的文件夹。所以我使用" CreateInputDirPage"创建了一个自定义的InputDirPage。功能并在此页面中添加了两个条目,每个可执行文件对应一个 为防止默认DirPage显示,我在[Setup}部分中使用了这些参数:
DisableDirPage = yes
和AlwaysShowDirOnReadyPage= no
我写了一些函数来从我的自定义DirPage中提取文件夹路径 这种方法很好,并且evrything最终会到达应有的位置。
但是:在安装过程中,Innosetup会尝试在DefaultDirName中创建文件夹集,因为此文件夹是不可见DirPage中的值。 如果该文件夹不存在,并且需要管理员权限才能创建该文件夹,则安装程序将崩溃。
我通过在[设置]部分设置DefaultDirName = {pf}
解决了这个问题
(由于程序文件夹确实存在,我不会因为失败的创建尝试而得到任何错误消息)
现在我的问题是:
是否有设置参数告诉Innosetup完全忽略 向导目录页面的内容?因为看似隐形 不够。
我可以在运行时设置该内容或{app}
常量,以避免" DefaultDirName"文件夹被创建?
答案 0 :(得分:0)
是的,有一个名为CreateAppDir的选项。
int c = 0;
while ((c = in.read()) != -1) {
System.out.println((char)c);
out.write((byte)c);
}