VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 1063|回复: 0

[交流] 关于对话框拖拽文件无法被响应的问题

[复制链接]
14_avatar_middle
online_supermod 发表于 2016-6-1 23:47:16 | 显示全部楼层 |阅读模式
3驿站币
本帖最后由 venblue 于 2016-6-2 00:03 编辑

网上解释是这一样:

在Vista和Win7上,由于UAC的限制,WM_DROPFILES只能由权限较低的APP拖拽到权限较高的APP,反之如果从权限较高的APP拖拽到低权限的APP上,WM_DROPFILES不会被发送到低权限的APP消息队列。
所以,WM_DROPFILES会有时候变得不能响应。
解决的办法,使用ChangeWindowMessageFilter注册WM_DROPFILES这个MEESSAGE。

通过以下两句代码解决
添加在oniitdialong函数里面
  1. ChangeWindowMessageFilter(WM_DROPFILES, MSGFLT_ADD);
  2.         ChangeWindowMessageFilter(0x0049, MSGFLT_ADD);
复制代码


ChangeWindowMessageFilter是Vista以上的一个API,WinXP下并没有。
这个API在User32.dll中,使用时LoadLibrary,GetProcAddress得到函数地址就能使用。

由于新手问题我也无法对这个解释太多,反正用了网上的方法是成功解决无法接收消息的问题

因为现在基本都是WIN7或更高版本了希望SYC老是能帮忙解释解释@Syc





上一篇:求助!急!
下一篇:用ADO连接数据库问题
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号tongdun|网站地图wx_jqr

GMT+8, 2019-5-24 14:03

Powered by Discuz! X3.4

© 2009-2019 cctry.com

快速回复 返回顶部 返回列表