Cocoa:在运行时添加另一个停靠图标

时间:2011-09-11 15:06:46

标签: objective-c macos cocoa objective-c-runtime

是否可以在运行时向Dock添加另一个图标而不使用[NSWorkspace launchApplication:]

如何?


在你说'不'之前:我愿意使用像fork()等的东西。

我实际上尝试了fork(),但我收到了错误:

The process has forked and you cannot use this CoreFoundation functionality safely. You MUST exec().
Break on __THE_PROCESS_HAS_FORKED_AND_YOU_CANNOT_USE_THIS_COREFOUNDATION_FUNCTIONALITY___YOU_MUST_EXEC__() to debug.

2 个答案:

答案 0 :(得分:1)

启动另一个应用程序,例如[NSWorkspace launchApplication:]

答案 1 :(得分:0)

如果你想在Dock上添加一个额外的图标,Yuji的答案是最简单的解决方案 如果要更改应用程序的现有图标,可以创建Dock tile插件 Snow Leopard引入了这些插件,即使您的应用未运行,它们也可以显示小信息。 (就像iCal的图标一样,它总是显示当前日期)。

Apple的Dock tile插件文档:http://developer.apple.com/library/mac/#documentation/Carbon/Conceptual/customizing_docktile/CreatingaDockTilePlug-in/CreatingaDockTilePlug-in.html#//apple_ref/doc/uid/TP30000986-CH4-SW1