IE Toolbar 的实现思路(二)完善篇
1.当从一个IE里在打开新连接的时候,通过新建窗口方式打开,原窗口的删除功能失效
原因:
当IE打开新窗口时,两个IE实际上共享同一个IE ToolBar的DLL,如果是分别从桌面打开IE的程序,他们会分别加载DLL。我在消息拦截函数里,判断消息是否是TextBox的时候,使用了一个
pEditMenuBar的全局指针用于记录ToolBar的指针,并且该指针在ToolBar创建的时候设置,并在ToolBar删除时置空。因为两个IE共享同一个DLL,因此当第二个IE打开后指针被修改,从而导致第一个IE退格键失效。
解决方案:
方案1:在TextBox获得焦点时,重新设置
pEditMenuBar指针
方案2:修改拦截函数,将记录ToolBar的指针,改为记录CEdit的指针
总结:
IE在打开新窗口时会重新创建一个ToolBar,并且这个ToolBar对象