相关疑难解决方法(0)

MacOSX - 文件扩展名与应用程序关联 - 以编程方式

我正在尝试让我的程序自动关联某些文件扩展名,但是我不确定如何在MacOSX中执行此操作.我不是问如何将程序与GUI中的文件扩展名相关联,我希望能够将它编程到我的程序中.

macos file file-association

15
推荐指数
2
解决办法
7926
查看次数

在执行C++ main()之前处理Mac OS X文件打开事件

我已经google了很多,但仍然找不到好的解决方案:/
所以,我将一个复杂的Qt5应用程序(某些网络服务的客户端)移植到Mac OS X(10.7.0"Lion"及更高版本).

我需要处理自定义文件*.xyz和自定义URL方案xyz://.
好的,Qt5有QFileOpenEvent类来处理OS X适当的事件.
但是:此事件仅在应用程序事件循环开始后才会到达(显然)!

我需要"捕获"并 main启动之前处理OS X'文件打开事件,因为程序逻辑仅用于处理命令行参数处理.

简化的main功能代码:

int main(int argc, char[]* argv)
{
     QApplication app( argc, argv );

     QStringList arguments = app.arguments();
     if( arguments.count() == argc ) arguments.removeFirst();

     Logic appLogic( NULL, &app );
     app.installMessageHandler( &appLogic );

     // The problem:
     // **This function will always called earlier than the any event**
     if( ! appLogic.start( arguments ) ) return 0;

     // Start processing of …
Run Code Online (Sandbox Code Playgroud)

c++ macos events qt qt5

6
推荐指数
1
解决办法
934
查看次数

将文件扩展名与我的应用程序相关联

我知道如何手动将特定文件或通用扩展名与特定 OS X 应用程序相关联。(获取信息 > 打开方式 > 其他...)

我知道如何在 OS X 中将带有扩展名的文件拖放到“不受支持”的应用程序上。(拖动应用程序时按住命令选项)

作为 OS X 应用程序的作者,我如何指定我的应用程序知道如何打开特定的文件扩展名?

  • 我希望我的用户不需要使用命令选项进行拖放。
  • 我希望我的用户在选择应用程序打开我的扩展程序时看到我的应用程序列在“推荐的应用程序”而不是“所有应用程序”下。
  • 理想情况下,我希望我的用户看到带有我的(唯一的,尚未关联的)扩展名的文件神奇地显示正确的图标,并在将.app其拖入 Applications 文件夹后立即使用我的应用程序打开。

我看过“MacOSX - 文件扩展名与应用程序关联 - 以编程方式”,但我不想让用户在安装后运行安装程序或 shell 脚本。

macos file-extension

5
推荐指数
1
解决办法
2391
查看次数

标签 统计

macos ×3

c++ ×1

events ×1

file ×1

file-association ×1

file-extension ×1

qt ×1

qt5 ×1