问候!Mac OS X:一个进程可以渲染到另一个进程的窗口吗?
我目前正在将一个web浏览器插件从Win32移植到MacOSX。插件的一个特点是,当插件被加载时,它产生一个单独的进程,作为插件的“引擎”,并执行绘制操作到插件的窗口中(具体地说,通过将OpenGL上下文附加到父进程的窗口并在该上下文中执行OpenGL渲染命令)。我们这样做是因为插件通常作为浏览器进程中的线程加载,因此插件崩溃会导致整个浏览器崩溃。通过将“繁重”分解为单独的流程并保持插件代码非常纤薄,我们可以保护用户免受此类崩溃。
我想在MacOSX上保留这个子进程渲染器体系结构,但是我听到一个令人讨厌的传言(与Google Chrome浏览器有关),MacOSX不允许进程访问它窗口到另一个进程。我在这个领域的搜索一直没有结果;如果任何人对这个问题有任何的了解,并且可以提供一些关于如何实现这个目标的建议,或者是一个更加决定性的“不可能完成”的建议,那么这将非常有帮助。
谢谢你的帮助!
这个发现可能是你的兴趣。 http://developer.apple.com/DOCUMENTATION/CoreFoundation/Conceptual/CFPlugIns/CFPlugIns.html – Jonathan 2009-02-28 00:41:30
这与原始海报的要求没有任何关系。 – 2009-03-10 03:10:21