前言:尽管早已下决心不再碰微软的东西,但手头的项目还得须要维护。

遇到问题还能解决。

问题由来:

之前的软件开发是基于中文环境开发的,建立项目的时候,选择了中文,为了方便客户使用。我们使用了静态编译的方法,这样用户用我们的软件就不用费尽心思的去装微软的库了,如此以来。像诸如调用“打印预览”功能时,界面上显示的是 “打印”, “下一页”等所有是中文。后期须要做成其它语言的版本号。我们自己开发的对话框全是以语言文件的格式来存放的,仅仅需替换语言文件而不须要改动程序就可实现。仅仅是像系统提供的一些对话框比方“打印预览”界面,就无能为力了。先前觉得。仅仅要到了英文的操作系统下。那些语言就自己主动变成了英文。直到客户反馈过来之后。我们才发现,我们错了。到英文的操作系统下,还是中文的。重要原因是我们採用了静态编译,但这样的编译方式又不能取消。将软件执行所须要的库打包给用户。如今的操作系统百花齐放。风险也蛮大。刚好手头的事情告一段落,产品经理又找到我想新增一个葡萄牙文的,刚好就琢磨琢磨这件事情。

也在一番无谓的尝试之后,打开project下的*.rc资源文件。真是淘到宝了。

在文件里发现

"#include ""l.CHS\\afxres.rc""      // 标准组件\r\n"

 "#include ""l.CHS\\afxprint.rc""    // 打印/打印预览资源\r\n"

#include "l.CHS\afxres.rc"      // 标准组件

#include "l.CHS\afxprint.rc"    // 打印/打印预览资源

既然是打印/打印预览资源,那就去看看究竟是什么玩意吧。在VC2010安装文件夹下搜索,发现了好几个这种文件例如以下图:

近期刚刚攻克了linux环境下中文字符的问题,所以对CHS还是比較敏感的,那不就是中文的意思嘛,其它几个。不用问肯定是别的语言了,第一个灭有语言表示的,事实上就是英文,谁让vc是美国佬开发的呢。拷贝出l.chs下的afxprint.rc看看,发现了例如以下图:

改动项目project下的*.res,使其指向相应的文件,就ok了。

解决问题的经验就是。做的久了,对问题有一定的敏感性。先是用 打印预览的ids搜索整个project,一一浏览。结果在.res发现端倪。假设你不知道afxres.rc是干嘛用的,去中文文件夹下拷贝一个看看吧。多动手才干提高。

怎样改动 VC6.0 4.0 2010 打印预览界面上的文字的更多相关文章

  1. ReportViewer 2010 打印预览,用鼠标快速切换显示比例时报错:存储空间不足,不能处理此命令

    CreateCompatibleDIB 存储空间不足 无法处理此命令 安装 ReportViewer 2010 sp1 即可.

  2. CVE-2013-3908 Internet Explorer打印预览功能可导致信息泄露

    原文:http://masatokinugawa.l0.cm/2014/11/ie-printpreview-infoleak.html 问题1: 在IE9和以前的版本当中进行打印预览操作时,IE会取 ...

  3. Spring Boot 2.0系列文章(五):Spring Boot 2.0 项目源码结构预览

    关注我 转载请务必注明原创地址为:http://www.54tianzhisheng.cn/2018/04/15/springboot2_code/ 项目结构 结构分析: Spring-boot-pr ...

  4. .NET网页打印以及使用打印需要注意的事项(可能会引起VS崩溃的现象、打印预览后关闭功能不管用)

    这两天进行给网页添加打印.打印预览.页面设置的功能.遇到了以下几个问题 [1]在网上查找了一些打印方法,一开始还可以用,后来不知道动到了哪里,点击vs中拆分或者切换到另一个设计和源代码显示方式,就会引 ...

  5. JS 打印功能代码可实现打印预览、打印设置等

      <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.or ...

  6. MyReport:DataGrid的打印和打印预览

    本文说明怎样使用MyReport来实现Flex DataGrid组件的自己主动化打印预览和打印功能. 实现代码 <? xmlversion="1.0" encoding=&q ...

  7. C#实现打印与打印预览功能

    C#实现打印与打印预览功能的思路及代码. 在windows应用程序中文档的打印是一项非常重要的功能,在以前一直是一个非常复杂的工作,Microsoft .Net Framework的打印功能都以组件的 ...

  8. C#教程之打印和打印预览

    最近研究一了一下关于PDF打印和打印预览的功能,在此小小的总结记录一下学习过程. 实现打印和打印预览的方法,一般要实现如下的菜单项:打印.打印预览.页面设置. PrintDocument类 Print ...

  9. C#实现打印与打印预览功能(转)

    在windows应用程序中文档的打印是一项非常重要的功能,在以前一直是一个非常复杂的工作,Microsoft .Net Framework的打印功能都以组件的方式提供,为程序员提供了很大的方便,但是这 ...

随机推荐

  1. 解决PopupWindow的阴影覆盖问题

    版权声明:本文为xing_star原创文章,转载请注明出处! 本文同步自http://javaexception.com/archives/108 PopupWindow阴影覆盖问题 最近这段时间需求 ...

  2. WordPress浏览次数统计插件:WP-Postviews使用

    WP-Postviews使用 1.要让你的博客在页面上显示浏览次数,你需要修改你博客当前使用的主题,在主循环中插入以下代码: 1 <?php if(function_exists('the_vi ...

  3. 经典C/S服务器模型之守护进程

    linux编程-守护进程编写 守护进程(Daemon)是运行在后台的一种特殊进程.它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件.守护进程是一种很有用的进程. Linux的大多数服务 ...

  4. Spring AOP理解

    Spring的核心思想的IOC和AOP.最近学习AOP,对切面的学习有了进一步的认识. Spring用代理类包裹切面,把他们织入到Spring管理的bean中.也就是说代理类伪装成目标类,它会截取对目 ...

  5. 服务器控件使用eval()绑定属性出现服务器标记的格式不正确

    在使用asp.net服务器端控件的时候,想要动态绑定控件某属性的值,或者动态绑定控件事件方法的参数,例如一个<asp:RadioButton ID="RadioButton5" ...

  6. Java代码运用及算法思路养成——用*号输出形状

    简单的了解了一些循环算法后,尝试用循环算法,输出形状图形 例1矩形与平行四边形的比较(可以看做矩形的每一行在输出前都输出了矩形长度数量-1的空格数量并且依次递减) 例2三角形(三角形可看做半个矩形,考 ...

  7. java操作Excel的poi的简介

    一.POI概述 Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能. 结构: HSSF - 提供读写Mi ...

  8. MongoDB经典入门(1)--安装

    一.前言 最近开始学习非关系型数据库MongoDB,却在博客园上找不到比较系统的教程,很多资料都要去查阅英文网站,效率比较低下.本人不才,借着自 学的机会把心得体会都记录下来,方便感兴趣的童鞋分享讨论 ...

  9. 机器学习之TensorFlow编程环境_TensorFlow_Estimator

    title: Machine-learning subtitle: 1. 机器学习之TensorFlow编程环境_TensorFlow_Estimator date: 2018-12-13 10:17 ...

  10. Docker镜像的备份和恢复

    备份: docker save -o [tar包真实路径] [镜像名 ] 如:docker save -o /usr/docker_data/mongo-backup.tar mongo   导出: ...