在父安装调用时,我无法正确使用/GROUP=""
命令行参数进行安装。究竟应该指定什么," base"是什么?
例如,父安装程序确定开始菜单条目的完整路径。如果此路径传递给/GROUP
,则会出现有关无效字符的错误;即:
。
我知道该参数支持使用expand
前缀,但这是否意味着父安装程序必须确定哪个常量要扩展"而不是简单地传递已经确定的路径?
更新
似乎我错误地认为我可以选择" base"菜单条目(所有用户,本地)。这似乎是自动完成的,但也许这是一个更完整的例子:
较旧的Wise安装确定将安装菜单条目的文件系统路径。然后它执行我的安装并使用/GROUP
传递该路径。这就是我出现问题的地方,因为/GROUP
只需要一个目录,而不是一个完整的路径。
答案 0 :(得分:0)
/GROUP="x"
参数指定{groupname}
常量的值,例如。它的格式应为/GROUP="MyApp"
。它不应该包含路径,或者至少如果它包含路径,它应该是一个非常浅的相对路径,例如/GROUP="MyCompany\MyApp"
。
如果您从父Inno安装脚本传递参数,并且您希望子安装将图标安装到与父项相同的组中,那么您应该使用/GROUP="{groupname}"
。
在所有情况下,Inno会自动选择路径的“根”为{commonprograms}
或{userprograms}
,具体取决于正在运行的安装脚本的PrivilegesRequired
设置。
请注意,如果您将安装程序作为自动更新已安装应用程序的一部分运行,则根本不应传递参数。 Inno会记住用户以前的选择并默认使用它;事实上,强烈建议不要让用户在交互式升级期间通过设置以下内容来改变这一点:
[Setup]
DisableDirPage=auto
DisableProgramGroupPage=auto