Vin*_*nzz 3 c++ safari macos plugins
我有一些代码位于浏览器中,并为IE(COM/ActiveX)和Firefox(NPAPI)编写了C++插件.
我现在必须在Mac OS X上使用此代码.我在Apple的网站上找到了一些输入,但它是用Objective C编写的.
我也读过关于SIMBL的内容,但它似乎只处理Objective C代码,不是吗?
所以这是我的问题:
是否可以为Safari编写纯C++插件(重新使用我的Firefox NPAPI插件会很棒)?
如果不可能,有没有办法使用目标C插件作为某些C++代码的加载器?
我是Mac OS上的总菜鸟,甚至没有Mac Box可以搞乱,因此这是非常通用的问题.
谢谢
NPAPI插件机制是MacOS上浏览器插件的标准机制(和Linux - 除了IE之外的所有东西) - 如果你使用NPAPI,你的插件将适用于Safari,Firefox和Opera.它们也适用于32位和64位Safari.假设您的代码没有假设它在同一个NPAPI代码中运行的浏览器应该适用于所有浏览器(我已经看到"NPAPI"插件可以盲目地动态解决XUL相关功能,即NPAPI仅由Firefox使用,尽管它是或多或少每个非IE浏览器的标准插件格式).
像SIMBL这样的"插件"滥用MacOS API,专门用于独特(但重要)的目的,任意将他们自己的代码注入Safari地址空间 - 当人们使用这些代码时(误导他们认为它是安全的)Safari变得不那么稳定,并经常在重大更新后停止工作(在极端情况下,Leopard"蓝屏死机"是因为罗技使用APE做类似于SIMBL的事情).