none
wince6.0上采用C#开发的GDI绘制静态文本以及走马灯应用程序,出现0XC0000005错误代码,底层同时抛出Data Abort错误,5min后系统自动重启问题 RRS feed

  • 问题

  • 系统底层抛出的错误信息:

     Exception 'Data Abort' (4): Thread-Id=0694029a(pth=8631cc88), Proc-Id=06ac00aa(pprc=849b56a4) 'Player.exe', VM-active=06ac00aa(pprc=849b56a4) 'Player.exe'

    PC=417eb838(mscoree3_5.dll+0x0009b838) RA=417eab6c(mscoree3_5.dll+0x0009ab6c) SP=01fdf82c, BVA=04a80678

    从网上查这种问题主要是指针或者数组指针越界,或者访问冲突等问题。

    应用中在调用SetDIBitsToDevice这个API函数接口时会出现这个错误,关于这个问题,谁有问题排查思路没有?望分享,谢谢。。。。


    2016年7月19日 8:29

答案

  • 问题找到了,这个是我们软件上资源未及时释放,导致内存有泄露;最后通过修改软件代码资源释放以及软件逻辑,,通过长时间大量测试发现问题已解决。
    2016年8月2日 3:59

全部回复

  • 你好,

    根据我的调查,这个函数是在wince5.0上面有MSDN的解释,但是在6.0上面没有找到这个函数的官方文档。所以我建议采用其他方式代替这个函数。

    你可以参考这个链接。

    https://msdn.microsoft.com/en-us/library/ms940019.aspx

    希望我的回复,对你有用,如果你的问题解决了,请及时mark这个帖子.


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place. Click HERE to participate the survey.

    2016年7月21日 8:40
    版主
  • 谢谢你!不过我查了wince6.0底下的源代码,是有这个函数的。

    不过同样的问题,在调用其他的函数也出现了这个问题?会不会跟.net3.5这个服务有BUG相关?如果是跟这个服务相关?有什么办法能知道这个问题原因的?

    2016年7月22日 6:50
  • Hi,

    感谢你的建议,我查了MSDN的相关文档,SetDIBitsToDevice函数.NET的版本是需要4.0或者以后的版本。

    https://msdn.microsoft.com/es-cl/library/ee503196(v=winembedded.60).aspx

    https://msdn.microsoft.com/en-us/library/ms940019.aspx?f=255&MSPPError=-2147217396

    这个两个链接都是说明,使用此函数需要.net 4.0或者以后版本。

    至于是不是这个.NET版本原因导致系统奔溃, 这个我查找了相关资料,无从查证。

    不过我还是建议你使用高版本的.NET


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place. Click HERE to participate the survey.

    2016年7月22日 7:18
    版主
  • 你好!感谢你的回复,我看到这个MSDN的解释了,那你知道wince6.0上怎么升级这个.net服务到更高版本吗?有没有4.0以上的安装包什么的?
    2016年7月22日 8:32
  • 这儿有个.NET 4.1版本,希望对你有所帮助。

    https://www.microsoft.com/en-us/download/details.aspx?id=17787


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place. Click HERE to participate the survey.

    2016年7月22日 8:55
    版主
  • 你好!我下载了这个资源,但是在我的wince6.0系统开发环境下无法安装这个包?提示信息如下所示:

    PS:我当前的开发环境是platform builder6.0,而且我已经把补丁包更新到2014年了,在这个新的系统环境下还是存在GDI绘图时mscoree3_5.dll报错的问题(软件上提示的还是0xc0000005的错误代码);此外,我在软件的调用接口上也更换了其他的接口,也还是会存在这个问题,我现在有点怀疑这个是微软的.NET的一个BUG,但是无从查证,你还有其他什么思路能查到这个问题根源吗?

    2016年7月26日 3:23
  • 问题找到了,这个是我们软件上资源未及时释放,导致内存有泄露;最后通过修改软件代码资源释放以及软件逻辑,,通过长时间大量测试发现问题已解决。
    2016年8月2日 3:59
  • hi,

    谢谢,分享你的答案。

    Best Regards,

    Hart


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place. Click HERE to participate the survey.

    2016年8月6日 3:47
    版主