Wednesday, 28 December 2011
Excel interop with .Net / Server 2008
I'm using Asp.Net to open excel files and read the values cell by cell, normally i prefer to import Excel files as a datatable, but some documents don't fit the strict rows/columns format required for importing into a DataTable. the code i'm using is based on this from dotnetperls
. worked fine for the most part on my dev PC but I had a few issues trying to get this to work on a 32bit version of excel on a 64 bit Windows 2008 server.
here's what i had to do to get it working:
- disable macros (throwing exceptions opening the workbook), requires a reference to the Microsoft.Office.Core assembly:
excelApp.AutomationSecurity = Microsoft.Office.Core.MsoAutomationSecurity.msoAutomationSecurityForceDisable; // disable macros
- give launch / open permissions to the Excel application in DCOM config, this was tricky because it isn't shown in a 64 bit OS if the program is 32 bit, i found the answer here.
- set the identity in DCOM for Excel to the interactive user.
Wednesday, 28 December 2011 21:16:30 (GMT Standard Time, UTC+00:00) .Net General | Asp.Net