-
Notifications
You must be signed in to change notification settings - Fork 0
Problemas relacionados a criação do software
Natan Ogliari edited this page Apr 20, 2024
·
1 revision
def Imprimi_nova(self):
lista_impressora = win32print.EnumPrinters(2)# Lista de impressoras no PC
#for impressora in lista_impressora:
#print(f'Lista a impressora {impressora}')#indice 0 da impressora
myImpressora = lista_impressora[0]
### Adicionado para pagar a bandeja manual
PRINTER_DEFAULTS = {"DesiredAccess": win32print.PRINTER_ALL_ACCESS}#Para abrir as configurações da impressora no modo adiministrador
handle = win32print.OpenPrinter(myImpressora[2], PRINTER_DEFAULTS)
property = win32print.GetPrinter(handle, 2)
#for atributos in dir(property['pDevMode']): #Lista os atributos
#print(atributos)
#print(property['pDevMode'].DefaultSource)
bandeja_old = property['pDevMode'].DefaultSource
property['pDevMode'].DefaultSource = 4 #'4' é a bandeja manual, '3' é a bandeja 1, '7' é a seleção automatica
#print(property['pDevMode'].DefaultSource)
#print(f'Bandeja antiga:{bandeja_old}')
win32print.SetPrinter(handle, 2, property, 0)
win32print.ClosePrinter(handle) #Fecha a configuração
### Fim da bandeja manual
win32print.SetDefaultPrinter(myImpressora[2]) #Define a impressora padrão
#seta a pasta e impressão
caminho = le_pdf.get_dir_saida()
#print(caminho)
lista_arq_print = os.listdir(caminho)
for arquivo in lista_arq_print:
#pass
win32api.ShellExecute(0, "print", str(arquivo), None, str(caminho), 0)
#print(f'o caminho é: {caminho} \n Os arquivo excluidos serão: {arquivo}')
#os.remove(os.path.join(caminho, arquivo))# Remove após a impressão
### Adicionado para devolver bandeja
#PRINTER_DEFAULTS = {"DesiredAccess": win32print.PRINTER_ALL_ACCESS}#Para abrir as configurações da impressora no modo adiministrador
#handle = win32print.OpenPrinter(myImpressora[2], PRINTER_DEFAULTS)
#property = win32print.GetPrinter(handle, 2)
#property['pDevMode'].DefaultSource = bandeja_old #'4' é a bandeja manual, '3' é a bandeja 1, '7' é a seleção automatica
#win32print.SetPrinter(handle, 2, property, 0)
#win32print.ClosePrinter(handle) #Fecha a configuração
#win32print.SetDefaultPrinter(myImpressora[2]) #Define a impressora padrão
### FIM ### def Imprimi_nova(self):