bool IsOffline = false;
ManagementObjectSearcher searcher = new
ManagementObjectSearcher("SELECT * FROM Win32_Printer where Name='" + printer_name + "'");
foreach (ManagementObject printer in searcher.Get())
{
ReadyCheck(printer);
IsOffline = (bool)printer["WorkOffline"];
var ans =printer["PrinterState"];
var sdgs = Int32.Parse(printer["PrinterStatus"].ToString());
switch (Int32.Parse(printer["DetectedErrorState"].ToString()))
{
case 1: Console.WriteLine("Other"); break;
case 2: Console.WriteLine("Unknown"); break;
case 3: Console.WriteLine("Idle"); break;
case 4: Console.WriteLine("Printing"); break;
case 5: Console.WriteLine("Warmup"); break;
case 6: Console.WriteLine("Stopped printing"); break;
case 7: Console.WriteLine("Offline"); break;
default: Console.WriteLine("sfaasf"); break;
}
}
if (!IsOffline)
{
// ReadyCheck(printer);
}
//PrinterStatus this gives always 3 and Idle its not supported by my Xprinter XP -80c
I expected any changes in answers but always got false in out of paper