Controle de Impressão

0 respostas
J

Bom dia Pessoal,

Estou criando um sistema de Controle de Impressão, gostaria de rodar essa aplicação em segundo plano monitorando o Spooler, quando alguém enviar alguma impressão capturar as informações e gravar em Banco de dados.

Segue abaixo o meu código inicial:

package print;  
  
import java.awt.print.PrinterException;    
import java.awt.print.PrinterJob;    
import javax.print.PrintService;    
import javax.print.PrintServiceLookup;    
import javax.print.event.PrintServiceAttributeEvent;    
import javax.print.event.PrintServiceAttributeListener;  
  
public class Print{  
          
    public static void main(String[] args) {  
        //Localiza a impressora padrão    
        final PrintService impressoraPadrao = PrintServiceLookup.lookupDefaultPrintService();    
        final PrinterJob pj = PrinterJob.getPrinterJob();    
        try {    
            pj.setPrintService(impressoraPadrao);  
            pj.setPrintable(null);  
        }catch (PrinterException e){    
            e.printStackTrace();    
        }    
          
        impressoraPadrao.addPrintServiceAttributeListener(new PrintServiceAttributeListener(){    
    
                    @Override    
                    public void attributeUpdate(PrintServiceAttributeEvent psae) {    
                        try{    
                            pj.setPrintService(impressoraPadrao);    
                        }catch (PrinterException e){    
                            e.printStackTrace();    
                        }    
                        System.out.println(pj.getUserName()); //Nome do Usuário  
                        System.out.println(impressoraPadrao); //Impressora que Imprimiu  
                        System.out.println(pj.getCopies());   //Quantidade de Cópias  
                            
                    }    
    
                });    
    }  
}
Criado 22 de outubro de 2014
Respostas 0
Participantes 1