From 594cf28244b9420e5a8543883f3df183368dfbdd Mon Sep 17 00:00:00 2001
From: mrDarker <mr.darker@163.com>
Date: 星期二, 13 五月 2025 15:06:12 +0800
Subject: [PATCH] 1. 修复AlarmList.csv文件异常时导致闪退的问题 2. 修复Master.dat异常时进程无法退出的问题

---
 SourceCode/Bond/Servo/CMaster.cpp |   24 ++++++++++++++++--------
 1 files changed, 16 insertions(+), 8 deletions(-)

diff --git a/SourceCode/Bond/Servo/CMaster.cpp b/SourceCode/Bond/Servo/CMaster.cpp
index 6394380..7331415 100644
--- a/SourceCode/Bond/Servo/CMaster.cpp
+++ b/SourceCode/Bond/Servo/CMaster.cpp
@@ -602,15 +602,23 @@
 
 	int CMaster::readCache()
 	{
-		CFile file;
-		if (!file.Open(m_strFilepath.c_str(), CFile::modeRead)) {
-			return -1;
-		}
+		try {
+			CFile file;
+			if (!file.Open(m_strFilepath.c_str(), CFile::modeRead)) {
+				return -1;
+			}
 
-		CArchive ar(&file, CArchive::load);
-		serialize(ar);
-		ar.Close();
-		file.Close();
+			CArchive ar(&file, CArchive::load);
+			serialize(ar);
+			ar.Close();
+			file.Close();
+		}
+		catch (CFileException* e) {
+			TCHAR szErr[512];
+			e->GetErrorMessage(szErr, 512);
+			AfxMessageBox(szErr);
+			e->Delete();
+		}
 
 		return 0;
 	}

--
Gitblit v1.9.3