问题 昨天更新了代码,小组成员均可正常运行程序。 而lt下载了源码运行程序,可是“打开XX”功能一点击,程序就崩溃了。异常也并非来自的程序本身而是系统的异常。 异常类似如下图: 他的基本情况:win7系统,svn较早版本,delphi2007,之前一切正常,下载的代码都能运行。只有昨晚更新svn代码时出现了异常(没有留意,具体信息已无法复述), 通过种种方式验证,判断代码没有问题, 怀疑是delphi的问题,于是重装了delphi,问题依旧。 开始怀疑系统问题,将系统还原后,安装delphi,程序可以正常原因。【当时都基本认定是是系统的问题】 可是安装svn后,程序又出现了问题。难道和svn有关? 在程序崩溃后,delphi即进入了调试阶段,这个时候,我们在调试窗口的中call stack中发现了会调用TortoiseSVN.dll这个dll.也就是delphi在Run程序的时候,还关联了svn. 怀疑是和源代码中.svn这些文件夹有关,手动删除后继续运行程序,问题依然。 在最后把死马当活马医的情况下,我们利用360的软件更新功能,将svn更新到了最新版,1.6.15.21041 问题就这样解决了。 初步估计,应该是svn与delphi冲突引起的。以前没有问题,而现在出现了问题。应该和新版代码中使用了TOpenDialog控件有关。 总结如下:很多异常情况需要冷静的对待,并非来自我们的代码,也有可能是开发环境的原因,需要利用排除法一个一个减小判断的范围,从而找到最终原因。虽然上述情况中我们具体原因还不清楚,但是终究是解决了问题,没有因此影响到开发进度。