Click here to Skip to main content
15,895,841 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Hi,
I want to find wheather printer is connected or not in client computer,
for this i have written code as

ManagementScope scope = new ManagementScope("\\root\\cimv2");

              scope.Connect();

              // Select Printers from WMI Object Collections

              ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_Printer");

              string printerName = "";

              foreach (ManagementObject printer in searcher.Get())
              {

                  printerName = printer["Name"].ToString().ToLower();


                  if (printerName.Contains("citizen"))
                  {

                      // Console.WriteLine("Printer = " + printer["Name"]);

                      if (printer["WorkOffline"].ToString().ToLower().Equals("true"))
                      {

                          // printer is offline by user

                          // Console.WriteLine("Your Plug-N-Play printer is not connected.");

                      }

                      else
                      {

                          // printer is not offline

                          Console.WriteLine("Your Plug-N-Play printer is connected.");

                      }
                  }
                  else
                  {



                  }

              }


The code above is giving me status of printer of the server where my code is hosted,But i want the status of printer of client pc.
Posted

1 solution

Take a look at the printer["Local"] property.

If it is True then is a Local printer, if not is a network printer.
 
Share this answer
 
v2

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900