gpt4 book ai didi

c# - OLEDBConnection.Open() 生成 'Unspecified error'

转载 作者:行者123 更新时间:2023-11-30 15:50:48 27 4
gpt4 key购买 nike

我有一个将 Excel .xls 文件上传到文件系统的应用程序,使用对象实例上的 .open() 方法使用 oledbconnection 对象打开文件,然后将数据存储在数据库中。文件上传和写入文件系统工作正常,但尝试在我们的生产服务器上打开文件时出现错误。该应用程序在另外两台服务器(开发和测试服务器)上运行良好。

以下代码在 Exception.Message 中生成“未指定错误”。

引用:

        System.Data.OleDb.OleDbConnection x = new System.Data.OleDb.OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + location + ";Extended Properties='Excel 8.0;HDR=Yes;IMEX=1'");
try
{
x.Open();
}
catch (Exception exp)
{
string errorEmailBody = " OpenExcelSpreadSheet() in Utilities.cs. " + exp.Message;
Utilities.SendErrorEmail(errorEmailBody);
}

:结束引用

服务器的 c:\\temp 和 c:\Documents and Settings\\aspnet\local settings\temp 文件夹都给予\aspnet 完全控制权。

我认为存在某种权限问题,但似乎无法发现上述文件夹的权限与上传 Excel 文件的文件夹/目录之间的任何区别。相同的位置用于保存文件和打开它,这些方法在我的工作站和两个 Web 服务器上工作。 Windows 2000 SP4 服务器。

最佳答案

虽然权限问题可能更常见,但您也可能遇到来自 Windows 文件系统/Access Jet DB 引擎连接限制(我认为是 64/255)的错误。如果您破坏了 255 Access 读/写并发连接或每个进程 64(?) 连接限制,您可能会遇到完全相同的错误。至少我在一个应用程序中遇到过这种情况,在这个应用程序中,连接不断被创建并且从未正确关闭。一个简单的 Conn.close(); 投入使用,生活很美好。我想 Excel 可能有类似的问题。

关于c# - OLEDBConnection.Open() 生成 'Unspecified error',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/96150/

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