我有一个使用最新的32位Office版本开发的VB 6.0和VBA应用程序。但是由于此应用程序是32位的,因此无法在安装了64位Office版本的系统上运行。我应该采取什么策略将此应用程序移植到64位?我们必须使用VB.NET并尽可能少地修改从VB/VBA到.NET 64位的代码。请建议我可以使用的最佳选项,以便我可以利用所有移植的最佳实践。
我有一个使用最新的32位Office版本开发的VB 6.0和VBA应用程序。但是由于此应用程序是32位的,因此无法在安装了64位Office版本的系统上运行。我应该采取什么策略将此应用程序移植到64位?我们必须使用VB.NET并尽可能少地修改从VB/VBA到.NET 64位的代码。请建议我可以使用的最佳选项,以便我可以利用所有移植的最佳实践。
http://www.pcpro.co.uk/news/enterprise/356173/microsoft-warns-users-off-64-bit-office-2010
根据代码的不同情况,以下两种方法中的一种或者两种都可以:
a) 将其转换为VB.NET或者其他语言。
b) 保留VB6,但是用一个封装器调用替换“每个”与Office交互的地方。此封装器调用与一个VB.NET应用程序交互,该应用程序进而与Office交互。
方法b的结果是,它使得旧的VB6程序中的所有业务逻辑均能保持不变。是否适用取决于程序的具体情况,程序员的经验等因素。旧的VB6程序和新的VB.NET程序可以通过例如COM或XML-RPC进行通信。