Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab Inno安装程序-防止桌面快捷方式打开子文件夹,而不是运行同名的可执行文件_Matlab_Inno Setup_Desktop Shortcut - Fatal编程技术网

Matlab Inno安装程序-防止桌面快捷方式打开子文件夹,而不是运行同名的可执行文件

Matlab Inno安装程序-防止桌面快捷方式打开子文件夹,而不是运行同名的可执行文件,matlab,inno-setup,desktop-shortcut,Matlab,Inno Setup,Desktop Shortcut,我使用Inno安装程序创建安装文件,最近发现了一个问题,我看不到解决方法。我的应用程序不是直接启动的,它是从另一个程序中启动的,matlab。因此,我的文件和图标如下所示: [文件] 资料来源:“包括\*”;不包括:“许可证”;DestDir:“{app}”\ 标志:ignoreversion recursesubdirs createallsubdirs [图标] 名称:“{group}\{cm:UninstallProgram,{#MyAppName}}”;文件名:“{uninstallex

我使用Inno安装程序创建安装文件,最近发现了一个问题,我看不到解决方法。我的应用程序不是直接启动的,它是从另一个程序中启动的,
matlab
。因此,我的
文件
图标
如下所示:

[文件]
资料来源:“包括\*”;不包括:“许可证”;DestDir:“{app}”\
标志:ignoreversion recursesubdirs createallsubdirs
[图标]
名称:“{group}\{cm:UninstallProgram,{#MyAppName}}”;文件名:“{uninstallexe}”
名称:“{group}\{#MyAppName}”;文件名:matlab\
参数:“-r”“run'{app}\nCAL\nCAL_run.p'”;IconFilename:“{app}\nCAL.ico”;
名称:“{commondesktop}\{#MyAppName}”;文件名:matlab\
参数:“-r”“run'{app}\nCAL\nCAL_run.p'”;IconFilename:“{app}\nCAL.ico”\
标志:UseAppPath
除非在运行Inno Setup compile时桌面上碰巧有一个名为
matlab
的文件夹,否则这种方法可以正常工作

正确的桌面快捷方式具有以下属性:

目标

C:\MATLAB\R2018b\bin\MATLAB.exe-r“运行”C:\Program Files(x86)\Ricardo\Global DoE Toolkit\nCAL\nCAL\u run.p“
开始

<代码>C:\MATLAB\R2018b\bin 但是,如果桌面上碰巧有一个名为
matlab
的文件夹(空文件夹或其他文件夹),则安装程序会创建一个具有以下属性的快捷方式:

目标

“C:\Users\jse\OneDrive-Ricardo Plc\Desktop\Matlab”-r“运行”C:\Program Files(x86)\Ricardo\Global DoE Toolkit\nCAL\nCAL\u run.p“
开始

“C:\Users\jse\OneDrive-Ricardo Plc\Desktop”
快捷方式只会打开浏览器中的
matlab
文件夹

我无法明确指定
C:\MATLAB\R2018b\bin\MATLAB.exe
部分,因为用户可以在任何文件夹中拥有任何版本的
MATLAB
。我假设安装程序从注册表获取路径


如果您能提供任何帮助,了解其故障原因以及修复方法,我们将不胜感激。

请使用
matlab.exe
作为快捷目标,将其与
matlab
文件夹区分开来

Filename: matlab.exe;

啊,太简单了!非常感谢。