MS Visual Web Developer 2008 Express Ed で開発中に問題が発生しました。Windows7 64 ビット OS で ASP.NET C# を開発しています。
Excel ドキュメントを開こうとしていますが、Old format or invalid type library. (Exception from HRESULT: 0x80028018 (TYPE_E_INVDATAREAD))
ビルドをすべてのプロセッサ (任意の CPU、x64、x86) に構成しましたが、機能しません。インターネットで答えを検索しましたが、それを処理する方法がわかりませんでした。
奇妙なことに、私が Microsoft Visual C# 2010 Express で開発したとき、同じシステムで同じコードが機能していました。どうして?背後で動作しているのと同じdllではありませんか?
x64 システムで動作するように、その COM dll を変更する必要がありますか?
どうすればいいですか?
私のコードは次のとおりです。
using Excel = Microsoft.Office.Interop.Excel;
xlApp = new Excel.Application();
__Log("Openning " + excelFileName);
xlWorkBook = xlApp.Workbooks.Open(excelFileName, 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);
xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(2);