h2023197
驱动牛犊
驱动牛犊
  • 注册日期2006-03-22
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分193分
  • 威望110点
  • 贡献值0点
  • 好评度19点
  • 原创分0分
  • 专家分0分
阅读:2205回复:6

我在做pxa270的lcd驱动时,gwes.exe出现错误!

楼主#
更多 发布于:2009-03-18 14:50
各位高手:

               用release版本把wince跑起来的时候,只要用触摸屏操作几次屏幕,就会出现gwes.exe崩溃,具体见下:
Data Abort: Thread=83ea9d58 Proc=8112c620 'gwes.exe'
AKY=00000031 PC=039cefb8(pxa27x_lcd.dll+0x0001efb8) RA=0000000a(???+0x0000000a) BVA=0a6afdb4 FSR=000004f6
              我查看了pxa27x_lcd.map文件,发现是在
0001:0001df34       ?EmulatedBltFill16@Emulator@@QAAJPAUGPEBltParms@@@Z 1001ef34 f   gperotate:ebfill16.obj
 0001:0001dfec       ?EmulatedBltSrcCopy0116@Emulator@@QAAJPAUGPEBltParms@@@Z 1001efec f   gperotate:ebcp0116.obj
执行EmulatedBltFill16函数是出现了错误,问题是我查看了这个函数,如下:
__inline
SCODE
EmulatedBltFill16_Eml(
    GPEBltParms * pParms
    )
{
    DEBUGMSG(GPE_ZONE_BLT_HI,(TEXT("EmulatedBltFill16\r\n")));

    UINT32   iDstScanStride = pParms->pDst->Stride();
    BYTE   * pbDibBitsDst   = (BYTE *)pParms->pDst->Buffer();
    PRECTL   prcDst         = pParms->prclDst;
    DWORD    dwOnColorIndex = pParms->solidColor;
    int      iNumDstRows    = prcDst->bottom - prcDst->top;
    int      iNumDstCols    = prcDst->right  - prcDst->left;

    // Compute pointer to the starting rows in the dst bitmap
    WORD *pwDstScanLine = (WORD *)(pbDibBitsDst + prcDst->top * iDstScanStride + prcDst->left * 2);
    WORD  wColor = (WORD)dwOnColorIndex;

    EmulatedBltFill16ASM(pwDstScanLine, wColor, iNumDstCols, iNumDstRows, iDstScanStride);
    return S_OK;
}
没有看出来有啥问题。搞了好几天了,不知有没有高手遇到过这个问题,望赐教!
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2009-03-19 15:15
问题应该不在EmulatedBltFill16这个函数
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2009-03-19 15:18
你用键盘操作看看是否正常,错误看是显示驱动问题,和触摸关系不大
你可以精确定位下错误位置
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
地板#
发布于:2009-03-19 15:21
引用第1楼AllenZh于2009-03-19 15:15发表的  :
问题应该不在EmulatedBltFill16这个函数

问题根源应该不在EmulatedBltFill16这个函数
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
h2023197
驱动牛犊
驱动牛犊
  • 注册日期2006-03-22
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分193分
  • 威望110点
  • 贡献值0点
  • 好评度19点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2009-03-23 15:54
如果不是出现在这个函数上,那应该怎么来找出这个错误呢?
h2023197
驱动牛犊
驱动牛犊
  • 注册日期2006-03-22
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分193分
  • 威望110点
  • 贡献值0点
  • 好评度19点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2009-03-23 15:55
谢谢AllenZh,我的这个案子目前没有带键盘,只能用触摸屏。
tracera
禁止发言
禁止发言
  • 注册日期2006-01-09
  • 最后登录2018-09-25
  • 粉丝8
  • 关注0
  • 积分-5788分
  • 威望135321点
  • 贡献值0点
  • 好评度625点
  • 原创分1分
  • 专家分0分
  • 社区居民
6楼#
发布于:2009-03-25 13:05
用户被禁言,该主题自动屏蔽!
游客

返回顶部