/// <summary>
        /// 打印终端标签
        /// </summary>
        /// <param name="item"></param>
        private void PrintTerminalLabelDirectly(TB_Terminal item)
        {
            DisableButtons(true);
            try
            {
                try
                {
                    NameValueCollection nvc = ConfigurationManager.AppSettings;
                    TscLib.openport(nvc["PrinterName"]);
                    TscLib.clearbuffer();
                    //宽度mm,高度mm,速度,浓度,感应器,间距mm,偏移量mm
                    TscLib.setup(nvc["LabelWidth"], nvc["LabelHeight"], "2", "10", "0", "3", "0");
                    TscLib.windowsfont(int.Parse(nvc["TerminalProductNo_x"]), int.Parse(nvc["TerminalProductNo_y"]), 25, 180, 0, 0, "Arial", nvc["TerminalProductNo"]);
                    TscLib.windowsfont(int.Parse(nvc["TerminalModel_x"]), int.Parse(nvc["TerminalModel_y"]), 25, 180, 0, 0, "Arial", nvc["TerminalModel"]);
                    TscLib.windowsfont(int.Parse(nvc["TerminalNumber_x"]), int.Parse(nvc["TerminalNumber_y"]), 25, 180, 0, 0, "Arial", item.Number);
                    TscLib.windowsfont(int.Parse(nvc["TerminalSimCard_x"]), int.Parse(nvc["TerminalSimCard_y"]), 25, 180, 0, 0, "Arial", item.Sim);
                    TscLib.windowsfont(int.Parse(nvc["TerminalMFD_x"]), int.Parse(nvc["TerminalMFD_y"]), 25, 180, 0, 0, "Arial", item.ProductionDate.Value.ToString("yyyy/MM/dd"));
                    TscLib.windowsfont(int.Parse(nvc["TerminalRV_x"]), int.Parse(nvc["TerminalRV_y"]), 25, 180, 0, 0, "Arial", nvc["TerminalRV"]);
                    TscLib.windowsfont(int.Parse(nvc["TerminalMF_x"]), int.Parse(nvc["TerminalMF_y"]), 25, 180, 0, 0, "Arial", nvc["TerminalMF"]);
                    // 条形码
                    TscLib.barcode(nvc["TerminalBAR_x"], nvc["TerminalBAR_x"], "128", "40", "0", "0", "4", "1", item.Number);
                    // 打印
                    TscLib.printlabel("1", "1");
                    Win32.TimeDelay(TIMER_INTEVAL);

                    // 打印完毕通知服务器保存已打印的状态
                    Task.Factory.StartNew(() => ConfirmTerminalLabel(item, (byte)PrintStatus.Printed));
                }
                finally
                {
                    TscLib.closeport();
                }
            }
            catch (Exception e)
            {
                log(string.Format("Print terminal label error: {0}, StackTrace: {1}", e.Message, e.StackTrace));
                PerformExitOrContinue();
            }
            DisableButtons(false);
        }
        private void PrintIridiumLabelDirectly(TB_Satellite item)
        {
            DisableButtons(true);
            try
            {
                try
                {
                    NameValueCollection nvc = ConfigurationManager.AppSettings;
                    TscLib.openport(nvc["PrinterName"]);
                    TscLib.clearbuffer();
                    //宽度mm,高度mm,速度,浓度,感应器,间距mm,偏移量mm
                    TscLib.setup(nvc["IririumLabelWidth"], nvc["IririumLabelHeight"], "2", "10", "0", "3", "0");
                    TscLib.windowsfont(int.Parse(nvc["IririumIMEI_x"]), int.Parse(nvc["IririumIMEI_y"]), 25, 180, 0, 0, "Arial", item.CardNo);
                    TscLib.windowsfont(int.Parse(nvc["IririumPCB_x"]), int.Parse(nvc["IririumPCB_y"]), 25, 180, 0, 0, "Arial", item.PcbNumber);
                    TscLib.windowsfont(int.Parse(nvc["IririumFW_x"]), int.Parse(nvc["IririumFW_y"]), 25, 180, 0, 0, "Arial", item.FWVersion);
                    TscLib.windowsfont(int.Parse(nvc["IririumMFD_x"]), int.Parse(nvc["IririumMFD_y"]), 25, 180, 0, 0, "Arial", item.ManufactureDate);
                    TscLib.windowsfont(int.Parse(nvc["IririumRV_x"]), int.Parse(nvc["IririumRV_y"]), 25, 180, 0, 0, "Arial", item.RatedVoltage);
                    TscLib.windowsfont(int.Parse(nvc["IririumMF_x"]), int.Parse(nvc["IririumMF_y"]), 25, 180, 0, 0, "Arial", item.Manufacturer);
                    // 条形码
                    TscLib.barcode(nvc["IririumBAR_x"], nvc["IririumBAR_x"], "128", "40", "0", "0", "4", "1", item.CardNo);
                    // 打印
                    TscLib.printlabel("1", "1");
                    Win32.TimeDelay(TIMER_INTEVAL);

                    // 打印完毕通知服务器保存已打印的状态
                    Task.Factory.StartNew(() => ConfirmIridiumLabel(item, (byte)PrintStatus.Printed));
                }
                finally
                {
                    TscLib.closeport();
                }
            }
            catch (Exception e)
            {
                log(string.Format("Print iridium label error: {0}, StackTrace: {1}", e.Message, e.StackTrace));
                PerformExitOrContinue();
            }
            DisableButtons(false);
        }