Vader Postado Abril 20, 2006 Denunciar Share Postado Abril 20, 2006 Olá pessoal,Estou usando a API EnumJob para verificar os trabalhos da impressora. Mas só estou conseguindo verificar da impressora padrão, alguém saberia me dizer como faço para ver os trabalhos de uma segunda impressora que não está definida com padrão?Desde já agradeço. Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Abril 23, 2006 Denunciar Share Postado Abril 23, 2006 O primeiro parâmetro que você passa para esta função é justamente a impressora desejada.Abraços,Graymalkin Link para o comentário Compartilhar em outros sites More sharing options...
0 Vader Postado Abril 23, 2006 Autor Denunciar Share Postado Abril 23, 2006 Gray,Ow cara, p*** que alivio, pelo menos tem como.... mas vou precisar abusar dos seus conhecimentos..Abaixo eu tenho o codigo que to usando... eu tentei mudar a letra A p/ B para ver se era aí, mas não rolou! Será que você poderia me ajudar!!!Grande Abraço. 'Aqui eu declaro Private Declare Function OpenPrinter Lib "winspool.drv" Alias "OpenPrinterA" (ByVal pPrinterName As String, phPrinter As Long, pDefault As Any) As Long Private Declare Function ClosePrinter Lib "winspool.drv" (ByVal hPrinter As Long) As Long Private Declare Function EnumJobs Lib "winspool.drv" Alias "EnumJobsA" (ByVal hPrinter As Long, ByVal FirstJob As Long, ByVal NoJobs As Long, ByVal Level As Long, pJob As Any, ByVal cdBuf As Long, pcbNeeded As Long, pcReturned As Long) As Long Private NumeroTrabalhos As Integer 'Load do código! Nesse código não está sendo exibido em lugar nenhum! Mas eu preciso mesmo mudar para a segunda impressora!!! Private Sub Form_Load() Dim hPrinter As Long, lNeeded As Long, lReturned As Long Dim lJobCount As Long OpenPrinter Printer.DeviceName, hPrinter, ByVal 0& EnumJobs hPrinter, 0, 99, 1, ByVal 0&, 0, lNeeded, lReturned If lNeeded > 0 Then ReDim byteJobsBuffer(lNeeded - 1) As Byte EnumJobs hPrinter, 0, 99, 1, byteJobsBuffer(0), lNeeded, lNeeded, lReturned If lReturned > 0 Then lJobCount = lReturned Else lJobCount = 0 End If Else lJobCount = 0 End If ClosePrinter hPrinter End Sub Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Abril 23, 2006 Denunciar Share Postado Abril 23, 2006 Esta daqui é a linha-chave:OpenPrinter Printer.DeviceName, hPrinter, ByVal 0& Veja que Printer é um objeto do VB que representa a impressora padrão. No caso ali, você está passando o nome dela (DeviceName). Basta que você passe o nome de outra para que hPrinter passe a apontar para esta. E é hPrinter que é utilizado daquela linha em diante para identificar a impressora. Você pode obter o nome de todas elas fazendo assim: Dim impressora As Printer For Each impressora In Printers Debug.Print impressora.DeviceName NextQualquer um dos nomes que aparecerem na janela Imediata (CTRL+G) pode ser passado para a função.Certo? ;)Graymalkin Link para o comentário Compartilhar em outros sites More sharing options...
0 Vader Postado Abril 23, 2006 Autor Denunciar Share Postado Abril 23, 2006 Olá Gray, Ainda não implementei o que você me passou ai... mas vou tentar... mas com certeza você exclareceu minha dúvida... valeu mesmo.Abraço. Link para o comentário Compartilhar em outros sites More sharing options...
0 Vader Postado Abril 23, 2006 Autor Denunciar Share Postado Abril 23, 2006 Gray, perfeito, ficou lindo..... valeu mesmo....Até mais... Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Abril 23, 2006 Denunciar Share Postado Abril 23, 2006 Beleza, então. :DFechando.Abraços,Graymalkin Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Vader
Olá pessoal,
Estou usando a API EnumJob para verificar os trabalhos da impressora. Mas só estou conseguindo verificar da impressora padrão, alguém saberia me dizer como faço para ver os trabalhos de uma segunda impressora que não está definida com padrão?
Desde já agradeço.
Link para o comentário
Compartilhar em outros sites
6 respostass a esta questão
Posts Recomendados