From 1fd49a571338b6c946bb05dcdf59ec1468df5c50 Mon Sep 17 00:00:00 2001 From: SWK <sungwk82@diteam.co.kr> Date: 목, 22 12월 2022 12:31:43 +0900 Subject: [PATCH] ongoing50 #4403 CF AOI Reveiw TACT 지연 개선 1. 일정 시간 유지 신호 처리 시 동기화로 인한 불합리 개선 - 일정 시간 유지 필요 시 스래드풀 작업큐를 이용하여 루프처리 방식으로 변경 - 유지 신호 처리 중 출력 신호 발생 시 작업큐에 등록하여 유지 신호와 결합하여 출력 처리 2. FDC 보고 항목 중 SW 버전 체크 루프 불합리 개선 - 프로그램 시작 시 연동 프로그램 버전 체크 간 실행되지 않는 프로그램이 있는 경우 무한 루프 발생 - 무한 루프로 인한 CPU 점유 상승->루프 중간 Sleep추가 및 코드 간소화 3. 로그 메시지에 시간 ms단위 추가(황만수SM 작업 내역 병합) --- ReviewSystem/ReviewSystem/DlgLog.cpp | 44 +++++++++++++++++++++++++++++--------------- 1 files changed, 29 insertions(+), 15 deletions(-) diff --git a/ReviewSystem/ReviewSystem/DlgLog.cpp b/ReviewSystem/ReviewSystem/DlgLog.cpp index f93a01a..53068df 100644 --- a/ReviewSystem/ReviewSystem/DlgLog.cpp +++ b/ReviewSystem/ReviewSystem/DlgLog.cpp @@ -23,7 +23,20 @@ void CDlgLog::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); - DDX_Control(pDX, IDC_LIST_LOG, m_ctrlLogListBox); + DDX_Control(pDX, IDC_LIST_LOG, m_ctrlLogList); +} + +BOOL CDlgLog::OnInitDialog() +{ + CDialog::OnInitDialog(); + + // TODO: �뿬湲곗뿉 異붽� 珥덇린�솕 �옉�뾽�쓣 異붽��빀�땲�떎. + m_ctrlLogList.SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES); + m_ctrlLogList.InsertColumn(0, _T("�떆媛�"), LVCFMT_CENTER, 150); + m_ctrlLogList.InsertColumn(1, _T("�궡�슜"), LVCFMT_LEFT, 690); + + return TRUE; // return TRUE unless you set the focus to a control + // �삁�쇅: OCX �냽�꽦 �럹�씠吏��뒗 FALSE瑜� 諛섑솚�빐�빞 �빀�땲�떎. } @@ -52,9 +65,9 @@ { CDialog::OnSize(nType, cx, cy); - if (m_ctrlLogListBox.GetSafeHwnd()) + if (m_ctrlLogList.GetSafeHwnd()) { - m_ctrlLogListBox.SetWindowPos(NULL, 0, 0, cx, cy, SWP_NOZORDER); + m_ctrlLogList.SetWindowPos(NULL, 0, 0, cx, cy, SWP_NOZORDER); } // TODO: �뿬湲곗뿉 硫붿떆吏� 泥섎━湲� 肄붾뱶瑜� 異붽��빀�땲�떎. @@ -62,22 +75,23 @@ void CDlgLog::DisplayMessage(const CString& strMessage) { - int nCount; CTime time; - CString strStamp, strLog; + CString strStamp; - nCount = m_ctrlLogListBox.GetCount(); + if (m_ctrlLogList.GetItemCount() > 100) + m_ctrlLogList.DeleteItem(0); - if (nCount % MAX_PRINT_COUNT == 0) - { - m_ctrlLogListBox.ResetContent(); - } + //if (nCount % MAX_PRINT_COUNT == 0) + //{ + // m_ctrlLogList.ResetContent(); + //} SYSTEMTIME currentTime; ::GetLocalTime(¤tTime); time = CTime::GetCurrentTime(); - strStamp.Format(_T("[%02d:%02d:%02d]"), time.GetHour(), time.GetMinute(), time.GetSecond()); - strLog.Format(_T("%s %s"), strStamp, strMessage); - m_ctrlLogListBox.AddString(strLog); - m_ctrlLogListBox.SetCurSel(m_ctrlLogListBox.GetCount()-1); -} \ No newline at end of file + strStamp.Format(_T("[%02d:%02d:%02d:%02d:%02d:%02d]"), time.GetYear(), time.GetMonth(), time.GetDay(), time.GetHour(), time.GetMinute(), time.GetSecond()); + + int nRow = m_ctrlLogList.InsertItem(m_ctrlLogList.GetItemCount(), strStamp); + m_ctrlLogList.SetItemText(nRow, 1, strMessage); + m_ctrlLogList.EnsureVisible(nRow, FALSE); +} -- Gitblit v1.9.3