delphi WIN10下Message无法接收的问题


本文整理自网络,侵删。

 
在win10下有些消息无法被正常的接收,比如:
WM_COPYDATA 数据传递
WM_DROPFILES 文件拖拽
这是因为系统为了安全屏蔽了,如果要打开这些消息需要用一个API开启
ChangeWindowMessageFilter
https://msdn.microsoft.com/en-us/library/ms632675

ChangeWindowMessageFilter 函数  
从用户界面特权隔离 (UIPI) 消息过滤器,添加或删除一条消息。  
语法  
BOOL WINAPI ChangeWindowMessageFilter(  
  __in UINT message,  
  __in DWORD dwFlag  
  );  
参数  
message  
要从过滤器添加或删除的消息。  
dwFlag  
要执行的操作。为下列值之一。  
MSGFLT_ADD 添加消息到过滤器,这相当于允许接收该消息。  
MSGFLT_REMOVE 从过滤器中移除消息。这相当于阻止该消息。  
返回值  
如果成功返回true,否则返回false。要获取扩展的错误的信息,请调用GetLastError .  

比如 ChangeWindowMessageFilter(WM_COPYDATA,MSGFLT_ADD);

相关阅读 >>

Delphi 7zip 示例调用7z.dll 压缩及解压.7z文件

delphDelphi chromium embedded 清除指定链接浏览器缓存、cookies

Delphi 实现显示文件目录大小

Delphi 执行cmd并取得返回值

Delphi窗口界面必学的知识

Delphi cookie获取及使用

Delphi 使用钩子函数 - 钩子链和 callnexthookex 的返回值

Delphi配置文件ini

Delphi添加任务栏右键菜单

Delphi模仿“千千静听”滚动标题栏

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...