知方号

知方号

C#程序已停止工作解决办法

C#程序已停止工作解决办法

C#程序已停止工作解决办法_问题事件名称: CLR20r3解决办法 锐英源原创文章,禁止转载,侵权必究 背景介绍

近期向客户提交个C#开发的软件的测试版本,在开发机器上运行正常,但是在客户机器上运行出错。错误截图类似下图:

因为当时没截图,所以和上图情况不太一样,不过类似,都是说CLR20r3,并且下面问答签名很多,但是报的异常是FileNotFoundException。 发布的软件上个版本正常,新版本不行,比较奇怪,开始认为是不可能的,客户可能环境有问题或者操作错了。后来亲自远程协助客户机器,发现确实这样。

分析过程

软件有问题,一般去查更新。软件新版本涉及到一个组件的DLL,我就看DLL的项目,看它有什么表现。右键点击项目,再点击属性菜单,看到:

发现输出路径和提交的路径不一致。就是说生成的目标路径不是我提交给客户的路径,比如说,我把e:a目录下的文件提交给客户用,但是这个项目输出路径不是e:a,相当于提交的不是最新的,或和可执行文件版本不一致的dll文件。

CLR20r3现象结论

依赖的dll不是最新版本的。在开发机器上是没事,在客户机器上不行。.net好像有文件签名,不一样,认为找不到,FileNotFoundException.

在开发机器上可以用,因为是用项目依赖,开发环境下可以找到最新的DLL,所以没事。而客户机器上没这样的线索,所以报错。

总之,CLR20r3问题来自于环境不匹配。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至lizi9903@foxmail.com举报,一经查实,本站将立刻删除。