프로그래밍

C# 프린터 관련 잡다한 메소드

준이바라기얍 2021. 8. 16. 12:23
반응형

C#에서 프린터 제어를 위한 기본기능 제외 나머지 잡다한 부분에 대한 내용 공유합니다.

 

참고로만 봐주세요.

 

private System.Drawing.Image GetLabelImage()
        {
            System.Drawing.Image imgReturn;

            try
            {
                imgReturn = this.g_formLabelEmulator.GetLabelImage();
                return imgReturn;
            }
            catch (Exception ex)
            {
                this.m_Info.Set_Log(.Common.EnuCommon.LogType.Printer, DateTime.Now.ToString("yyyyMMddHHmmssfff"), ex.ToString());
                return null;
            }
        }

        public void EmulatorFowmShow()
        {
            try
            {
                this.g_formLabelEmulator.FormShow();
            }
            catch (Exception ex)
            {
                this.m_Info.Set_Log(.Common.EnuCommon.LogType.Printer, DateTime.Now.ToString("yyyyMMddHHmmssfff"), ex.ToString());
            }
        }

        private void Send_LabelPrinter_MSG(string sData)
        {
            try
            {
                this.g_LabelPrinter_Port.WriteLine(sData);
            }
            catch (Exception ex)
            {
                this.m_Info.Set_Log(.Common.EnuCommon.LogType.Printer, DateTime.Now.ToString("yyyyMMddHHmmssfff"), ex.ToString());
            }
        }
   
        private void g_LabelPrinter_Action_Timer_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
        {
            try
            {
                if (this.g_LabelPrinter_Port.IsOpen == false)
                {
                    if (this.g_dtLast_TryConnection_Time_Port <= DateTime.Now.AddMinutes(-1 * this.g_TickTime_TryReconnection_Min))
                    {
                        this.LabelPrinter_Open();
                        this.m_Info.Set_Log(.Common.EnuCommon.LogType.Printer, DateTime.Now.ToString("yyyyMMddHHmmssfff"), "Port 재연결을 시도 했습니다.");
                    }
                }
                else if (this.g_flagConnectionCheck == true && this.g_flagLaberPrinterConnected == false)
                {
                    if (this.g_dtLast_TryConnection_Time_Printer <= DateTime.Now.AddSeconds(-10))
                    {
                        this.ConnectionCheck();
                    }
                }
            }
            catch (Exception ex)
            {
                this.m_Info.Set_Log(.Common.EnuCommon.LogType.Printer, DateTime.Now.ToString("yyyyMMddHHmmssfff"), ex.ToString());
            }
        }
반응형