zoukankan      html  css  js  c++  java
  • C#程序双击运行之后,界面不显示,但是在任务管理器有进程(一个winform找bug之旅)

    最近客户端又出了奇葩事情:http://q.cnblogs.com/q/43038/ 如这篇博问一样。我的一个客户的电脑上程序打开了,进程也有了,就是界面窗体出不来!!!

    我是win7是开发机,三四台测试虚拟机,都是xp的。都可以完美运行。但是客户那么就是出现了那么多问题,谁叫着软件用户多呢,有一万多的用户。然后就会有一万多的奇葩电脑,50%的xp,50%的win7。win7自当是没有事情,问题基本都是xp引起的。真的是xp引起的血案。一开始的常规思路是客户机的运行库是否按照正确,结果是2.0的程序,安装了3.5还是运行失败。说明不是.net的问题。接着开始找第三方dll的问题,结果是都已经初始化成功,切全局的不会保存(有全局的log记录)。顿时觉得很无解。之后开始二分法打log。先找初始化的问题。Program.cs的log打完,发现在Application.Run()是运行了,那就是但是方法之后却是没有跑下去,那就是窗体的构造函数里面打log,发现InitializeComponent()方法之后没有log出现,而之前却是有log,然后开始看漫长的InitializeComponen初始化文件(大家都知道对于复杂的窗体这个文件不要太长的)。功夫不负有心人,经过漫长的二分法查找,终于定位出是一个字体出现了问题(期间也感谢客户的配合)。原来是我的客户机没有微软雅黑这个字体,导致渲染的时候直接运行不下去,而且也不报错,直接死在哪里。最后直接在客户机上安装微软雅黑字体,得到解决。从出现错误到解决,一个下午过去了。话说这问题也是有趣啊!!!

  • 相关阅读:
    修改linux的hostname (修改linux系统的IP和hostname)
    linux自动ftp上传与下载文件的简单脚本
    Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password)
    用SQL命令查看Mysql数据库大小
    linux screen 命令详解
    mysql常用命令
    Linux 设置mysql开机启动
    源码编译mysql 5.5+ 安装过程全记录
    nagios-plugins安装报错--with-mysql: no
    Spark 中在处理大批量数据排序问题时,如何避免OOM
  • 原文地址:https://www.cnblogs.com/RainbowInTheSky/p/4782129.html
Copyright © 2011-2022 走看看