在打开与 Excel 文件的 OLEDB 连接时,我有一个 Windows 服务挂起,如下所示:
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 保持响应,直到我点击“Break All”或“Stop Debugging”按钮。此时,Visual Studio 也会挂起。当我终止该进程时,Visual Studio 再次变得响应。
有谁知道为什么会发生这种情况以及如何解决?
编辑:文件名是绝对路径;该文件是由服务本身编写的。