Ошибка при сохранении книги: System.Runtime.InteropServices.COMException: исключение из HRESULT: 0x800A03EC

Я создаю файл excel с моим приложением asp.net. Я размещаю этот сайт на IIS7.

Когда я запускаю его с сервера, он выдает ошибку при сохранении книги.

мой код

Workbook.SaveAs(Server.MapPath("Folder") + "\\" + filename + ".xls"
, Excel.XlFileFormat.xlHtml, objOpt, objOpt, false, false
,Excel.XlSaveAsAccessMode.xlShared, false, false, objOpt, objOpt);

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

это моя ошибка

System.Runtime.InteropServices.COMException: Exception from HRESULT: 0x800A03EC 

Я использую Office 2000, IIS7. Я установил все авторизации. Любые предложения высоко ценятся.


person ARB    schedule 11.05.2011    source источник
comment
Есть ли у веб-приложения разрешение на чтение/запись в папку, в которую вы сохраняете файл?   -  person Bradley Smith    schedule 11.05.2011
comment
да .. У него есть разрешения. . :(   -  person ARB    schedule 11.05.2011
comment
Из Google: языковой стандарт машины установлен на английский (1033)?   -  person Ritch Melton    schedule 11.05.2011
comment
Просто support.microsoft.com/kb/257757   -  person Lex Li    schedule 11.05.2011
comment
@Ritch.. языковой стандарт машины установлен на английский   -  person ARB    schedule 11.05.2011
comment
У вас такая же проблема с подключением к Excel 2007 из VB.NET на локальном компьютере.   -  person Christopher Mahan    schedule 18.05.2011


Ответы (2)


Interop не поддерживается в нескольких сценариях (например, IIS) от MS.

Существует множество вариантов чтения/редактирования/создания файлов Excel без взаимодействия/установки Excel на сервере:

MS предоставляет бесплатный OpenXML SDK V 2.0 — см. http://msdn.microsoft.com/en-us/library/bb448854%28office.14%29.aspx (только XLSX)

Это может читать + писать файлы MS Office (включая Excel).

Другой бесплатный вариант см. на http://www.codeproject.com/KB/office/OpenXML.aspx (только XLSX)

ЕСЛИ вам нужно больше, например, обработка старых версий Excel (например, XLS, а не только XLSX), рендеринг, создание PDF-файлов, формул и т. д., тогда существуют различные бесплатные и коммерческие библиотеки, такие как ClosedXML (бесплатно, только XLSX), EPPlus (бесплатно, XLSX только), Aspose.Cells, SpreadsheetGear, LibXL и Flexcel и т. д.

person Yahia    schedule 05.08.2013

Вы установили для свойства «Только для чтения» значение «true» при открытии книги?

См. ниже, как открыть книгу с доступом для записи:

Microsoft.Office.Interop.Excel.Application xlApp = null;
Microsoft.Office.Interop.Excel.Workbook xlWorkBook = null;

xlApp = new Excel.ApplicationClass();
xlWorkBook = xlApp.Workbooks.Open(txtFilePath.Text, 0, false, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);

Значение false для третьего параметра метода xlApp.Workbooks.Open означает, что книга не будет доступна только для чтения.

Это всего лишь дикая догадка, так как вы не предоставили никакого кода о том, как вы открываете книгу. Надеюсь, поможет.

person AYK    schedule 03.04.2012