Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/150.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ LSOpenApplication已弃用?_C++_Macos_Core Services_Launch Services - Fatal编程技术网

C++ LSOpenApplication已弃用?

C++ LSOpenApplication已弃用?,c++,macos,core-services,launch-services,C++,Macos,Core Services,Launch Services,根据page的介绍,自OS X v10.10以来,LSOpenApplication功能已被弃用。建议的替代方案是使用-[NSWorkSpace launchapplicationaURL]。不幸的是,我正在编写一个C++的用户代理,它必须启动一个用COCOA编写的GUI应用程序。这意味着我无法访问Cocoa功能(包括上述替代功能) 我还可以使用哪些未标记为已弃用的函数来帮助我完成此操作 提前感谢。您可以使用LSOpenCFURLRef()和要打开的应用程序的URL打开应用程序。类似地,您可以将

根据page的介绍,自OS X v10.10以来,
LSOpenApplication
功能已被弃用。建议的替代方案是使用
-[NSWorkSpace launchapplicationaURL]
。不幸的是,我正在编写一个C++的用户代理,它必须启动一个用COCOA编写的GUI应用程序。这意味着我无法访问Cocoa功能(包括上述替代功能)

我还可以使用哪些未标记为已弃用的函数来帮助我完成此操作


提前感谢。

您可以使用
LSOpenCFURLRef()
和要打开的应用程序的URL打开应用程序。类似地,您可以将
LSOpenFromURLSpec()
LSLaunchURLSpec
一起用于
appURL
字段中应用程序的URL。

我可以像使用LSOpenApplication一样为进程提供参数吗?不完全正确,但向应用程序传递参数是不常见的。首先,“打开”应用程序可能意味着重新打开它。也就是说,如果它已经运行,它将被激活,并将收到一个“rapp”苹果事件。在这种情况下,它不会接收命令行参数,因为这些参数只有在启动时才有意义。类似地,用户通常通过Apple事件与GUI应用程序通信。因此,例如,如果使用应用程序打开文档,它不会作为命令行参数传递。相反,它在“奥多克”苹果活动中通过
LSOpenFromURLSpec()
将通过
itemURLs
为您的应用程序执行此操作。谢谢。我要试试AppleeEvent方法!