首页 > 代码库 > 利用office2000组件进行填充打印报不支持集合。 (Exception from HRESULT: 0x80020011 (DISP_E_NOTACOLLECTION))
利用office2000组件进行填充打印报不支持集合。 (Exception from HRESULT: 0x80020011 (DISP_E_NOTACOLLECTION))
环境:win2008 64位+.net4.0 +office2000
错误提示:
不支持集合。 (Exception from HRESULT: 0x80020011 (DISP_E_NOTACOLLECTION))
at System.RuntimeType.ForwardCallToInvokeMember(String memberName, BindingFlags flags, Object target, Int32[] aWrapperTypes, MessageData& msgData)
at Excel.Range.get_Value(Object RangeValueDataType)
at wfp.classlibrary.Common.WFPExcel..ctor(Byte[] ModeStream, String FilePath, String FileName, DataSet DS, String wfpuser)
解决方法参考:
【注:在VS.Net中运行是要添加Excel.dll组件的,Excel组件VS.Net本身是没有的,下面是生成Excel.dll的方法。】
1.要保证机器本身要安装OFFICE.
2.把[C:Program FilesMicrosoft OfficeOffice:默认安装路径]下的EXCEL9.OLB文件拷贝到[C:Visual Studio.NetSDKv1.1Bin:VS.Net安装路径]路径下。
3.打开Visual Studio .Net2003命令提示,运行TlbImp Excel9.olb Excel.dll ,就会在[C:Visual Studio.NetSDKv1.1Bin]下生成Excel.dll组件。
4.在项目中添加Excel.dll引用就OK了。
把文件复制到
C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0
目录下
启动v2012开发人员提示:
执行TlbImp Excel9.olb Excel.dll
利用office2000组件进行填充打印报不支持集合。 (Exception from HRESULT: 0x80020011 (DISP_E_NOTACOLLECTION))