.net 我们可以添加';Microsoft.ACE.Oledb.12.0.dll';投射
我在测试服务器上收到错误“Microsoft.ACE.OLEDB.12.0”提供程序未在本地计算机上注册。”。所以我的问题是: i) 我是否可以添加对“'Microsoft.ACE.Oledb.12.0.dll'”的引用以自行投影它? ii)安全吗? iii)如何做到这一点 自从我在本地机器上安装了最新版本的office以来,一切都在正常工作。一旦我将代码部署到测试服务器上,我就会发现上面的错误。我可能无法在测试服务器上安装Office(由于某些原因)。那个么,是否有可能将所有必需的dll放在项目本身中,并将其部署到测试服务器上呢.net 我们可以添加';Microsoft.ACE.Oledb.12.0.dll';投射,.net,database,oledb,oledbconnection,.net,Database,Oledb,Oledbconnection,我在测试服务器上收到错误“Microsoft.ACE.OLEDB.12.0”提供程序未在本地计算机上注册。”。所以我的问题是: i) 我是否可以添加对“'Microsoft.ACE.Oledb.12.0.dll'”的引用以自行投影它? ii)安全吗? iii)如何做到这一点 自从我在本地机器上安装了最新版本的office以来,一切都在正常工作。一旦我将代码部署到测试服务器上,我就会发现上面的错误。我可能无法在测试服务器上安装Office(由于某些原因)。那个么,是否有可能将所有必需的dll放在项
提前感谢。要使用此库,您需要在计算机上安装Office。如果有一个,您可以简单地以典型的方式添加lib。如果您想使用AccessDatabaseEngine 64位和IIS 64位(例如windows 2012 64位),请按照下面的步骤操作
ACEOLEDB.DLL
,在命令提示符下的以下命令将在系统上为您找到它:
C:\>DIR /s/b c:\ACEOLEDB.DLL
c:\Program Files\Common Files\Microsoft Shared\OFFICE14\ACEOLEDB.DLL
以下是我在安装上述可再发行软件之前从程序收到的错误消息,仅供参考:
Connection Failed.
Error from IDataInitialize::GetDataSource
with connectionString=Data Source=C:\MyFileName.mdb;Mode=Share Deny Write;Provider=Microsoft.ACE.OLEDB.12.0;User Id=admin
OLE DB Error Report:
ErrorRecord:
Hresult=80040154
Description: Class not registered
SQLErrorInfo: No error info available
Source: Microsoft OLE DB Service Components
您可以通过在安装项目中添加Microsoft Access Database Engine 2010作为先决条件来解决问题,以下链接向您展示了如何执行此操作,但请注意,如果使用VS2017,则路径不同,VS2017的路径为: “C:\Program Files(x86)\Microsoft SDK\ClickOnce引导程序\Packages” 不是 “C:\Program Files\Microsoft SDK\Windows\v7.0A\Bootstrapper\Packages” 我还注意到,在某些情况下,您必须在用户的计算机上安装“AccessDatabaseEngine.exe”而不是“AccessDatabaseEngine_X64.exe”,即使它是64位windows 这篇文章包括一段视频,演示了如何一步一步地完成这一切:
向您致意是的,我同意您的意见。自从我在本地机器上安装了最新版本的office以来,一切都在正常工作。一旦我将代码部署到测试服务器上,我就会发现上面的错误。我可能无法在测试服务器上安装Office(由于某些原因)。那么,是否可以将所有必需的dll放入项目本身并将其部署到测试服务器上?您可以找到与您相关的主题问题:-您可以安装OLEDB提供程序而不是office-如果有人答复如何在项目中仅使用*.dll使用此库,您可以独立安装,那太棒了。我知道你问这个问题已经有一段时间了,但我面临着同样的问题,我需要知道是否有办法将此dll添加到asp web应用程序中。谢谢你的帮助。