gpt4 book ai didi

.net - .NET 应用程序如何与 32 位和 64 位 Office 一起运行?

转载 作者:行者123 更新时间:2023-12-04 20:47:43 25 4
gpt4 key购买 nike

我有一个 Windows 64 位系统和一个 C# 应用程序,它使用 OleDbConnection 通过 32 位版本的 AccessDatabaseEngine.exe 组件读取 Excel 数据,因为我安装了 Office 32 位(按照 MSFT 的建议),并且 64 位版本的 AccessDatabaseEngine 不起作用与 32 位办公室。

为了让我的 C# 应用程序正常工作,我必须在项目build设置中设置“首选 32 位”。这将设置编译器/platform anycpu32bitpreferred 标志。在英特尔平台上没有关于此的“首选”。

所以一切都运行良好。在我的机器上。不是在我老板安装 64 位 Office 的 64 位机器上。

我找不到任何 app.config 选项来强制 64 位。有吗?在 .NET 加载序列中理论上是否可能存在一个?

MSFT 没有考虑清楚。我应该能够以某种方式构建一个可以与 32 位和 64 位版本的 Office 一起使用的应用程序。我可以以某种方式使用 OleDbConnection 吗?

我知道 CorFlags.exe/32bitpref- 标志,但这需要维护两个版本的二进制文件。

有任何想法吗?修复? App.Config 选项?

最佳答案

您需要下载the 64 bit version ODBC 驱动程序(它说访问,但它也确实是 excel 驱动程序)。

您可能会收到错误消息,提示您不能同时安装 32 位和 64 位,要解决此问题,您必须 use the /passive flag

To install the Microsoft ACE OLEDB Provider 32-bit on a machine running Office 2010 64-bit:

  • AccessDatabaseEngine.exe /passive

To install the Microsoft ACE OLEDB Provider 64-bit on a machine running Office 2010 32-bit:

  • AccessDatabaseEngine_X64.exe /passive

关于.net - .NET 应用程序如何与 32 位和 64 位 Office 一起运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14693149/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com