Asp.net Abcpdf投掷系统.ExecutionEngineeException
我有一些存储在字节数组集合中的pdf文件的二进制文件 我的目标是使用abcpdf将它们连接成一个.pdf文件,然后将新创建的文件流式传输到ASP.Net网站页面上的响应对象 我一直是这样做的: 开始循环 端环 这在95%的时间里都很好。但是,偶尔创建一个新的Doc对象会抛出System.ExecutionEngineeException并使CLR崩溃。它似乎与大量的PDF(有时仅2个)或大型PDF无关。这看起来几乎完全是随机的 这是这里描述的abcpdf中的一个已知错误(不是很好)。我遇到了一个建议对abcpdf Doc对象使用using块的例子 所以现在我要做的是:Asp.net Abcpdf投掷系统.ExecutionEngineeException,asp.net,vb.net,abcpdf,Asp.net,Vb.net,Abcpdf,我有一些存储在字节数组集合中的pdf文件的二进制文件 我的目标是使用abcpdf将它们连接成一个.pdf文件,然后将新创建的文件流式传输到ASP.Net网站页面上的响应对象 我一直是这样做的: 开始循环 端环 这在95%的时间里都很好。但是,偶尔创建一个新的Doc对象会抛出System.ExecutionEngineeException并使CLR崩溃。它似乎与大量的PDF(有时仅2个)或大型PDF无关。这看起来几乎完全是随机的 这是这里描述的abcpdf中的一个已知错误(不是很好)。我遇到了一
Using doc As New Doc
'Read the binary of the current PDF
doc.Read(bytes)
'Append to the master merged PDF doc
_mergedPDFDoc.Append(doc)
End Using
我还没有看到这个问题再次出现,我一直在尽我所能地测试一个版本
有没有人有过类似的经历?这个问题解决了吗?当CLR中出现内部错误时,会引发ExecutionEngineeException,因此这是Microsoft需要解决的问题 因此,在using或try catch块中包装代码不太可能起作用 webSupergoo网站上提到的问题与.NET3.5SP1有关,以及如何将安全属性应用于程序集。我在调试网页时发现此错误,并怀疑此问题也与ASP.NET动态编译有关 ABCpdf 7.010版及更高版本解决了该问题。为一个愚蠢的问题道歉,但是你试过最新版本吗 您可以使用PDFSettings实用程序检查当前安装的ABCpdf版本,该实用程序位于Windows开始菜单>程序>ABCpdf 7.0.NET
如果更新ABCPDF不是一个选项,那么您可能需要考虑卸载.NET 3.5 SP1../P>FWIW,我不知道如何修复这个bug,或者如果<>代码>使用< /Calp>将继续阻止它,但我使用ItExtEffice PDF库进行几乎相同的事情,并且没有任何问题(并且我将100个文档添加到一起)感谢您的响应。我确实在webSupergoo网站上看到了这个项目。不幸的是,我无法控制升级。奇怪的是,仍然没有看到问题再次出现,尽管我同意你的观点,没有理由使用块应该有所帮助。我猜它只是走运了?
Using doc As New Doc
'Read the binary of the current PDF
doc.Read(bytes)
'Append to the master merged PDF doc
_mergedPDFDoc.Append(doc)
End Using