WinCE应用程序崩溃提示框的处理

  WinCE的开发人员和WinCE设备的用户应该对下面这两个错误不陌生,"Application encountered a serious error and must shut down"和"出现严重错误,必须被关闭"。WinCE下应用程序崩溃就会弹出这样的提示框,还会发出警告的声音。如果是在车里,那声音还是很刺耳的。不过,说实在的,开发人员看到这个可以接受,程序都是会出BUG的。但用户经常看到就不太应该了。我们应该完善代码,尽可能降低出现应用程序崩溃的概率。

  很早之前写过一篇《WinCE下应用程序错误的解决之道》,文中介绍了一种方法。但实际项目后来并没有采用这种方法,收拾残局不如将其扼杀在摇篮里来的彻底痛快。因为WinCE是不完全开源的,所以最后还是采用了简单粗暴的方式,反汇编showerr.lib,去掉弹出这个出错提示框的代码段。此后在我们的车机上,用户就再也没有看到过如下图所示的错误提示了。

  修改后的WinCE6.0 ARM平台的showerr.lib下载地址如下:

  http://download.csdn.net/detail/sunrain_hjb/9453099

  说明:我们WinCE车机在售时,实在不便分享该技术点。这也是事关产品用户体验的一个小点,有别于其他厂家的车机的。目前我们WinCE车机已经停售半年多了,市场上车机也大都改用Android,现在分享出来,让还在用WinCE做行业设备的同学参考,希望有所帮助。

时间: 2024-11-08 21:24:52

WinCE应用程序崩溃提示框的处理的相关文章

winCE/Windows 应用程序消息提示框自动消失功能

近期在做winCE系统的扫描枪应用程序,遇到了一些问题,其中包括消失提示框在手持终端显示过小, 用户要求提示框提示几秒后自动关闭,Windows平台可以通过调用系统API以定时器的方式进行自动销毁. 不过在winCE上存在不同,由于winCE系统属于精简版的windows系统,所以在API上也是属于精简后的, Windows平台销毁消息框用user32.dll中的FindWindow和PostMessage完成,而winCE平台并没有 user32.dll,不过对应的API在coredll.dl

微信小程序-提示框

提示框: wx.showToast(OBJECT) 显示消息提示框 OBJECT参数说明: 示例代码: wx.showToast({ title: '成功', icon: 'success', duration: 2000 }) wx.hideToast() 隐藏消息提示框 wx.showToast({ title: '加载中', icon: 'loading', duration: 10000 }) setTimeout(function(){ wx.hideToast() },2000) w

提升应用崩溃时的用户体验——去掉烦人的“很抱歉”提示框

相信很多在用或者用过Android系统的的手机的朋友都有过这样的经历:自己玩着玩着某个程序,突然屏幕一黑,然后出现一个对话框,提示很抱歉,应用程序已经停止工作.这意味着程序已然崩溃了,用户唯一要做的就是接下来重新运行这个程序,或者去干些别的.我个人推测,前者占大多数. 当然,一些比较健壮的程序是一般不会出现这种情况的,但是,作为一名对用户负责的开发者,要时刻为用户着想,这就是我们今天要谈的话题--优化程序崩溃时的用户体验. 我们的目标是:程序发生了异常后,自定义异常处理流程,然后自动重新启动程序

程序崩溃, 没有任何提示!没有异常!没有任何错误日志。。。

今天竟然遇到这样一个问题, 好好的tomcat, 执行上传的时候, 原因竟然是hibernate的这一行: Department department = departmentService.queryByPK(Department.class, departmentId); hbm 文件如下: <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE hibernate-mapping PUBLIC &qu

小程序 - 提示框

提示框就比较简单了!(UE) 提示框: 1 var newsData = require('../../data/newsdata.js'); 2 // pages/news/news-detail/news-detail.js 3 Page({ 4 5 /** 6 * 页面的初始数据 7 */ 8 data: { 9 10 }, 11 12 /** 13 * 生命周期函数--监听页面加载 14 */ 15 onLoad: function (options) { 16 // 页面初始化opti

如何定位Release 版本中程序崩溃的位置 ---利用map文件 拦截windows崩溃函数

1       案例描述 作为Windows程序员,平时最担心见到的事情可能就是程序发生了崩溃(异常),这时Windows会提示该程序执行了非法操作,即将关闭.请与您的供应商联系.呵呵,这句微软的“名言”,恐怕是程序员最怕见也最常见的东西了. 在一个大型软件的测试过程中,初期出现程序崩溃似乎成了不可避免的事.其实测试中出现程序崩溃并不可怕,反而是测试的成功.作为开发的我们更需要关心的是程序中的哪个函数或哪一行导致了系统崩溃,这样才能有针对性的进行改正. 本文描述了自己总结的几种定位崩溃的办法.

IOS调试技巧:当程序崩溃的时候怎么办 iphone IOS

转载:http://article.ityran.com/archives/1143 有这样一种情形:当我们正在快乐的致力于我们的app时,并且什么看都是无比顺利,但是突然,坑爹啊,它崩溃了.(悲伤地音乐响起) 我们需要做的第一件事就是:不要惊慌. 修复崩溃不是很困难的.假如你崩溃了,并且胡乱的改些东西,而且还在不停的念着咒语希望bug神奇的自动消失,你大多数情况下都会使情况更麻烦.相反的,你需要知道一些系统的方法,并且学习怎么找到崩溃和他的原因. 第一件需要知道的就是在你的代码中准确的找到cr

未捕获异常,现实程序崩溃闪退

碰到程序崩溃时,闪退效果,不会提示"xxx程序异常,退出程序".这样的效果就要使用到未捕获异常来实现,这里记录了我的一个写法.其实原理很简单,设置程序的未捕获异常监听,实现监听的一个方法,在该方法中现实直接没有提示的退出程序. 捕获异常工具类 package com.tdh.http; import java.io.PrintWriter; import java.io.StringWriter; import java.lang.Thread.UncaughtExceptionHan

iOS:提示框(警告框)控件UIActionSheet的详解

提示框(警告框)控件2:UIActionSheet 功能:当点击按钮或标签等时,弹出一个提示框,显示必要的提示,然后通过添加的按钮完成需要的功能.它与导航栏类似,它继承自UIView. 风格类型: typedef NS_ENUM(NSInteger, UIActionSheetStyle) { UIActionSheetStyleAutomatic        = -1,       //iOS系统自动默认的风格 UIActionSheetStyleDefault          = UIB