我尝试在Apple.StackExchange.com上提出这个问题,但他们将我重新引导回到此处。
我使用file association
创建了自定义TextEdit
并让它正常运行。我现在需要构建一个使用我的自定义file association
的应用程序并运行shell commands
来打开非专有应用程序(如TextEdit,VLC,ect)。该应用程序将从网上下载。
我怎样才能实现这一切?它可以是任何语言,但更可取Objective-C
答案 0 :(得分:1)
看起来有更好的方法来做到这一点
[[NSWorkspace sharedWorkspace] openFile:@"<FULL_PATH_TO_YOUR_ASSOSIATED_FILE>"];
来自openFile
的{{3}}
打开使用相关默认应用指定的指定文件 与它的类型。
执行相同操作的不太优雅的方法如下:
检查系统上open
命令的位置,例如whereis open
,并在下面的代码中使用找到的可执行文件的替换位置
NSTask *task = [[NSTask alloc] init];
[task setLaunchPath:@"<FULL_PATH_TO_OPEN_COMMAND>"];
[task setArguments:@[ @"<FULL_PATH_TO_YOUR_ASSOSIATED_FILE>"]];
[task launch];