C#读取EXCEL和水晶报表 40C

VS2008本来的环境是在32位机,现在换到64位win10的。

在读取EXCEL的时候报
Microsoft.ace.oledb.12.0 没有在本机注册

网上查了下答案,
右击资源管理器中的项目名-->属性-->生成(左侧标签页第二项)-->目标平台-->x86。

更改后确实 解决问题了。

但是在打印水晶报表的时候报错
试图加载 Crystal Reports 运行时出现错误。
或者 Crystal Reports 注册密钥所拥有的许可不足,或者 Crystal Reports 运行时组件未被正确安装。
请安装适当的 Crystal Reports 再分发文件(CRRedist*.msi)包含所需的 Crystal Reports 运行时组件的正确版本(x86、x64或 Itanium)。若需更多信息请访问http://www.businessobjects.com/support

现在的问题就是目标平台改成anycpu或x64的时候水晶报表没问题可以打印,但是excel无法读取报错
改成x86报下面的错误

求助如何解决

1个回答

凡是你这种导入导出excel问题,我的回复都是不要用微软自带的读取或写入Excel方法,局限性太多,好需要考虑excel格式,电脑是否按照office软件等
,我推荐你使用aspose.cells.dll第三方引用来做,很方便,很简单,无需考虑客户端是否安装office,也无需考虑格式等问题。你用nopi也行。

qq_23126581
渊渟无迹静涛君 试试重新生成下项目。
一年多之前 回复
qq_21420725
qq_21420725 回复qq_23126581: 就是比较急。。这个方法暂时没想换
一年多之前 回复
qq_23126581
渊渟无迹静涛君 回复qq_21420725: 理解你,这个问题我以前也遇到过,一直处于没有解决,然后就用第三方了。如果你这个功能不着急,你可以研究下第三方这个。
一年多之前 回复
qq_21420725
qq_21420725 问题就是目标平台改成anycpu或x64的时候水晶报表没问题可以打印,但是excel无法读取报 Microsoft.ace.oledb.12.0 没有在本机注册 改成x86报 excel可以读取,试图加载 Crystal Reports 运行时出现错误。 这个不知道怎么解决
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问