c# - 尝试与 Excel 连接时出现 OleDb 异常

标签 c# excel oledbconnection

我正在开发一个 C# Windows 窗体应用程序,它可以读取数据并将其写入 Excel 文件,例如 data.xls

我已将连接字符串设置为:

string Excel03ConString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties='Excel 8.0;HDR=YES'";

我的 data.xls 文件位于项目的 bin 文件夹中。过去 4 到 5 天我一直在处理这个应用程序。到目前为止,我的应用程序运行良好。但从今天开始,它开始报错

Unexpected error from external database driver (1).

在 con.open() 上;

最佳答案

这似乎是上次 Windows 更新引入的错误。

要避免此错误,您可以将连接字符串中的提供程序更改为 Microsoft.ACE.OLEDB.12.0,而不是 Microsoft.Jet.OLEDB.4.0

https://blogs.msdn.microsoft.com/dataaccesstechnologies/2017/10/18/unexpected-error-from-external-database-driver-1-microsoft-jet-database-engine-after-applying-october-security-updates/

关于c# - 尝试与 Excel 连接时出现 OleDb 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46706254/

相关文章:

c# - 如何以排序方式显示 int 的数据绑定(bind)集合

c# - 我可以直接从 visual studio 执行 npm 命令吗

.net - 如何在 Excel 中创建基于模板的用户可自定义报告

exception - 是什么导致了我的 OLEDbException,IErrorInfo.GetDescription 因 E_FAIL(0x80004005) 而失败

c# - 在这种情况下,避免ObjectDisposedException的正确方法是?

c# - NPGSQL:使用 LWGEOMCOLLECTION 类型调用的关联操作

vba - 用户窗体调整大小代码不太有效

excel - Vba excel公式计算?

c# - 如何从 C# 连接到不同版本的 Excel?

c# - 我可以使用 OleDbConnection Excel ACE 驱动程序从不可搜索的 System.IO.Stream 而不是文件中读取 Excel 文件吗?