码迷,mamicode.com
首页 > 其他好文 > 详细

文件拖拽功能失效,原来是UAC把它过滤了

时间:2017-02-24 12:03:10      阅读:236      评论:0      收藏:0      [点我收藏+]

标签:lte   管理   win   code   nbsp   解决   drop   filter   log   

碰到这样一个问题,文件拖拽功能在没有以管理员身份运行的时候是正常的,但是一旦使用管理员身份运行,这个功能就失效了,搜索了好久总算找到原因了。

在window visa以上版本里引入了用户账户控制(UAC),在管理员权限上会过滤掉一些窗口消息,文件拖拽正好也也被过滤了,解决的方法就是使用ChangeWindowMessageFilterEx()解除过滤

//解除window7以上窗口对该消息的过滤
ChangeWindowMessageFilterEx(hwndDlg, WM_DROPFILES, MSGFLT_ALLOW, NULL);
ChangeWindowMessageFilterEx(hwndDlg, 0x0049, MSGFLT_ALLOW, NULL);//这句不详,但是没它不行
//ChangeWindowMessageFilterEx函数最低版本要window visa,所以要做版本校验

 

文件拖拽功能失效,原来是UAC把它过滤了

标签:lte   管理   win   code   nbsp   解决   drop   filter   log   

原文地址:http://www.cnblogs.com/jiajiafu/p/6437676.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!