Exception When Opening Excel File in C# Using Interop

У меня есть программа, запущенная на сервере, которая каждый день загружает файл .xls с веб-сайта, открывает его, затем конвертирует его в .csv, чтобы иметь возможность правильно разобрать его и добавить в базу данных.

Когда я запускаю его на своем локальном компьютере, все работает нормально, и большую часть времени он работает и на сервере, но, возможно, один или два раза в неделю я получаю это исключение:

Exception occurred: System.Runtime.InteropServices.COMException (0x800A03EC): Исключение из HRESULT: 0x800A03EC at Microsoft.Office.Interop.Excel.Workbooks. Open(String Filename, Object UpdateLinks, Object ReadOnly, Object Format, Object Password, Object WriteResPassword, Object IgnoreReadOnlyRecommended, Object Origin, Object Delimiter, Object Editable, Object Notify, Object Converter, Object AddToMru, Object Local, Object CorruptLoad)

Вот фрагмент кода:

 Microsoft.Office.Interop.Excel.Application app = new Microsoft.Office.Interop.Excel.Application();
            Microsoft.Office.Interop.Excel.Workbook wbWorkbook = app.Workbooks.Open(_dir + _fileNameTrim + ".xls", Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
            wbWorkbook.SaveAs(_dir + _fileNameTrim + ".csv", Microsoft.Office.Interop.Excel.XlFileFormat.xlCSVWindows, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
            wbWorkbook.Close(false, "", true);

Я много читал в интернете, многие решения упоминают настройки безопасности, но я не думаю, что это мой случай, иначе бы это вообще не работало. Люди также упоминали, что файл поврежден. Я действительно не уверен. Любая помощь будет очень признательна.

UPDATE:

Excel установлен на сервере, и при попытке открыть файл возникает исключение.

9
задан Toz 30 January 2012 в 11:11
поделиться