我在將Crystal報表導出爲pdf流時遇到了訪問問題。下面是一個運行在後臺任務的代碼在ASP.net MVC的Web應用程序:Crystal Reports - 進程無法訪問該文件,因爲它正在被另一個進程使用
using (var memoryStream = new MemoryStream())
using (var stream = reportDoc.ExportToStream(ExportFormatType.PortableDocFormat))
{
stream.CopyTo(memoryStream);
data = memoryStream.ToArray();
}
以下是異常的堆棧跟蹤:
System.Runtime.InteropServices.COMException (0x80004005): The process cannot access the file because it is being used by another process.
at CrystalDecisions.ReportAppServer.Controllers.ReportSourceClass.Export(ExportOptions pExportOptions, RequestContext pRequestContext)
at CrystalDecisions.ReportSource.EromReportSourceBase.ExportToStream(ExportRequestContext reqContext)
at CrystalDecisions.CrystalReports.Engine.FormatEngine.ExportToStream(ExportRequestContext reqContext)
at CrystalDecisions.CrystalReports.Engine.ReportDocument.ExportToStream(ExportOptions options)
at CrystalDecisions.CrystalReports.Engine.ReportDocument.ExportToStream(ExportFormatType formatType)
如何解決這個問題?
該錯誤不言自明。我會開始查看正在使用該文件的內容,或者打開該文件。 – aMazing 2014-10-07 01:04:48