阅读:7449回复:5
给新手指点一下好吗?我想写一个插件,但是我不知道该怎么写。
我想用C写一个插件,它的功能就是读一个文件,然后用javascripte去调用它。我该怎么写啊?
谢谢了!能给出一个类似的例子吗?引导一下。 谢谢了!!!!!! |
|
1楼#
发布于:2006-01-09 14:13
帮一下忙好吗?
也许这个问题对做过的人来说是一件非常简单的事,但是对像我这样的新手来说可是很难的。指点一点好吗? 再一次表示感谢!!!!!! |
|
2楼#
发布于:2006-01-09 14:13
1. 看了几天来的\mozilla\modules\plugin\tools\sdk\samples”下的的例子,
现在终于有点思路了。但还不是非常的清楚。猫头猪你能指点一下吗? 1:插件能用纯C写吗?(我看到的例子都是用C++写的。) 2:我看了你的答复: https://www.firefox.net.cn/newforum/viewtopic.php?t=2167 2:在 1. http://lxr.mozilla.org/seamonkey/source ... lePeer.cpp 和 plugin.cpp 下有几个函数什么时候被调用我不太清楚: NPError nsPluginInstance::GetValue(NPPVariable aVariable, void *aValue) NPBool nsPluginInstance::init(NPWindow* aWindow) 3:initialize the plug-in时它都调用到了哪此函数? 是调用这个吗? NPError NS_PluginInitialize() { return NPERR_NO_ERROR; } 还是调用这个 NPBool nsPluginInstance::init(NPWindow* aWindow) 啊?我觉得应该是调用第一个。 4:create a new instance of the plug-in时它调哪个函数? 是调用这个nsPluginInstanceBase * NS_NewPluginInstance(nsPluginCreateData * aCreateDataStruct) { if(!aCreateDataStruct) return NULL; nsPluginInstance * plugin = new nsPluginInstance(aCreateDataStruct->instance); return plugin; } 吗? 谢谢了!!! 我的MSN:adong127@hotmail.com email:adong27@yahoo.com.cn 再一次表示感谢!!! |
|
3楼#
发布于:2006-01-09 14:13
我去http://forum.maxthon.com/forum问了abc@home,他说这方面的他也不太熟悉。
希望猫头猪或者是那一位能指点我一下。 谢谢了! |
|
4楼#
发布于:2006-01-09 14:13
今天终于能把/sample/scriptable/windows/的程序跑起来了,原来还得把.xpt的文件放在组件文件夹里,呵呵,心里有点底了。
但我还没在/sample/scriptable/uinx/的程序试一下。可能会比较麻烦。但不管什么样,我会努力的! 有谁在linux下编译过的能指点一下吗? 谢谢了! |
|
5楼#
发布于:2006-01-09 14:13
插件开发曾经使用过XPCOM。但是已经不推荐了。现在仍然推荐C接口的NPAPI。如果是想开发scriptable的插件,直接传XPCOM也过时了,现在推荐的接口是http://www.mozilla.org/projects/plugins/npruntime.html
大家可以参考: https://www.firefox.net.cn/newforum/viewtopic.php?t=2167 这个是猫头猪答复的一个帖子。 我在别的网站上问的,大家可以去看一看: http://forums.mozillazine.org/viewtopic.php?t=368629 这个是他们写的一个例子: http://www.extensionsmirror.nl/index.php?showtopic=4422 |
|