前言:虽然早已下决心不再碰微软的东西,但手头的项目还得需要维护。遇到问题还能解决。
问题由来:
之前的软件开发是基于中文环境开发的,建立项目的时候,选择了中文,为了方便客户使用,我们使用了静态编译的方法,这样用户用我们的软件就不用费尽心思的去装微软的库了,如此以来,像诸如调用“打印预览”功能时,界面上显示的是 “打印”, “下一页”等全部是中文。后期需要做成其他语言的版本。我们自己开发的对话框全是以语言文件的格式来存放的,只需替换语言文件而不需要修改程序就可实现。只是像系统提供的一些对话框比如“打印预览”界面,就无能为力了。先前认为,只要到了英文的操作系统下,那些语言就自动变成了英文,直到客户反馈过来之后,我们才发现,我们错了。到英文的操作系统下,还是中文的。重要原因是我们采用了静态编译,但这种编译方式又不能取消。将软件运行所需要的库打包给用户,现在的操作系统百花齐放,风险也蛮大。刚好手头的事情告一段落,产品经理又找到我想新增一个葡萄牙文的,刚好就琢磨琢磨这件事情。
也在一番无谓的尝试之后,打开工程下的*.rc资源文件。真是淘到宝了。在文件中发现
"#include ""l.CHS\\afxres.rc"" // 标准组件\r\n"
"#include ""l.CHS\\afxprint.rc"&#