Unity 读Excel 报错或者ICSharpCode.SharpZipLib.dll 没有反应/没有用上

Unity Excel 报空或者ICSharpCode.SharpZipLib.dll 没有反应

问题要解决的问题 或者疑问

有很多小伙伴会很疑惑,我使用Excel.dll 准备工作没有错啊,为什么会出错,还有就是我项目有ICSharpCode.SharpZipLib.dll或者源码啊,为什么读取Excel表格报空。下面我为大家解答疑惑。

首先我们一开始,也不知道什么回事,各种测试,最后发现Excel.dll 要引用 ICSharpCode.SharpZipLib.dll(“0.85.5.452”) 这个版本,我们在Unity 安装目录下找的ICSharpCode.SharpZipLib.dll 要不是(0.84)就是(0.86)的版本。所以我们就很奇怪了,为什么我们使用的都是ICSharpCode.SharpZipLib.dll,为什么就不引用了,功能都一样啊。

我就不信邪,所以我就把Excel.dll 反编译去看了,我这里反编译用的工具是ILSpy ,这个大家可以上网去下载。反编译如图下。

在这里插入图片描述

这个就是问题所在了,我的项目用的是ICSharpCode.SharpZipLib(0.86)源码,不是Dll。因为这个是别人模块,我这边不好弄,弄了有问题,不好处理,所以就想用ICSharpCode.SharpZipLib(0.86)源码。

然后脑子有了2个方案:
方案1:把Excell.dll反编译成C# 然后更改引用引用换成ICSharpCode.SharpZipLib(相对于的版本),然后重新打包成Excel.dll
方案2:直接把Excel.dll反编译成源码

最后我用来第二个方案,这次反编译的软件是Reflector.exe。

在这里插入图片描述

希望对你有用