From d7c88780e1df54f34563d60bd7fa01011d2eef03 Mon Sep 17 00:00:00 2001 From: chenluhua1980 <Chenluhua@qq.com> Date: 星期一, 26 一月 2026 23:17:17 +0800 Subject: [PATCH] 1.CSVData.cpp 里 unserialize 用了 8*2、125*2,但 serialize 只写 8 + 125 字节。 m_svRawData.insert 的 end 指针是 pszBuffer + 125*2,没有用 index 计算,可能把无效区域一起拷进去。 一旦 size 实际是 133(不是 266),就会直接越界,堆会被破坏,m_svDatas.clear() 在销毁元素时崩。 --- SourceCode/Bond/BondEq/CPageAlarm.h | 24 ++++++++++++++++++++++++ 1 files changed, 24 insertions(+), 0 deletions(-) diff --git a/SourceCode/Bond/BondEq/CPageAlarm.h b/SourceCode/Bond/BondEq/CPageAlarm.h index 583a6b2..7d88e52 100644 --- a/SourceCode/Bond/BondEq/CPageAlarm.h +++ b/SourceCode/Bond/BondEq/CPageAlarm.h @@ -18,11 +18,30 @@ void LoadAlarms(); void AddAlarm(CAlarmMonitor* pMonitor, CAlarm* pAlarm); void UpdateAlarm(CAlarmMonitor* pMonitor, CAlarm* pAlarm); + void UpdatePageData(); + void UpdatePageControls(); + void FillDataToListCtrl(CListCtrl* pListCtrl, const std::vector<std::vector<std::string>>& vecData); private: COLORREF m_crBkgnd; HBRUSH m_hbrBkgnd; IObserver* m_pObserver; + + // 关键字 + std::string m_strKeyword; + + // 页码 + int m_nCurPage; + int m_nTotalPages; + + // 日期 + int m_nDateTimeFlag; + char m_szTimeStart[64]; + char m_szTimeEnd[64]; + + // 控件 + CDateTimeCtrl m_dateTimeStart; + CDateTimeCtrl m_dateTimeEnd; // 对话框数据 @@ -40,4 +59,9 @@ afx_msg void OnDestroy(); afx_msg void OnSize(UINT nType, int cx, int cy); virtual BOOL DestroyWindow(); + afx_msg void OnCbnSelchangeComboDatetime(); + afx_msg void OnBnClickedButtonSearch(); + afx_msg void OnBnClickedButtonExport(); + afx_msg void OnBnClickedButtonPrevPage(); + afx_msg void OnBnClickedButtonNextPage(); }; -- Gitblit v1.9.3