Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    vb.net Numero Totale stampe black or Color

    Buongiorno,
    come da titolo vorrei leggere il numero totale di stampe su una specifica stampante.
    Ora riesco tramite il codice qui sotto e la procedura Select * from Win32_printer a leggere i vari dati, mentre pensavo che con la seconda di ricevere i dati che mi servivano SELECT * FROM Win32_PrintJob , ma non inserisce nulla.
    codice:
     Dim NomeS As String = "WF-3720"        Dim Query As String = String.Format("Select * from Win32_printer where name like '%{0}'", NomeS)
            Dim Searcher As ManagementObjectSearcher = New ManagementObjectSearcher(Query)
            Dim Coll As ManagementObjectCollection = Searcher.Get()
            Dim Printer As New ManagementObject
    
    
    
    
            Try
                For Each mo As ManagementObject In Coll
    
    
                    For Each prop As PropertyData In mo.Properties
                        ListBox1.Items.Add(String.Format("{0}: {1}", prop.Name, prop.Value))
                        '                    LStato.Text &= "STAMPANTE : " & (String.Format("{0}: {1}", prop.Name, prop.Value))
                    Next
                Next
                Dim NomeS2 As String = "WF-3720"
                Dim searchQuery As String = String.Format("SELECT * FROM Win32_PrintJob  where name like '%{0}'", NomeS2)
                Dim searchPrintJobs As ManagementObjectSearcher = New ManagementObjectSearcher(searchQuery)
                Dim prntJobCollection As ManagementObjectCollection = searchPrintJobs.[Get]()
    
    
                For Each prntJob As ManagementObject In prntJobCollection
    
    
    
    
                    Dim documentName As String = prntJob.Properties("Document").Value.ToString()
                    Dim jobSatus As UInt32 = CType(prntJob.Properties("StatusMask").Value, UInt32)
                    Dim pagesPrinted As UInt32 = CType(prntJob.Properties("PagesPrinted").Value, UInt32)
                    Dim totalPages As UInt32 = CType(prntJob.Properties("TotalPages").Value, UInt32)
                    ListBox2.Items.Add(totalPages)
                Next
    dove sbaglio? Ho provato anche altri codici e soluzioni, ma il numero di stampe non lo rileva.
    Grazie
    Riccardo Rossi - Smart Agent 3

    GENIALTEK il tuo sito presto e bene
    www.genialtek.it

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,472
    Ma ti serve il numero di stampe fatte su quella stampante (il totalizzatore) o il numero di job attivi in quel momento?

    Ovviamente i job nascono con l'invio del documento e muoiono con la stampa effettiva (o l'invio nella memoria della stampante).

    Il totale delle pagine stampate (B/N Colore) è un dato caratteristico della stampante che penso possa essere ottenuto solo dal pannello di controllo della stampante stessa.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Ciao, intanto grazie della risposta,
    si penso che Job non mi restituisca nulla proprio perchè in quel momento non ho stampe in corso, eventualmente faccio una prova lancio una stampa e la metto in pausa. Per quanto riguarda le stampe, mi pare ci sia un modo per leggere tutte quelle effettuate attraverso i driver generic ma non so come pensavo appunto job. C'è un software che si installa e monitora la stampante e raccoglie i dati dei contatori ed invia un alert anche quando gli inchiostri stanno finendo. Eì' più complesso di quello che pensavo però so che si può fare.
    Riccardo Rossi - Smart Agent 3

    GENIALTEK il tuo sito presto e bene
    www.genialtek.it

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.