在Obj-C中,如何以编程方式在Mac OS X中设置文件的默认"打开方式"属性

apa*_*apa 3 macos cocoa open-with objective-c default-programs

在使用Cocoa(Obj-C)创建一些.mov文件时,我想将它们设置为默认由特定程序打开,而不是默认打开.这应该是文件级属性,我不希望更改具有相同扩展名的所有文件的默认程序.这是从Cocoa本身完成的,而不是在"上下文菜单">>"获取信息">>"打开方式"中手动完成.

l'L*_*L'l 5

有一个未记录的函数调用设置:

// undocumented function call

extern OSStatus _LSSetStrongBindingForRef(const FSRef *inItemRef,
                                          FSRef *inAppRefOrNil);
Run Code Online (Sandbox Code Playgroud)

*如果您在应用程序中使用它并将其提交给AppStore,它可能会被拒绝.