C# (Workbooks.add) Com Exception 0x80028018 TYPE_E_INVDATAREAD

C# (Workbooks.add) Com Exception 0x80028018 TYPE_E_INVDATAREAD


在不同的语系下,使用Excel组件做写档的动作,有可能会产生此问题

错误消息为:Com Exception 0x80028018 TYPE_E_INVDATAREAD

此问题的解决方法是在建立Excel组件前加上

System.Globalization.CultureInfo oldCI = System.Threading.Thread.CurrentThread.CurrentCulture;
System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US");

在执行垃圾回收后加上

System.Threading.Thread.CurrentThread.CurrentCulture = oldCI;

即可以解决问题

参考网址:http://www.gotdotnet.ru/Forums/Common/290167.aspx