Microsoft.Office.Interop.Excel незарегистрированная DLL
С использованием Microsoft.Office.Interop.Excel.dll
приводит к следующей ошибке:
Произошло необработанное исключение типа 'System.Runtime.InteropServices.COMException' в mscorlib.dll
Дополнительная информация: не удалось получить фабрику класса COM для компонента с CLSID {00020819-0000-0000-C000-000000000046} из-за следующей ошибки: 80040154 Klasse nicht registriert (Исключение из HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).
Ошибка происходит в четвертой строке этого кода:
using EX = Microsoft.Office.Interop.Excel;
private void LoopBANFDokumenteLibrary(System.Uri Link)
{
EX.Application MSExcel = new EX.Application();
EX.Workbook WB = MSExcel.Workbooks.Add(new EX.Workbook()); //ERROR: Exception thrown
EX.Worksheet WS = WB.Worksheets.Add(new EX.Worksheet());
/*...and further code...*/
}
Несколько лет назад я ежедневно использовал этот Interop.Excel.DLL, и у меня никогда не было этой проблемы. Открывая regedit.exe, dll регистрируется, как вы можете видеть на этом скриншоте:
У кого-нибудь есть идея, что не так?
С уважением и спасибо, Ян
1 ответ
+ Изменить
EX.Workbook WB = MSExcel.Workbooks.Add(new EX.Workbook());
в
EX.Workbook WB = MSExcel.Workbooks.Add();
Аналогично используйте
EX.Worksheet WS = WB.Worksheets.Add();