PowerBuilder程序升级到PB10:问题与解决方法

需积分: 31 20 下载量 188 浏览量 更新于2024-09-10 1 收藏 66KB DOC 举报
"PB9以下版本的程序升级到PB10以上版本说明" 在进行PowerBuilder (PB) 低版本程序升级到PB10及以上版本时,会遇到一些兼容性和编码问题。PowerBuilder 7、8、9的程序由于其内部编码方式和PB10的不同,可能会导致源码在升级过程中出现错误。主要原因是源码中可能包含了一些特殊ASCII码字符,比如版权符号(c) (ASCII码A9)、空格替代符(A0)、左方括号(91)和右方括号(92)等,这些字符在PB10的编辑环境中可能导致导入失败或显示异常。 解决这个问题的方法通常包括以下几个步骤: 1. **批量导出对象**:使用Pwrgn#.exe工具(对应不同版本的PB)将所有PB对象导出为文件。这个工具可以帮助我们将程序的源码以文本形式保存,便于后续处理。 2. **查找并替换特殊字符**:利用WinHex这样的十六进制编辑器,搜索并找到包含问题ASCII码的文件,然后将这些字符替换为空格(ASCII码20)。这一步骤是为了消除PB10导入时可能引发的错误。 3. **重新导入对象**:在完成字符替换后,再次使用Pwrgn#.exe工具将修改后的对象导入回PB环境。 4. **使用PB10或10.5移植程序**:最后,在PB10或10.5环境下重新构建和移植程序,这样就可以尝试升级程序了。通过这种方法,即使原本在PB9中的PFC库也可以成功升级到PB10。 值得注意的是,从PB8升级到PB10是一个重要的转变,因为PB10是Sybase首次引入双字节支持的版本,开始支持Unicode编码,这意味着程序能够支持多种语言的显示,适应全球化的市场需求。然而,虽然理论上PB应该能自动正确升级,但在实际操作中,手动处理往往更可靠。 在升级过程中,确保备份原有源码至关重要,以防升级失败造成不可逆的损失。同时,根据程序的编码环境(如BIG5码)正确设置导出对象时的工作环境,以保证数据的完整性。在控制面板的区域和语言设置中,对于非Unicode程序,应选择与程序编码匹配的语言环境。 PB程序的版本升级是一个涉及编码转换和兼容性检查的过程,需要细心操作,并且做好充分的准备工作,以确保升级的成功。