这几天正在Porting一个Linux的firefox plugin到Windows上,对于在Windows上开发NPAPI的Plugin网上有篇文章写的很不错,可以参考下面的链接NPAPI开发详解,Windows,关于在Windows上开发和调试依据近期遇到的问题补充几点:
1,Plugin的安装,文章上说使用注册表,但是我实验了一下似乎不太好用,也许是firefox的版本升级使其对于plugin的安装进行了更新。在新版本中直接把plugin的dll拷贝到firefox安装目录的plugins目录即可。例如我电脑上的plugin目录为C:\Program Files (x86)\Mozilla Firefox\plugins。
2,Plugin的调试,有些文章中介绍使用Attach to Process的方式,这种方式是可以的,只是Attach的process不是firefox本身,而是一个叫做plugin-container.exe的process,应该是firefox已经把plugin的管理放到了这个进程中来做了。
3,打印调试信息,即使使用firefox.exe -console的方式启动firefox对于printf的打印也不能在控制台显示出来,不过可以使用OutputDebugString函数输出打印信息,然后使用DbgView进行接收,这样调试比较方便,尤其是有些实时或者多线程的调试。