c++ - OS X 将扩展与应用程序相关联

标签 c++ macos cocoa core-foundation

在我的应用程序中,我需要以编程方式将扩展与我的应用程序相关联。也就是说,当我的应用程序运行时,它将扩展与自身关联为首选应用程序。

在 Windows 上,这是通过使用注册表 API 完成的。

我无法找到如何在我的 C++ 程序中使用 Cocoa 或 Core Foundation 在 Mac OS X 中实现此目的。

这就像应用程序将自身与扩展相关联。

最佳答案

我假设您希望您的应用程序在 Finder 中双击扩展名被取代的文档时激活,是吗?不幸的是,没有 API 可以“接管”应用程序的 Info.plist 尚未声明的扩展,并且出于明显的安全原因,无法在运行时修改该机制。

最接近的是允许任何扩展,这将允许您通过将文档拖到应用程序图标上来启动或激活您的应用程序,但我怀疑这就是您想要做的全部,因为你如何表达你的问题。

关于c++ - OS X 将扩展与应用程序相关联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18696780/

相关文章:

xcode - OSX Mac 应用商店 : how to install a daemon shell script

Objective-C:从外部应用程序获取菜单信息

c++ - 无法累积编译时间常量

c++ - 模拟游戏机的内存映射,根据提供的地址访问不同的位置

objective-c - Cocoa 中 unichar 的私有(private)映射

objective-c - 删除/插入 View 后 NSResponder 链被破坏

cocoa - 如何更改 NSFont 中字母之间的间距?

c++ - 如何让非成员 get<N> 为命名空间中的自定义类工作 [C++17]

c++ - 在 C++ 中使用派生类的静态方法作为函数回调

macos - R 到剪贴板在 Mac 上不起作用