Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/127.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.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++ 调用LSLaunchFSRefSpec后如何初始化NSDocument?_C++_Macos_Nsdocument_Launch Services_Nsapplication Delegate - Fatal编程技术网

C++ 调用LSLaunchFSRefSpec后如何初始化NSDocument?

C++ 调用LSLaunchFSRefSpec后如何初始化NSDocument?,c++,macos,nsdocument,launch-services,nsapplication-delegate,C++,Macos,Nsdocument,Launch Services,Nsapplication Delegate,我正在开发一个基于文档的应用程序。如果我从Finder执行此应用程序,它将按预期运行:首先执行nsapplicationelegateapplicationdFinishLaunching方法。然后完成NSPersistentDocument初始化。然后执行定义的NSDocumentmakeWindowController方法,该方法从WindowNibName创建窗口控制器 在使用Finder的情况下,一切正常,应用程序按预期启动。但是,如果我使用LaunchService参考中的LSLaun

我正在开发一个基于文档的应用程序。如果我从Finder执行此应用程序,它将按预期运行:首先执行
nsapplicationelegate
applicationdFinishLaunching
方法。然后完成
NSPersistentDocument
初始化。然后执行定义的
NSDocument
makeWindowController
方法,该方法从
WindowNibName
创建窗口控制器

在使用Finder的情况下,一切正常,应用程序按预期启动。但是,如果我使用LaunchService参考中的
LSLaunchFSRefSpec
从另一个应用程序执行基于文档的应用程序,则该应用程序仅显示在Dock内部。没有窗口出现。不会初始化任何
NSPersistentDocument
,也不会执行任何
MakeWindowController
方法。仅调用
ApplicationIDFinishLaunching
方法。 目前,只要我从dock通过单击鼠标激活应用程序,就可以完成窗口控制器的初始化和创建。我还测试了
LSLaunchFSRefSpec
的不同启动标志,但没有成功

是否可以激活应用程序并自动创建其窗口?或者我可以模拟鼠标点击码头图标