Я пытаюсь создать скрипт, который печатает каждый существующий PDF-файл с указанным c драйвером принтера. Я работаю на Windows 10. Я подумал, что лучший способ - это изменить драйвер по умолчанию для каждого файла, например:
import win32print
import win32api
# print testfile1.pdf with copy 1 of the driver
# which has default "print on both sides"
win32print.SetDefaultPrinter('iR 5880C EUR(1)')
win32api.ShellExecute(0,'print','testfile1.pdf','.',None,0)
# print testfile2.pdf with copy 2 of the driver
# which has default "print on 1 side"
win32print.SetDefaultPrinter('iR 5880C EUR(2)')
win32api.ShellExecute(0,'print','testfile2.pdf','.',None,0)
Но когда печатается testfile1.pdf, печатается testfile2.pdf с тот же водитель. Причина в том, что файлы печатаются с использованием Adobe Acrobat PRO D C, который необходимо закрыть после печати testfile1.pdf, чтобы знать, что принтер по умолчанию был заменен. Есть ли способ закрыть Adobe Acrobat PRO D C после печати testfile1.pdf?