Win7系统Bug,导致VB自启动程序中文出现口口口乱码
我在配置比较低的机器上测试VB6写的程序,这个程序是在注册表RUN中注册的,所以每次都会随系统启动。结果发现,如果有时候系统启动得快,登录后听到"叮"的那个启动音之前我的程序就启动的时候,我的这个程序上面的中文都是口口口来显示,但是等一会儿后只要触发窗口重绘就会把中文显示出来。
这个程序使用的是Arial字体。测试机器是Eeepc 900,Win7是sp1。所以怀疑是Win7的Bug,Win7没等到所有字体都注册完毕就启动RUN中的程序了,不知有什么解决办法?
[解决办法]
换一个字体。
[解决办法]
再试试改字体
字体对话框右下角有个字符集的选项是很重要的。
Arial 字体是没有 CHINESE_GB2312 字符集的,所以中文字符是无法真正用 Arial 字体显示的;
在正常的中文系统中,就会改用用系统默认的字体(应该是宋体)进行显示。
而你所说的某个启动时刻,可能系统的默认字体还没有载入,所以显示为乱码。
改用宋体,并且字符集一定要选用 CHINESE_GB2312 再试试。