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/BoounionPLC/BoounionPLC.vcxproj |   28 ++++++++++++++++++++++++----
 1 files changed, 24 insertions(+), 4 deletions(-)

diff --git a/SourceCode/Bond/BoounionPLC/BoounionPLC.vcxproj b/SourceCode/Bond/BoounionPLC/BoounionPLC.vcxproj
index 7b7068a..edc7445 100644
--- a/SourceCode/Bond/BoounionPLC/BoounionPLC.vcxproj
+++ b/SourceCode/Bond/BoounionPLC/BoounionPLC.vcxproj
@@ -116,7 +116,7 @@
       <Optimization>Disabled</Optimization>
       <PreprocessorDefinitions>_WINDOWS;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <SDLCheck>true</SDLCheck>
-      <AdditionalIncludeDirectories>.;.\DBManager;..\DatabaseSDK\include</AdditionalIncludeDirectories>
+      <AdditionalIncludeDirectories>.;.\DBManager;.\FileManager;..\DatabaseSDK\include;..\BLControlsSDK\include;..\BLControlsSDK\GridControl</AdditionalIncludeDirectories>
     </ClCompile>
     <Link>
       <SubSystem>Windows</SubSystem>
@@ -169,7 +169,7 @@
       <IntrinsicFunctions>true</IntrinsicFunctions>
       <PreprocessorDefinitions>_WINDOWS;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <SDLCheck>true</SDLCheck>
-      <AdditionalIncludeDirectories>.;.\DBManager;..\DatabaseSDK\include</AdditionalIncludeDirectories>
+      <AdditionalIncludeDirectories>.;.\DBManager;.\FileManager;..\DatabaseSDK\include;..\BLControlsSDK\include;..\BLControlsSDK\GridControl</AdditionalIncludeDirectories>
     </ClCompile>
     <Link>
       <SubSystem>Windows</SubSystem>
@@ -193,13 +193,17 @@
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\BondEq\HorizontalLine.h" />
+    <ClInclude Include="AddPLCInfo.h" />
     <ClInclude Include="Alarm.h" />
     <ClInclude Include="AlarmMonitor.h" />
     <ClInclude Include="AlarmPopupDlg.h" />
     <ClInclude Include="ApredTreeCtrl.h" />
+    <ClInclude Include="AxisDetailSettingsDlg.h" />
+    <ClInclude Include="AxisSettingsDlg.h" />
     <ClInclude Include="BlButton.h" />
     <ClInclude Include="BoounionPLC.h" />
     <ClInclude Include="BoounionPLCDlg.h" />
+    <ClInclude Include="CBaseDlg.h" />
     <ClInclude Include="CBaseView.h" />
     <ClInclude Include="CMainContainer.h" />
     <ClInclude Include="Common.h" />
@@ -208,10 +212,15 @@
     <ClInclude Include="Context.h" />
     <ClInclude Include="CPageLogcat.h" />
     <ClInclude Include="DBManager\AlarmManager.h" />
-    <ClInclude Include="DBManager\AxisManager.h" />
     <ClInclude Include="DBManager\SystemLogManager.h" />
     <ClInclude Include="DBManager\UserManager.h" />
+    <ClInclude Include="FileManager\AxisManager.h" />
+    <ClInclude Include="FileManager\IOManager.h" />
+    <ClInclude Include="FileManager\pugiconfig.hpp" />
+    <ClInclude Include="FileManager\pugixml.hpp" />
+    <ClInclude Include="InputDialog.h" />
     <ClInclude Include="Intent.h" />
+    <ClInclude Include="IOMonitoringDlg.h" />
     <ClInclude Include="Log.h" />
     <ClInclude Include="LogEdit.h" />
     <ClInclude Include="McBool.h" />
@@ -231,13 +240,17 @@
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\BondEq\HorizontalLine.cpp" />
+    <ClCompile Include="AddPLCInfo.cpp" />
     <ClCompile Include="Alarm.cpp" />
     <ClCompile Include="AlarmMonitor.cpp" />
     <ClCompile Include="AlarmPopupDlg.cpp" />
     <ClCompile Include="ApredTreeCtrl.cpp" />
+    <ClCompile Include="AxisDetailSettingsDlg.cpp" />
+    <ClCompile Include="AxisSettingsDlg.cpp" />
     <ClCompile Include="BlButton.cpp" />
     <ClCompile Include="BoounionPLC.cpp" />
     <ClCompile Include="BoounionPLCDlg.cpp" />
+    <ClCompile Include="CBaseDlg.cpp" />
     <ClCompile Include="CBaseView.cpp" />
     <ClCompile Include="CMainContainer.cpp" />
     <ClCompile Include="Component.cpp" />
@@ -247,10 +260,17 @@
     <ClCompile Include="DBManager\AlarmManager.cpp">
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Use</PrecompiledHeader>
     </ClCompile>
-    <ClCompile Include="DBManager\AxisManager.cpp" />
     <ClCompile Include="DBManager\SystemLogManager.cpp" />
     <ClCompile Include="DBManager\UserManager.cpp" />
+    <ClCompile Include="FileManager\AxisManager.cpp" />
+    <ClCompile Include="FileManager\IOManager.cpp" />
+    <ClCompile Include="FileManager\pugixml.cpp">
+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">NotUsing</PrecompiledHeader>
+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">NotUsing</PrecompiledHeader>
+    </ClCompile>
+    <ClCompile Include="InputDialog.cpp" />
     <ClCompile Include="Intent.cpp" />
+    <ClCompile Include="IOMonitoringDlg.cpp" />
     <ClCompile Include="Log.cpp" />
     <ClCompile Include="LogEdit.cpp" />
     <ClCompile Include="McBool.cpp" />

--
Gitblit v1.9.3