繁体   English   中英

没有NSApplication实例的Mac OS X应用程序是否可以?

[英]Is it OK to have Mac OS X application without an NSApplication instance?

在Info.plist中,我有一个键“Application is background only”,其值为“Yes”。 大多数代码都是用C ++编写的。

通常的最后一行

return NSApplicationMain(argc, argv);

在main()中删除。 相反,main会启动一些线程,阻塞并在某些条件下等待退出。

是的,没关系。 NSApplication在AppKit中声明,因此仅在GUI应用程序中使用。 应用程序可以使用Foundation,它不需要NSApplication。

是的,不是。

你可以拥有一个没有它的进程(通俗地说是一个应用程序),它可以在Unix方面正常工作,并且就像任何其他无头进程一样。

你不能拥有的是一个完整的Cocoa应用程序意义上的应用程序,因为NSApplication (或子类)的实例不仅仅是你的应用程序的一部分,在非常真实的意义上,主应用程序对象应用程序。 阅读Info.plist,挂钩到Cocoa应用程序系统,Applescript系统等等都是由NSApplicationMain()完成的,这使得它成为资本A应用程序的要求。

你可以自己设置一些这些东西,但我不知道有什么方法可以这样做,即使我这样做了,我也不会推荐它。 如果您希望程序的行为类似于应用程序并与Cocoa方面进行交互,请return NSApplicationMain(argc, argv); 是等待结束main()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM