Это зависит от структуры программного обеспечения приложения.
Если приложение, использующее принтер, имеет только один процесс, выполните Open()
, Claim()
, DeviceEnabled=True
один раз при запуске приложения.Вы можете выполнить DeviceEnabled=False
, Release()
, Close()
непосредственно перед завершением приложения.
При необходимости приложение объединяет TransactionPrint()
, RotatePrint()
, PrintNormal()
и т. Д. Для печати.
Это сокращает время, необходимое для печати.
Если приложения, использующие принтеры, работают одновременно в более чем одном процессе одновременно, только Open()
в каждом процессе.
Если процесс, требующий печати, остается практически неизменным, Claim()
и DeviceEnabled=True
на стороне получения права управления принтером одновременно с моментом переключения задания и экрана, на стороне для освобождения права управления напринтер с DeviceEnabled=False
, Release()
вызывается.
Когда процессы, требующие частой смены печати, Claim()
, DeviceEnabled=True
выполняется после каждого использования принтера и после завершения печати, когда это необходимопечать завершена, DeviceEnabled=False
, Release()
для удержания.