内存不足以创build一个excel工作簿

我的原始代码:

Excel.Application xlErrorApp; Excel.Workbook xlErrorWorkBook; Excel.Worksheet xlErrorWorkSheet; object misValue = System.Reflection.Missing.Value; xlErrorApp = new Excel.Application(); xlErrorWorkBook = xlErrorApp.Workbooks.Add(); // -> error xlErrorWorkSheet = (Excel.Worksheet)xlErrorWorkBook.Worksheets.get_Item(1); 

第6行出现错误。

错误信息:

应用程序由于内存不足或磁盘空间不足,Microsoft Excel无法打开或保存文档。

你使用哪个库?

我已经说过了,但实际上Microsoft并不推荐,也不支持Microsoft Office应用程序从任何无人值守的非交互式客户端应用程序或组件(包括ASP,ASP.NET,DCOM和NT服务)自动化,因为Office Office在此环境中运行时可能会出现不稳定的行为和/或死锁。

我build议你去找一个像Open Office XML这样的免费图书馆,或者像Aspose这样的免费图书馆。

Workbooks.Add()方法从MSDN ;

 Parameters Template Type: System.Object 

可选对象。 确定如何创build新的工作簿。 如果此参数是指定现有Microsoft Excel文件的名称的string,则将新指定的文件作为模板创build新的工作簿。 如果此参数是一个常量,则新工作簿将包含指定types的单个工作表。 可以是以下XlWBATemplate常量之一:xlWBATChart,xlWBATExcel4IntlMacroSheet,xlWBATExcel4MacroSheet或xlWBATWorksheet。 如果省略此参数,则Microsoft Excel将创build一个包含大量空白工作表的新工作簿(工作表数量由SheetsInNewWorkbook属性设置)。

如果您尝试创build新的工作簿,请尝试像这样;

 Workbook newWorkbook = this.Application.Workbooks.Add(missing); 

这个怎么样:

 Microsoft.Office.Interop.Excel.ApplicationClass excel = new Microsoft.Office.Interop.Excel.ApplicationClass(); Microsoft.Office.Interop.Excel.Workbook workbook = excel.Workbooks.Open(fileName, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing); 

对不起,我以前找不到链接。 我用EPPlus支持。 http://epplus.codeplex.com

感谢您的帮助!