高版本Delphi勾子问题

伟志 2015-04-21 05:53:10
在Delphi7下用的是正常的, 但是移植到Delphi2010(及以上的版本)执行到下面的代码的时候就会导致整个程序崩溃:
FHOOK := SetWindowsHookEx(WH_CALLWNDPROC, @HookDataProc, HInstance, tmpThreadID);
SendMessageTimeout(ADataGridHwnd, WM_NULL, 0, 0, SMTO_NORMAL, 3000, tmpResult); // 执行这句的时候,会导致目标进程崩溃。
一直没有找到原因在哪里,特在此请教,谢谢。分数不多了。
...全文
251 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
csdn_zw2014 2017-09-28
  • 打赏
  • 举报
回复
你好,请问最后这个共享内存问题是如何解决的?
蓝色光芒 2015-04-22
  • 打赏
  • 举报
回复
HookDataProc,这个函数有问题
伟志 2015-04-22
  • 打赏
  • 举报
回复
是高版本的Delphi对内存共享规则做了更改,导致在目标程序里运行代码读到共享的内存时出错。 原因找到了,问题已解决。

1,184

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧