Я запускаю файл .bat из php с помощью exec на php-сервере Windwos, где php запускается с помощью fast-cgi (и nginx). Командная строка для запуска этого скрипта:
pclose(popen("start / ". $cmd, "r"));
Где $ cmd - это что-то вроде "mybatfile.bat 45 1"
Когда я запускаю пакетный файл вручную, он запускает программу на python для чтения базы данных, получения некоторых данных и печати небольшого отчета. И все это работает на 100% правильно.
Когда он запускается с веб-страницы, появляется отчет, поэтому я знаю, что программа запущена. Код регистрирует переданные параметры. Я знаю, что звонок правильный.
При запуске с сервера / веб-страницы отчет отображается на том же принтере примерно на 20% больше, чем при запуске из строки coammnd.
Скрипт python использует PyQt и открывает принтер в основном режиме.
Код
self.printer = QPrinter()
self.printer.setPrinterName(printer)
self.printer.setPageSize(QPrinter.A5)
self.printer.setOrientation(QPrinter.Portrait)
self.painter = QPainter(self.printer)
Кто-нибудь знает, почему это происходит - и что я могу сделать, чтобы исправить это?
O / S - это Windows 7 (64 бит) для разработки и версия для Сервера для производства.
Python 2.7 32 бит.
QT версия 4.
Спасибо
Ian