67194:67194 > 卡死
  • WinCE7.0_FindWindow函数在线程中调用卡死的现象(1)

    WinCE7.0_FindWindow函数在线程中调用卡死的现象(1)

    遇到一个问题,开发的程序莫名其妙的卡死了!这个程序是运行在一个大环境中,我的程序并未更新。但从现象上来看,确实是我的程序在接收到UI 通过SendMessage 发来的消息后,在处理中引起卡死的现象。将我的这个程序,放在之前的版本中,就不会出现卡死的问题。虽然开始怀疑不是自己程序的问题,但还是先从自己的程序入手,希翼能找到卡死的原因。最后确定的原因让我吃惊,竟然是FindWindow 函数调用后没有返回,引起卡死的现象出现。因为在多处增加LOG 输出后,发现有:start call FindWindow.输出,但无:end of call FindWindow. 输出!查看此处代码,发现自己以前竟然遇到过类似的问题。但是由于另外一句FindWindow 是测试用的,所以当时只是简单的将它注释了,然后写上了注释掉它的原因。如下面的代码所示:RETAILMSG(1,(L"start?call?FindWindow.rn")); //?hAgent?=::FindWindow(NULL,L"TestAppWinName");??????????????????//此句放在线程中引起线程卡死 hClient?=::FindWindow(NULL,L"Test2AppWinName"); RETAILMSG(1,(L"end?of?callFindWindow.rn"));现在的卡死问题的原因下面这句:hClient = ::FindWindow(NULL,L"Test2AppWinName"); 引起的。?通过远程工具:Remote Spy 查看出错前与出错后的进程信息,对比发现被查找的窗体的窗体名从:Test2AppWinName 变为空了。但通过远程工具:Remote Process Viewer 查看进程时,被查找的窗体名是正确的,还是:Test2AppWinName。在出错后,另写一个简单的程序,通过FindWindow 查找上面的窗体时,可以正确查找到。?以下通过远程工具截取的进程与窗体名等相关信息的图片:1)正确的情况下:2)错误的情况下:两幅图最大的区别就在于“Window Property”中的“Window”的内容。其实,问题的原因还没有找到,还需要继续。后续的分析,见:WinCE7.0_FindWindow函数在线程中调用卡死的现象(2)

    时间:2018-11-06 关键词: wince7.0 findwindow 卡死

发布文章

技术子站

更多

项目外包

更多

论坛活动

  • ADI视频课堂精品上新-观看有礼
    ADI视频课堂精品上新-观看有礼
  • 文件大作战:春风吹,战鼓擂,是德科技喊你玩匹配
    文件大作战:春风吹,战鼓擂,是德科技喊你玩匹配
  • FPGA供电怎么搞?学习MPS方案赢好礼
    FPGA供电怎么搞?学习MPS方案赢好礼
  • 21ic下载站“资源奖励计划”升级!再发3450元~
    21ic下载站“资源奖励计划”升级!再发3450元~
更多

资料下载

  • 【网盘】Altium Designer PC
  • Altium Designer PCB设计指
  • 51单片机的水流量计流量报警器设计源代码
  • multisim14可用元件库
  • 滤波器设计与信号处理的matlab实现
  • 51单片机自动校时万年历设计
  • 基于51单片机智能浇花水系统灌溉设计土壤湿度
  • 基于STM32F030额温枪方案(PCB+源
更多

公 开 课

  • 经验之谈,如何从新人小白变技术大牛
    经验之谈,如何从新人小白变技术大牛
  • 从入门到精通之51单片机-入门原理篇
    从入门到精通之51单片机-入门原理篇
  • at89c51 单片机 汇编 实验 教程 刘健老师(80课时)
    at89c51 单片机 汇编 实验 教程 刘健老师(80课时)
  • 清华大学-微型传感器
    清华大学-微型传感器
XML 地图 | Sitemap 地图