【发布时间】:2014-11-27 06:33:03
【问题描述】:
我正在使用 epplus 在一个文件中写入一个 excel 模板中的大量信息,但是我需要关闭 ExcelPackage 才能与 Excel 应用程序一起使用。它向我抛出了这个异常:“System.Runtime.InteropServices.COMException (0x800A03EC): Exception from HRESULT: 0x800A03EC”
private void FillCardsSheet()
{
xlPackage = new ExcelPackage(Template);
wsCards = xlPackage.Workbook.Worksheets[4];
string command = "SELECT * FROM dbo_serial_cards WHERE type <> 'EXT' AND LEFT([device_tag], 2) <> '!!'";
OleDbCommand cmd = new OleDbCommand(command, CON);
OleDbDataReader reader = cmd.ExecuteReader();
int row = 1;
while (reader.Read())
{
row++;
for (int col = 1; col <= 16; col++)
{
wsCards.Cells[row, col].Value = reader.GetValue(col - 1);
}
}
xlPackage.SaveAs(Template);
xlPackage.Dispose();
}
【问题讨论】:
-
你从哪里得到异常?什么线? EPPlus 根本不使用 COM。
-
0x800A03EC = ERROR_INVALID_FLAGS。我认为这是来自 OleDb 的东西 - EEPlus 不会自动化 Excel 吧?