C# 导出PPT幻灯片图像时,互操作库内存不足异常

C# 导出PPT幻灯片图像时,互操作库内存不足异常,c#,asp.net-mvc-4,powerpoint,office-interop,C#,Asp.net Mvc 4,Powerpoint,Office Interop,我想使用Microsoft.Office.Interop库从Powerpoint演示文稿导出图像: Application pptApplication = new Application(); Microsoft.Office.Interop.PowerPoint.Presentation pptPresentation = pptApplication.Presentations.Open(fileurl, MsoTriState.msoFalse, MsoTriState.msoFalse

我想使用Microsoft.Office.Interop库从Powerpoint演示文稿导出图像:

Application pptApplication = new Application();
Microsoft.Office.Interop.PowerPoint.Presentation pptPresentation = pptApplication.Presentations.Open(fileurl, MsoTriState.msoFalse, MsoTriState.msoFalse, MsoTriState.msoFalse);
pptPresentation.Slides[1].Export(fullPath + thumbfileName, ".jpg", 800, 600);
pptPresentation.Close();
System.Runtime.InteropServices.Marshal.FinalReleaseComObject(pptPresentation);
它在Live Server上引发内存不足异常,尽管它在开发环境中运行良好。有什么建议吗

考虑使用来处理打开的XML文档。有关更多信息,请参阅

Microsoft目前不建议也不支持从任何无人参与、非交互式客户端应用程序或组件(包括ASP、ASP.NET、DCOM和NT服务)自动化Microsoft Office应用程序,因为在该环境中运行Office时,Office可能会表现出不稳定的行为和/或死锁


如果您正在构建一个在服务器端上下文中运行的解决方案,那么您应该尝试使用安全的组件来无人值守地执行。或者,您应该尝试找到至少允许部分代码在客户端运行的替代方案。如果使用服务器端解决方案中的Office应用程序,该应用程序将缺少许多成功运行所需的功能。此外,您将面临整体解决方案稳定性方面的风险。在文章中阅读更多关于这方面的内容

尝试从这个解决方案,感谢Eugene的回复,但所需的输出不能使用OpenXML生成,所以我不得不使用另一种方法。关于从PPT幻灯片生成图像有什么想法吗?我不太愿意提出这个建议,但也许将幻灯片复制到剪贴板,然后检索图像可能会奏效。看看这个答案: