none
WMI + C# + Gerenciamento de Impressoras RRS feed

  • Pergunta

  • Seguinte, preciso desenvolver um aplicativo que gerencia impressoras.

    Preciso das seguintes informações: "Usuário que mandou imprimir(windows)", "Quantidade de paginas","Cor", "Titulo do documento", "Colorido ou não"

    Ou seja, gerencia uma impressora inteira, sei que dá pra trabalhar com WMI,porém não consigo achar na net algo relacionado o que eu preciso, quando acho é mais programa para adicionar impressora, definir padrão... essas coisas!!!


    Desde já agradeço!
    terça-feira, 21 de dezembro de 2010 15:19

Respostas

  • Ola....

       Um link mostrando como consultar informacoes de impressão com o WMI: http://www.devasp.net/net/articles/display/697.html

    public static System.Collections.ArrayList GetPrintJobsCollection(string printerName)
        {
          System.Collections.ArrayList printJobCollection = new System.Collections.ArrayList();
          try
          {
            string PrinterJobs = "SELECT * FROM Win32_PrintJob";
            ManagementObjectSearcher FindPrintJobs =
                 new ManagementObjectSearcher(PrinterJobs);
            ManagementObjectCollection prntJobCollection = FindPrintJobs.Get();
            foreach (ManagementObject prntJob in prntJobCollection)
            {
              System.String jobName = prntJob.Properties["Name"].Value.ToString();
              char[] JobSplit = new char[1];
              JobSplit[0] = Convert.ToChar(",");
              string prnterName = jobName.Split(JobSplit)[0];
              string documentName = "Doucment Name->" + prntJob.Properties["Document"].Value.ToString() + "        Sender Name->" + prntJob.Properties["owner"].Value.ToString();
              if (String.Compare(prnterName, printerName, true) == 0)
              {
                printJobCollection.Add(documentName);
              }
            }
          }
          catch (Exception ex)
          { 
            MessageBox.Show(ex.Message);
          }
          return printJobCollection;
        }
    
    

    Eu não sou pago para postar aqui... faço simplesmente porque eu quero....
    terça-feira, 21 de dezembro de 2010 15:25
    Moderador
  • Ola....

       Um link mostrando como consultar informacoes de impressão com o WMI: http://www.devasp.net/net/articles/display/697.html

       Vale a pena olhar um projeto no Codeplex para gerenciamento de impressoes... http://puma.codeplex.com/


    Eu não sou pago para postar aqui... faço simplesmente porque eu quero....

    terça-feira, 21 de dezembro de 2010 15:27
    Moderador

Todas as Respostas

  • Ola....

       Um link mostrando como consultar informacoes de impressão com o WMI: http://www.devasp.net/net/articles/display/697.html

    public static System.Collections.ArrayList GetPrintJobsCollection(string printerName)
        {
          System.Collections.ArrayList printJobCollection = new System.Collections.ArrayList();
          try
          {
            string PrinterJobs = "SELECT * FROM Win32_PrintJob";
            ManagementObjectSearcher FindPrintJobs =
                 new ManagementObjectSearcher(PrinterJobs);
            ManagementObjectCollection prntJobCollection = FindPrintJobs.Get();
            foreach (ManagementObject prntJob in prntJobCollection)
            {
              System.String jobName = prntJob.Properties["Name"].Value.ToString();
              char[] JobSplit = new char[1];
              JobSplit[0] = Convert.ToChar(",");
              string prnterName = jobName.Split(JobSplit)[0];
              string documentName = "Doucment Name->" + prntJob.Properties["Document"].Value.ToString() + "        Sender Name->" + prntJob.Properties["owner"].Value.ToString();
              if (String.Compare(prnterName, printerName, true) == 0)
              {
                printJobCollection.Add(documentName);
              }
            }
          }
          catch (Exception ex)
          { 
            MessageBox.Show(ex.Message);
          }
          return printJobCollection;
        }
    
    

    Eu não sou pago para postar aqui... faço simplesmente porque eu quero....
    terça-feira, 21 de dezembro de 2010 15:25
    Moderador
  • Ola....

       Um link mostrando como consultar informacoes de impressão com o WMI: http://www.devasp.net/net/articles/display/697.html

       Vale a pena olhar um projeto no Codeplex para gerenciamento de impressoes... http://puma.codeplex.com/


    Eu não sou pago para postar aqui... faço simplesmente porque eu quero....

    terça-feira, 21 de dezembro de 2010 15:27
    Moderador