如何从NSIS安装程序运行QuickTime相关文件?

时间:2011-11-15 15:30:22

标签: installer executable nsis quicktime

我们要求用户在jre / lib / ext文件夹中包含QTJava.zip的副本,以便我们可以播放QuickTime文件而无需添加到类路径中。 QuickTime在此提供了一个安装过程:http://commons.oreilly.com/wiki/index.php/QuickTime_for_Java:_A_Developer%27s_Notebook/Getting_Up_and_Running_with_QuickTime_for_Java(请参阅标有预检QTJ安装的部分)所以基本上我们需要在安装程序中运行与QT相关的文件 - 因为QT会已安装,它将在运行“.mov”文件时启动电影播放器​​。

我们有一个选择对话框,用户选择他的JRE,我们想提示用户在此步骤后立即运行此安装程序(假设QTJava已经存在;我们会检查这一点)。假设“.mov”文件驻留在基本安装程序文件夹中,“运行”此文件涉及哪些步骤?到目前为止还没有任何工作,列出我们尝试的每种方法都会占用页面,所以一个全新的视角会有所帮助。

1 个答案:

答案 0 :(得分:1)

运行非.exe / .cmd / .bat文件需要ExecShell。 ExecShell与你将要获得的“双击资源管理器”非常接近。

但是这里有一个问题,.mov是一个常见的扩展,你不知道最终用户设置打开.mov文件的内容,它可能是MPC,VLC,mplayer等,所以只使用ExecShell可能会失败。

尝试定位QT并直接执行它可能更好:

ReadRegStr $0 HKLM "SOFTWARE\Apple Computer, Inc.\Quicktime" "InstallDir"
ExecShell "" '"$0\QuicktimePlayer.exe"' '"$Instdir\MyFile.mov"'