Я использую оболочку ghostscriptsharp для C# и ghostscript. Я хочу генерировать эскизы из pdf-файлов. Дополнительная информация о образце-коде дана here.Использование Ghostscript в веб-приложении (PDF Thumbnails)
Существуют различные методы импорта из ghostscript-c-dll "gsdll32.dll".
[DllImport("gsdll32.dll", EntryPoint = "gsapi_new_instance")]
private static extern int CreateAPIInstance(out IntPtr pinstance,
IntPtr caller_handle);
[DllImport("gsdll32.dll", EntryPoint = "gsapi_init_with_args")]
private static extern int InitAPI(IntPtr instance, int argc, IntPtr argv);
//...and so on
Я использую GhostscriptWrapper для создания эскизов в WebApplication (.net 2.0). Этот класс использует методы, импортированные выше.
protected void Page_Load(object sender, EventArgs e){
GhostscriptWrapper.GeneratePageThumb("c:\\sample.pdf", "c:\\sample.jpg", 1, 100, 100);
}
Когда я отладки веб-приложений в Visual Studio 2008, нажав клавишу «F5» он отлично работает (новый экземпляр веб-сервера генерируется). Когда я создаю приложение WindowsForm, он тоже работает. Эскизы создаются.
Когда я обращаюсь к приложению непосредственно с веб-браузером (http://localhoast/mywebappliation/..), Он не работает. Никаких эскизов не генерируется. Но также нет исключения.
Я поместил gsdll32.dll в системную папку windows xp. Также установлен режим Ghostscript Runtime. Я предоставил полный доступ в IIS-Webproject (.Net 2.0).
Кто-нибудь знает, почему я не могу получить доступ к Ghostscript из своего веб-приложения? Существуют ли какие-либо проблемы безопасности для доступа к dll-файлам на IIS-сервере?
Привет Клаус
Я дал всем возможным пользователям (iis user, aspnetuser и т. Д.) Права на запись для c: \, gsdll32.dll, gs.exe, ... но это не сработало. –
Вам нужно будет поместить gsdll32.dll в папку bin webs. – Adrian