【发布时间】:2019-10-07 14:27:04
【问题描述】:
我使用 Inno Setup 创建安装文件,最近发现了一个问题,但我看不到解决方法。我的应用程序不是直接启动的,它是从另一个程序matlab 内部启动的。所以我的Files 和Icons 看起来像这样:
[Files]
Source: "include\*"; Excludes: "License"; DestDir: "{app}"; \
Flags: ignoreversion recursesubdirs createallsubdirs
[Icons]
Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}"
Name: "{group}\{#MyAppName}"; Filename: matlab; \
Parameters: "-r ""run '{app}\nCAL\nCAL_RUN.p'"""; IconFilename:"{app}\nCAL.ico";
Name: "{commondesktop}\{#MyAppName}"; Filename: matlab; \
Parameters: "-r ""run '{app}\nCAL\nCAL_RUN.p'"""; IconFilename:"{app}\nCAL.ico"; \
Flags: useapppaths
这很好用,除非在运行 Inno Setup compile 时桌面中恰好有一个名为 matlab 的文件夹。
正确的桌面快捷方式具有以下属性:
目标
C:\MATLAB\R2018b\bin\matlab.exe -r "run 'C:\Program Files (x86)\Ricardo\Global DoE Toolkit\nCAL\nCAL_RUN.p'"
开始
C:\MATLAB\R2018b\bin
但是,如果碰巧在桌面上有一个名为 matlab 的(空的或其他的)文件夹,那么安装程序会创建一个具有以下属性的快捷方式:
目标
"C:\Users\jse\OneDrive - Ricardo Plc\Desktop\Matlab" -r "run 'C:\Program Files (x86)\Ricardo\Global DoE Toolkit\nCAL\nCAL_RUN.p'"
开始
"C:\Users\jse\OneDrive - Ricardo Plc\Desktop"
快捷方式只是在资源管理器中打开matlab 文件夹。
我无法明确指定C:\MATLAB\R2018b\bin\matlab.exe 部分,因为用户可以在任何文件夹中拥有matlab 的任何版本。我假设安装程序从注册表中获取路径。
任何关于它为什么会掉下来以及修复方法的帮助将不胜感激。
【问题讨论】:
标签: matlab inno-setup desktop-shortcut