drh*_*ris 35 legacy installshield msde 32bit-64bit
我们目前使用Microsoft Access数据库引擎2010有一个主要问题.引擎有64位和32位形式,这很好.但是,如果主机进程始终是32位,显然您需要始终安装32位版本.好的,我们可以做到这一点.
我们的软件处理许多32位的遗留组件,其中大部分是VB6代码,它生成32位汇编.因此,我们假设驱动程序也必须安装为32位.实际上,当我们在64位计算机上安装32位驱动程序并运行我们的32位应用程序时,它可以正常工作.
但是,问题在系统上安装Office 2010 64位时开始.相信我,我们试图教育用户64位Office在很大程度上是不必要的,但无济于事.随着安装了64位版本的计算机下线,当我们的软件出现故障时,我们无法跟上支持请求.64位Office破坏了我们的安装,或者我们的安装破坏了他们的Office版本,但它不是两种方式.另一个问题是非传统软件有时会安装64位驱动程序(正如他们应该的那样),并且这两个版本根本不以任何合理的方式共存.要么我们的软件中断,要么他们的软件中断.
那么,有没有人设法找到一种方法使32位驱动程序与64位安装共存?我已经看到使用/passive
flag 安装允许安装两个,我们的安装程序确实使用被动.两者都在安装,但一旦在系统上,我们的软件不再工作,或Office不断修复其安装.有没有合理的方法来完成这项工作?
Pet*_*ens 29
以下是在安装了32位MS Office版本的系统上安装64位版本的Microsoft Access数据库引擎2010可重新分发的解决方法:
现在,您可以启动32位MS Office应用程序而无需"重新配置"问题.请注意,如果安装了64位版本的MS Office,则"mso.dll"注册表值已存在.在这种情况下,不应删除或重命名该值.
此外,如果您不想使用"/ passive"命令行参数,则可以编辑AceRedist.msi文件以删除MS Office体系结构检查:
您现在可以使用此文件在安装了"冲突"版本的MS Office的系统上安装Microsoft Access数据库引擎2010可再发行组件(例如,具有32位MS Office版本的系统上的64位版本)确保重命名上面解释的"mso.dll"注册表值(如果需要).
drh*_*ris 18
我讨厌回答我自己的问题,但我终于找到了一个实际可行的解决方案(使用服务之间的套接字通信可以解决问题,但它会产生更多问题).由于我们的数据库是遗留的,因此它只需要Microsoft.ACE.OLEDB.12.0
在连接字符串中.事实证明,这也包含在Office 2007(和MSDE 2007)中,其中只有32位版本可用.因此,我们不是安装MSDE 2010 32位,而是安装MSDE 2007,它运行得很好.然后,其他应用程序可以安装64位MSDE 2010(或64位Office 2010),它不会与我们的应用程序冲突.
到目前为止,它似乎是适用于所有Windows操作系统环境的可接受解决方案.
归档时间: |
|
查看次数: |
142543 次 |
最近记录: |