/** * When a ZebraPrinterConnection has been established, this method * gets the printer and gathers information from the printer such as * the printer language. ToolsUtil will then be used to default the printer. * **/ private void threadedConnect(String addressName) { try { /** * Open the connection * **/ connection.Open(); Thread.Sleep(1000); } catch (ZebraPrinterConnectionException) { updateGuiFromWorkerThread("Unable to connect with printer", Color.Red); disconnect(); } catch (Exception) { updateGuiFromWorkerThread("Error communicating with printer", Color.Red); disconnect(); } printer = null; if (connection != null && connection.IsConnected()) { /** * Get the printer instance and the printer language, then do a factory default on the printer. * **/ try { updateGuiFromWorkerThread("Getting printer...", Color.Goldenrod); Thread.Sleep(1000); printer = ZebraPrinterFactory.GetInstance(connection); updateGuiFromWorkerThread("Got Printer, getting Language...", Color.LemonChiffon); Thread.Sleep(1000); PrinterLanguage pl = printer.GetPrinterControlLanguage(); updateGuiFromWorkerThread("Printer Language " + pl.ToString(), Color.LemonChiffon); ToolsUtil printer_default = printer.GetToolsUtil(); printer_default.RestoreDefaults(); updateGuiFromWorkerThread("Restoring Defaults", Color.Aqua); Thread.Sleep(1000); disconnect(); } catch (ZebraPrinterConnectionException) { updateGuiFromWorkerThread("Unknown Printer Language", Color.Red); printer = null; Thread.Sleep(1000); disconnect(); } catch (ZebraPrinterLanguageUnknownException) { updateGuiFromWorkerThread("Unknown Printer Language", Color.Red); printer = null; Thread.Sleep(1000); disconnect(); } } }