插件的一般性问题
如何实现 MyIE2 插件中“配置”按钮?
如何增加新的,或重载现有协议?
如何制作按钮类型的插件?

插件的一般性问题:

1. COM 对象

COM对象必须实现IMyIEClient接口. 具体实现请看IMyIE.h

2. Exe 文件:

任何win32可执行文件都可以做为插件. MyIE2将根据不同的用途传递各种参数, 不保证参数按顺序传递.
.通用参数有:

a. "-h=handle" : handle是MyIE2主窗口的hWnd句柄, 为10进制数字.

3. Script 文件:

待定...


如何实现 MyIE2 插件中“配置”按钮?

在MyIE2插件选项页有一个配置的按钮, MyIE2将会调用相应插件的配置程序来实现各个插件的定制功能.

1. COM 对象:

如果此对象实现了IMyIEClient, 则此对象的IMyIEClient::Config函数会被调用,并传递给它
选项对话框的hWnd句柄.

2. Exe 文件:

将会调用此文件,并传递参数"-setup". 例如文件命为 "abc.exe", 则调用方式将为 "abc.exe -setup ..." .

3. Script 文件:

待定...

如何增加新的,或重载现有协议?

在MyIE2中,插件可以新建一个协议,例如book:// ; 或者重载现有的协议,例如ftp:// .当用户在地址栏
输入相应的地址, 或者在网页上点击相应协议的链接时, MyIE2会调用相应的插件来处理.

1. COM 对象:

待定...

2. Exe 文件:

将会调用此文件, 并传递参数 "-u=url", url为将要访问的链接, 如book://www.mysite.com/abc.pdf, 或者
ftp://www.google.com .

3. Srcipt 文件:

待定...

如何制作按钮类型的插件?

MyIE2支持按钮类型的插件,此类型的插件将出现在“扩展按钮”工具栏上,用户通过点击按钮来调用相应的插件. 可以通过三种方式制作按钮类型的插件。

1.COM:

用户点击按钮时,MyIE2将查询此COM的IOleCommandTarget和IObjectWithSite接口,传递当前页的IWebBrowser2接口到此COM的IObjectWithSite接口,然后调用IOleCommandTarget。类似IE的扩展按钮实现方式,具体请参照MSDN.

Plugin.ini示例:

[General]
Name=ComButton
Author=bloodchen
Version=1.0
ModuleType=COM
FileName=ComButton.dll
CLSID={96E78121-9FF2-466D-B6CD-4038CAC1BB79}
Comments=Com类型Button例子
Type=BUTTON
HotIcon=hot.ico
Icon=cold.ico


2.Script:

用户点击按钮时,MyIE2将在当前页上运行plugin.ini中指定文件中的Script代码。具体请参照例子。

Plugin.ini示例:
[General]
Name=LastModified
Author=bloodchen
Version=1.0
ModuleType=SCRIPT
FileName=LastModified.htm
Comments=See last modified date of current page
Type=BUTTON
HotIcon=hot.ico
Icon=cold.ico

3.Exe:

用户点击按钮时,MyIE2将运行plugin.ini中指定的文件。并传递当前页的地址和MyIE2主窗口句柄做为参数。例如指定的文件为abc.exe,则调用方式将为abc.exe -h=23424 -u=http://www.yahoo.com 其中23424为主窗口句柄,十进制方式。

Plugin.ini示例:

[General]
Name=ExeButton
Author=BloodChen
Version=1.0
ModuleType=EXE
FileName=abc.exe
Comments=Exe类型Button的例子
Type=BUTTON
Icon=p.ico