用BHO对象给浏览器安装钩子响应文件文件拖放(从桌面到IE)
我在Windows XP Proffessional+VC++6.0下开发BHO(Browser Helper Objects),在BHO对象的构造函数中给IE浏览器安装了WH_GETMESSAGE类型的钩子,用来响应用户把文件拖到浏览器的操作,但是钩子函数却无法捕捉到WM_DROPFILES消息.钩子安装已经确定是正确的.
此外,我在使用GetWindowLong和SetWindowLong函数来替换IE浏览器的WNDProc之后,自定义的窗口函数可以在鼠标拖文件到浏览器上时收到WM_DROPFILES消息,但调用DrapQueryFile获取文件数量时,得到的却是0.更奇怪的是,不论是打开浏览器,还是导航到新页面,都会接收到WM_DROPFILS消息.
注:我的浏览器是IE6.0