很多人留言需要支持 Delphi 2009 的 DevExpress VCL Auto-Installer,所以更新版本到 v1.5,同时用 DevExpress v39 做了测试,可以正常解压和安装。此版本主要变化如下:
- 支持 Delphi 2009;
- 添加新增子组件的安装:ExpressSpellChecker、ExpressPivotGrid 2、ExpressCore Library;
- 如果在安装某些具有依赖性的包时出现错误,可选择是否继续余下的安装;
同时 DevExpress VCL Auto-Installer 的代码也迁移到了 Delphi 2009,因为自已写的代码都使用 Delphi 缺省类型和函数,所以迁移很顺利,无需做任何更新;但如果你的程序使用了第三方库和 DLL 的话,可能就比较麻烦了,尤其是 DLL,你要时刻注意与 DLL 交互的字符数据到底是 PAnsiChar 还是 PWideChar,或是 AnsiString 还是 UnicodeString,如果稍有差错,即便可以编译通过,得到的也是错误的执行结果。
如果 DLL 提供了 Unicode 版的接口函数,直接使用此类函数是最好的迁移办法;反之的话,你可能需要更新所有接口字符类型到 PAnsiChar,并且在代码中进行大量的 Ansi 到 Unicode 的转换,或是 Unicode 到 Ansi 的转换,尽管编译器对可疑的转换会有提示,但不代表没有编译器提示的转换就是安全和正确的,所以进行此类迁移时要非常小心,因为此类问题而引起的错误一般是不会触发程序异常的,处理不当,会给你的程序带来很多的隐形 Bug。