背景描述: 今天要测试一份注入代码,拿以前写的创建窗口的DLL来做测试. 第一次注入时一切正常,窗口被成功创建并显示,但在第二次加载时窗口没有显示出来. 经过研究发现在第二次加载DLL时RegisterClass会调用失败,进而导致CreateWindow失败,自然就不会显示窗口了. 原因如下: MSDN中对RegisterClass的描述有这样两句话: All window classes that an application registers are unregistered when…
一丶接口IObjectWithSite //BHO项目(类库)添加引用两个COM //Microsoft HTML Object Library, Microsoft Internet Controls; using System.Runtime.InteropServices; namespace TestBho { [ComVisible(true), InterfaceType(ComInterfaceType.InterfaceIsIUnknown), Guid("FC4801A3-2B…