PPTX到图像的转换在Windows Server 2012生产环境中不起作用

Abhimanyu

我们需要将上传的PPT或PPTX文件转换为图像文件。我们使用以下(POC代码)在本地开发了此工作:

Application pptApplication = new Application();
Microsoft.Office.Interop.PowerPoint.Presentation pptPresentation = pptApplication.Presentations.Open2007(filePath, MsoTriState.msoFalse, MsoTriState.msoFalse, MsoTriState.msoFalse);
List<string> files = new List<string>();
for (int i = 1; i <= pptPresentation.Slides.Count; i++)
{
    pptPresentation.SaveCopyAs(serverPath + randomId, PpSaveAsFileType.ppSaveAsPNG, MsoTriState.msoTrue);
    files.Add(root + "Uploads/Slide" + i + ".PNG");
}
pptPresentation.Close();

现在,当此代码部署在Windows Server 2012 R2上时,我收到以下错误:

在此处输入图片说明 这个错误看起来像是一些访问权限问题,当我用谷歌搜索时,发现了一些我没有运气尝试过的解决方案,以下是其中的一些解决方案:

  1. 在服务器上安装Office-在服务器上安装Office毫无意义:(好吧,我已经安装并且仍然遇到相同的问题。

  2. 在服务器上安装Office Interop程序集-我找不到适用于Windows Server 2012的程序集,不支持我在这里https://www.microsoft.com/zh-cn/download/details.aspx?id=3508找到的程序集对于2012年,当我安装它不起作用。

  3. 尝试这种解决方案https://stackoverflow.com/a/30117146以及

  4. 我们无法切换到Aspose,Spire等付费解决方案

非常感谢对此线程的任何帮助。谢谢。

Abhimanyu

这是适用于所有服务器的缩小范围的解决方案,在7个月的成熟研究后,我将发布此解决方案。

  1. 在每台服务器上安装Office并激活产品
  2. 在C:\ Windows \ SysWOW64 \ config \ systemprofile \ Desktop(64位OS)上创建文件夹“ Desktop” 在此处输入图片说明
  3. 在IIS中,将ApplicationPool标识从“ ApplicationPoolIdentity”更改为“ LocalSystem”。 在此处输入图片说明

就是这样,我能够将幻灯片转换为图像。

源代码

如果您对我使用的代码感兴趣:

Application pptApplication = new Application();
Microsoft.Office.Interop.PowerPoint.Presentation pptPresentation = pptApplication.Presentations.Open2007(Server.MapPath("~/tempslides/pptfilename.pptx"), MsoTriState.msoFalse, MsoTriState.msoFalse, MsoTriState.msoFalse);
List<string> files = new List<string>();
for (int i = 1; i <= pptPresentation.Slides.Count; i++)
{
    pptPresentation.SaveCopyAs(serverPath + randomId, PpSaveAsFileType.ppSaveAsPNG, MsoTriState.msoTrue);
    files.Add(Server.MapPath("~/tempslides") + "/slide" + i + ".PNG");
}
pptPresentation.Close();

要运行以上代码,您需要在项目中添加对interop lib的引用。 在此处输入图片说明

希望这可以帮助您节省时间。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

interop.MODI.dll在Windows Server 2012中不起作用

来自分类Dev

Wamp Server在Windows中不起作用

来自分类Dev

Rails 4:图像路径在生产环境中不起作用

来自分类Dev

部署到生产环境时,Rails Mailer不起作用

来自分类Dev

在RAILS4生产环境中对资产进行预编译后,背景图片不起作用

来自分类Dev

Windows Server 2016 中的 Docker 不起作用

来自分类Dev

ansible 我的 sql 模块在 Windows Server 中不起作用

来自分类Dev

Firebase存储在Express Server环境中不起作用

来自分类Dev

Ctrl R在SQL Server 2012中不起作用

来自分类Dev

ServicePointManager.ServerCertificateValidationCallback在Windows Server 2012 R2上不起作用

来自分类Dev

基本NLog文件目标在IIS 8和Windows Server 2012下不起作用

来自分类Dev

HTTP修补程序动词在Windows Server 2012 R2上不起作用

来自分类Dev

ServicePointManager.ServerCertificateValidationCallback在Windows Server 2012 R2上不起作用

来自分类Dev

Get-ADComputers在Windows Server 2012 R2上不起作用吗?

来自分类Dev

Windows Server 2012-R2/2016 自动登录不起作用

来自分类Dev

Windows Server网络路由不起作用

来自分类Dev

SSL 在 Windows Server 上不起作用

来自分类Dev

图像路径生产参考在Rails 4中不起作用

来自分类Dev

Hyper V 远程管理 Windows 2012 Server R2 从 Windows 10 otuside 域不起作用

来自分类Dev

Windows Server 2012-DNS和DHCP在客户端计算机上不起作用

来自分类Dev

SQL Server 2005查询使用?在SQL Server 2012中不起作用

来自分类Dev

SQL Server 2005查询使用?在SQL Server 2012中不起作用

来自分类Dev

SQL Server 2012中的Oracle Linked Server-DATE列查询不起作用

来自分类Dev

NPM环境变量在Windows中不起作用?

来自分类Dev

在SQL Server中将行转换为列不起作用?

来自分类Dev

批处理路径变量在 Windows Server 2016 中不起作用

来自分类Dev

回送连接在Windows Server 2008上不起作用

来自分类Dev

Kendo UI 在 Windows Server 2016 上不起作用

来自分类Dev

当前日期UPDATE语句在SQL Server 2012中不起作用

Related 相关文章

  1. 1

    interop.MODI.dll在Windows Server 2012中不起作用

  2. 2

    Wamp Server在Windows中不起作用

  3. 3

    Rails 4:图像路径在生产环境中不起作用

  4. 4

    部署到生产环境时,Rails Mailer不起作用

  5. 5

    在RAILS4生产环境中对资产进行预编译后,背景图片不起作用

  6. 6

    Windows Server 2016 中的 Docker 不起作用

  7. 7

    ansible 我的 sql 模块在 Windows Server 中不起作用

  8. 8

    Firebase存储在Express Server环境中不起作用

  9. 9

    Ctrl R在SQL Server 2012中不起作用

  10. 10

    ServicePointManager.ServerCertificateValidationCallback在Windows Server 2012 R2上不起作用

  11. 11

    基本NLog文件目标在IIS 8和Windows Server 2012下不起作用

  12. 12

    HTTP修补程序动词在Windows Server 2012 R2上不起作用

  13. 13

    ServicePointManager.ServerCertificateValidationCallback在Windows Server 2012 R2上不起作用

  14. 14

    Get-ADComputers在Windows Server 2012 R2上不起作用吗?

  15. 15

    Windows Server 2012-R2/2016 自动登录不起作用

  16. 16

    Windows Server网络路由不起作用

  17. 17

    SSL 在 Windows Server 上不起作用

  18. 18

    图像路径生产参考在Rails 4中不起作用

  19. 19

    Hyper V 远程管理 Windows 2012 Server R2 从 Windows 10 otuside 域不起作用

  20. 20

    Windows Server 2012-DNS和DHCP在客户端计算机上不起作用

  21. 21

    SQL Server 2005查询使用?在SQL Server 2012中不起作用

  22. 22

    SQL Server 2005查询使用?在SQL Server 2012中不起作用

  23. 23

    SQL Server 2012中的Oracle Linked Server-DATE列查询不起作用

  24. 24

    NPM环境变量在Windows中不起作用?

  25. 25

    在SQL Server中将行转换为列不起作用?

  26. 26

    批处理路径变量在 Windows Server 2016 中不起作用

  27. 27

    回送连接在Windows Server 2008上不起作用

  28. 28

    Kendo UI 在 Windows Server 2016 上不起作用

  29. 29

    当前日期UPDATE语句在SQL Server 2012中不起作用

热门标签

归档