【问题标题】:Ghostscript call in C# assembly cannot be found找不到 C# 程序集中的 Ghostscript 调用
【发布时间】:2011-08-03 14:15:32
【问题描述】:

我正在使用 GhostScript 程序集将 PDF 文件转换为图像。 我使用的方法是这样的: http://www.codeproject.com/KB/cs/GhostScriptUseWithCSharp.aspx

当我在 Web 项目 (Windows 7 x64) 中使用我的工作站上提供的代码时,一切正常。

但是,在将其部署到服务器(Windows server 2008 R2 x64)时,会出现这样的错误。

System.DllNotFoundException:无法加载 DLL 'gsdll32.dll':找不到指定的模块。 (HRESULT 异常:0x8007007E)

我确实将 ghostscript 程序集放在了我的 web 应用程序的 bin 文件夹中,并确实更改了 iis 应用程序池的设置以允许 32 位应用程序。

当两个环境都是 64 位时,它怎么会在 Server 2008 R2 环境中不起作用?

【问题讨论】:

  • 我遇到了同样的问题,我最终发现只有 GhostScriptSharp.dll 在 web 应用程序 bin 文件夹中,而不是 gsdll32.dl - 两者都需要。

标签: c# ghostscript


【解决方案1】:

确保您的项目本身是 x86...

【讨论】:

  • 我确实尝试将项目更改为 x86,但它有完全相同的错误。
【解决方案2】:

您是否尝试过下载 x64 版本的 ghostscript(gs863w64.exe,GPL Ghostscript 8.63 for 64-bit Windows (x86_64)。)并将代码编译成 x64?

【讨论】:

  • 您的意思是要发表评论吗?提出一个新问题并不能真正算作一个答案......
  • 是的,但接缝我只有最后一个答案的评论,我不想评论最后一个答案。同时我的问题就是答案,我问的是我在笔记本电脑上使用的东西。默认情况下,x64 操作系统上的 IIS 上的网站也需要 x64 DLL。除非您将网站池设置为 32 位,但请注意将其更改为 32 位会将使用此池的所有网站呈现为 32 位,因此您必须编译为 32 位。此外,安装自定义操作项目必须设置为所有 CPU ;) ...
猜你喜欢
  • 2011-03-02
  • 2021-11-07
  • 1970-01-01
  • 1970-01-01
  • 2018-09-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多