Macos Xojo启动/运行另一个应用程序(Mac)

Macos Xojo启动/运行另一个应用程序(Mac),macos,xojo,Macos,Xojo,我想让我的程序启动另一个桌面应用程序 已尝试shell执行(打开appname),但无法运行 还有别的办法吗 提前谢谢。我不熟悉Xojo,但是在OS X上“启动”应用程序很复杂。有很多事情你需要考虑,特别是如果它已经运行了。< /P> 我建议您研究两种可能的选项,或者使用Xojo的能力启动调用本机C代码来运行三种方法之一: 或者,使用Apple的open命令行工具: /usr/bin/open -a "App Name" /usr/bin/open -a "/Applications/App N

我想让我的程序启动另一个桌面应用程序

已尝试shell执行(打开appname),但无法运行

还有别的办法吗


提前谢谢。

我不熟悉Xojo,但是在OS X上“启动”应用程序很复杂。有很多事情你需要考虑,特别是如果它已经运行了。< /P> 我建议您研究两种可能的选项,或者使用Xojo的能力启动调用本机C代码来运行三种方法之一:

或者,使用Apple的
open
命令行工具:

/usr/bin/open -a "App Name"
/usr/bin/open -a "/Applications/App Name.app"

我不熟悉Xojo,但是在OSX上“启动”应用程序很复杂。有很多事情你需要考虑,特别是如果它已经运行了。< /P> 我建议您研究两种可能的选项,或者使用Xojo的能力启动调用本机C代码来运行三种方法之一:

或者,使用Apple的
open
命令行工具:

/usr/bin/open -a "App Name"
/usr/bin/open -a "/Applications/App Name.app"
dim s作为新外壳
s、 执行(“打开-查找器”)
'检查错误代码并对此采取措施。。。
如果s.ErrorCode为0,则
MsgBox(“错误代码:+Str(s.ErrorCode)+EndOfLine+”输出:+s.Result)
如果结束
将“
Finder
”更改为您需要的任何应用程序,或者构建一个字符串并将其传递给
s.Execute()
。确保包含转义引号,尤其是当应用程序名称中有空格时。

dim s作为新Shell
s、 执行(“打开-查找器”)
'检查错误代码并对此采取措施。。。
如果s.ErrorCode为0,则
MsgBox(“错误代码:+Str(s.ErrorCode)+EndOfLine+”输出:+s.Result)
如果结束

将“
Finder
”更改为您需要的任何应用程序,或者构建一个字符串并将其传递给
s.Execute()
。确保包含转义引号,尤其是当应用程序的名称中有空格时。

另一种可能性是使用标准Xojo FolderItem并使用Launch方法

Dim f as folderitem = specialfolder.applications.child("AppName")
if f <> nil and f.exists then
  f.launch
end
Dim f as folderitem=specialfolder.applications.child(“AppName”)
如果f nil和f存在,则
f、 发射
结束
参考文件:
另一种可能性是使用标准Xojo FolderItem和启动方法

Dim f as folderitem = specialfolder.applications.child("AppName")
if f <> nil and f.exists then
  f.launch
end
Dim f as folderitem=specialfolder.applications.child(“AppName”)
如果f nil和f存在,则
f、 发射
结束
参考文件:

我完全忘了FolderItem。启动!这绝对是最好的方法,也是跨平台的。唯一的潜在问题是,如果应用程序不在标准位置,那么您必须找到或已经知道应用程序在哪里,或者通过shell切换到使用“open”命令。我完全忘了FolderItem。Launch!这绝对是最好的方法,也是跨平台的。唯一的潜在问题是如果应用程序不在标准位置,那么您必须找到或已经知道应用程序在哪里,或者通过shell切换到使用“打开”命令。