У меня есть приложение, созданное в версии 10.5, которое может успешно создавать PDF-файлы с помощью функции «Сохранить как» в Windows XP. Когда я перешел на Windows 7 (32-разрядная версия), мне не удалось вернуть -1 и файл нулевой длины.
Я пробовал все, что мог понять. Я пробовал многочисленные версии Ghostscript (8.54, 8.71, 9.01), удалял драйвер и заново добавлял его. Я также скопировал EXE-файлы и DLL-файлы ghostscript в каталог моего приложения.
Системные переменные включают GS_DLL=C:\Program Files\gs\gs9.01\bin\gsdll32.dll и PATH с C:\Program Files\gs\gs9.01\bin\; в нем (пробовал, он указан первым и последним в пути).
Когда я добавляю принтер «Sybase DataWindow PS», я указываю «C:\Program Files\gs\gs9.01\lib\» в качестве папки. Я пробовал делиться и не делиться принтером.
Я проверил все, что упоминалось в Сохранение окна данных в формате PDF в PB 10.5 и это все еще не удалось.
Я в тупике... есть еще идеи?
--
-- Дополнительная информация добавлена 2 марта 2011 г.
Я должен отметить, что это PB10.5 - не уверен, что это имеет значение. У меня также настроена безопасность Windows, так что я получаю все надоедливые окна сообщений управления учетными записями пользователей.
Вот как я добавил принтер - я считаю, что все правильно
Добавить принтер Использовать существующий порт, ФАЙЛ: (Печать в файл) Для драйвера -- Иметь диск, выбранный "c:\Program Files\gs\gs9.01\lib\ghostpdf.inf" -- (заменить текущий драйвер) Назвать его : Sybase DataWindow PS (орфография подтверждена)
Когда я печатаю тестовую страницу, создается PDF-файл размером 177 КБ, но когда я его открываю, я получаю сообщение об ошибке: «Adobe Reader не может открыть «test.pdf», потому что это либо неподдерживаемый тип файла, либо файл был поврежден (например, он был отправлен как вложение электронной почты и не был правильно декодирован).
Та же ошибка, когда я пытаюсь что-то напечатать из блокнота.
Когда я печатаю из приложения PB с помощью dw_1.saveAs ("c:\test\test.pdf", PDF!), он возвращает -1 и создает PDF-файл размером 0.
Я применил самое последнее обновление Adobe (похоже, они появляются ежедневно!).
Я подтвердил, что у меня есть раздел реестра HKLM\SOFTWARE\GPL Ghostscript\9.01\ со значениями: GS_DLL (REG_SZ) Установить в C:\Program Files\gs\gs9.01\bin\gsdll32.dll
GS_LIB (REG_SZ) Установить в C:\Program Files\gs\gs9.01\lib;C:\Program Files\gs\fonts
DLL существует в этом каталоге, и два каталога, на которые ссылается GS_LIB, существуют и имеют содержимое.
Спасибо!
D