2013-08-21 21:50
⁄ 科技·视野
⁄ 共 2211字
最近,一些传统领域的大腕似乎对于触网颇感兴趣,比如中国两位教父级企业家张瑞敏和任正非纷纷表示其触网心态。张瑞敏更是直言,传统制造业要么触网要么等待灭亡。而任正非在华为终端内部讲话时多次提到电商战略,似乎给业界传达一种信息,华为要大举进军电商了。不过,在京东、天猫、淘宝等电商叱咤风云的今天,传统制造业虽然规模庞大,资源优势也很明显,但从曾经铺天盖地的电商成立到今天规模淘汰的格局...
任正非, 华为, 电子商务阅读全文
2013-08-20 07:10
⁄ 工业·编程
⁄ 共 1007字
对这些东西的研究起始于项目中一个Prototype的开发。这个Prototype就是给我们的产品加上Log信息。既然是Log信息,那么在应用程序崩溃的时候也要记录发生了什么而导致程序崩溃,而且这个信息对于开发人员来说是非常重要的。为此,在网上搜索了大量的资料来看,英文的中文的,再加上MSDN和那本砖头书《Windows via C/C++》,总算是把Windows下软件开发中对致命异常的处理给搞清楚了。按照我以前的习惯,把学到...
程序崩溃阅读全文
2013-08-20 07:07
⁄ 工业·编程
⁄ 共 4703字
在上篇文章《让程序在崩溃时体面的退出(5):SEH+Dump文件》介绍了怎样用SEH加上Dump文件来避免程序的崩溃并在程序崩溃时创建Dump文件来帮助定位出现异常的代码行。可是只有try/except块中try块中的代码出现异常才能被捕捉到,try块外面的代码出现异常,程序照样会崩溃。 下面用《让程序在崩溃时体面的退出(5):SEH+Dump文件》文中的代码为例子来说明。
/...
程序崩溃阅读全文
2013-08-20 06:59
⁄ 工业·编程
⁄ 共 1954字
在上篇文章《让程序在崩溃时体面的退出(4):SEH》中讲解了SEH中try/except可以捕捉异常,避免程序的崩溃,并且可以在处理完异常之后,还能决定进该进程如何执行。对于应用程序的使用者来说,并不知道异常的发生。但是对于软件的开发者来说,虽然避免了程序的崩溃,可是这样可以让程序崩溃的缺陷存在于代码中,就像一个定时炸弹,不知道什么时候会爆炸。要想修复这样的缺陷,首先要找到导致程序崩溃的那行...
程序崩溃阅读全文
2013-08-20 06:55
⁄ 工业·编程
⁄ 共 3109字
SEH的全称是Structured Exception Handling,是Windows操作系统提供的一种异常处理方式。SEH是属于操作系统的特性,不为特定语言设计,从它的名字就能看出它是一种结构化的异常处理方式。SEH包括了2个部分:终止处理__try/__finally和异常处理__try/__except,下面分别进行介绍。
相关阅读
----让程序在崩溃时体面的退出(3):Dump文件
终止处理__try/__finall...
程序崩溃阅读全文
2013-08-20 06:50
⁄ 工业·编程
⁄ 共 2275字
在我的那篇《让程序在崩溃时体面的退出(2):CallStack》中提供了一个在程序崩溃时得到CallStack的方法。可是要想得到CallStack,必须有pdb文件的支持。但是一般情况下,发布出去的程序都是Release版本的,都不会附带pdb文件。那么我们怎么能在程序崩溃的时候找到出错的具体位置呢?这个时候就该Dump文件出场了!Dump文件是进程的内存镜像,可以把程序运行时的状态完整的保存下来。
...
程序崩溃阅读全文
2013-08-20 06:47
⁄ 工业·编程
⁄ 共 7068字
在我的那篇《让程序在崩溃时体面的退出之Unhandled Exception》中提供了一个捕捉程序崩溃事件的方法,可以添加代码在程序崩溃的时候做出适当的处理。不过,只知道程序在什么时候崩溃,但是不知道为什么崩溃,这对于程序开发者来说没有任何意义。因为如果不知道程序崩溃的原因,就没法去找到代码中的缺陷,当然就没法去修改代码而避免程序的崩溃。
所有调试过代码的开发者都知道Cal...
程序崩溃阅读全文
2013-08-20 06:45
⁄ 工业·编程
⁄ 共 1396字
程序是由代码编译出来的,而代码是由人写的。人非圣贤,孰能无过。所以由人写的代码有缺陷是很正常的。当然很多异常都在开发阶段被考虑到而添加了处理代码,或者用try/catch对可能出现异常的地方进行额外的照顾。可是,还是会有一些无法预料的异常(Unhandled Exception)在程序运行的时候出现。这些异常很多时候都会招致程序的崩溃。那么有没有什么方法可以让程序在崩溃的时候体面的退出呢?答案是肯...
程序崩溃阅读全文
2013-08-19 22:30
⁄ 工业·编程
⁄ 共 3149字
下面是研究微信android 4.2版本的一些结果,不一定正确。
1. 微信android使用的是amr编码;iphone未知,估计是aac,转码会在微信服务器上完成。android上使用了speex这个库,估计是为了达到边录边发。在服务器做格式转换确实比客户端方便多了,用ffmpeg就可以搞定了,也是瘦客户端的一种思路,而且可以依此延伸很多扩展业务。
2. 微信android最新版的数据库依然是sqlite,但文件做了加密,用的是http://sqlcipher.net/
3. 微信...
android, 微信阅读全文
2013-08-18 06:32
⁄ 工业·编程
⁄ 共 6100字
在那篇《在C#中使用C++编写的类》中介绍了如何在C#中使用C++编写的类。可是由于C#在用户界面设计、数据库存储和XML文件读取等方面的优势,有时候也会出现要在C++中使用C#编写的类的情况。下面就用一个完整的实例来说明怎样在C++中使用C#编写的类。
比如说,现在有一个用C#编写的DLL工程CsharpDll里面有一个Person类:
// Person.cs using System; namespace CsharpDll { ...
c++, CSharp阅读全文