gpt4 book ai didi

c# - 打开 OLEDB 连接到 Excel 文件时 Windows 服务挂起

转载 作者:太空宇宙 更新时间:2023-11-03 11:51:31 24 4
gpt4 key购买 nike

我有一个 Windows 服务在打开到 Excel 文件的 OLEDB 连接时挂起,如下所示:

using (var connection = new OleDbConnection(
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
+ fileName + ";Extended Properties=\"Excel 8.0\""))
{
connection.Open();
// start using the connection
}

此代码在作为控制台应用程序运行时运行良好。当我使用 Visual Studio 调试 Windows 服务时,我可以单步执行代码,直到我调用了 connection.Open()。那时,线程挂起。不会抛出异常。 Visual Studio 保持响应,直到我点击“全部中断”或“停止调试”按钮。此时,Visual Studio 也会挂起。当我终止进程时,Visual Studio 再次响应。

有谁知道为什么会这样以及如何解决?

编辑:文件名是绝对路径;该文件由服务本身编写。

最佳答案

在 Windows 服务中尝试执行此操作失败后,我将业务逻辑提取到一个单独的控制台应用程序中,然后从 Windows 服务中调用该应用程序。似乎工作正常。

关于c# - 打开 OLEDB 连接到 Excel 文件时 Windows 服务挂起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2028706/

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