C# CefSharp MemoryStreamResponseFilter这个类使用过程中遇到的bug,dataIn.CopyTo(dataOut)异常...

本文探讨了使用CEF过程中遇到的数据拷贝问题,具体表现为在某些情况下dataIn的长度会超过dataOut的长度,导致程序异常。通过测试案例详细展示了问题出现的情景,并附上了错误代码及截图。

使用这个类,可以获取请求的所有数据,可用来下载网站的图片、js等

cef给出的源码

dataIn.CopyTo(dataOut);这句代码,有时候会有问题。问题是这个:dataIn.length 会大于 dataOut.length,这样的话,这里就会报错,原因还没找到。

 

下面为测试该bug的截图:

这个是测试页面,仅仅几张大小不同的图片。

 

 

测试的WinFormApp,会有两张图片没有加载出来。

 

WinFormApp主要就改了两句代码,如图:

 

 

 下载第一张图片没有问题,dataIn的长度和 等于 文件的字节大小

 

 

下载的第4张图片就出现问题了,最后一个 输入流的长度 大于了 输出流的长度,dataIn.CopyTo(dataOut);这里就会报异常,超出流长度之类的。

目前没找到该解决方案,不知道是什么原因,正在研究源码中。。。

 

转载于:https://www.cnblogs.com/guxingy/p/9678938.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值