Browse Source

1、虚拟设备不保存设备状态,防止干扰脚本判断;
2、将C:\Python27\Lib\site-packages\ssat_sdk\config\resource_run.cfg路径放在全局变量中;

scbc.sat2 5 years ago
parent
commit
b356788c33

+ 8 - 7
SATService/SATService/Global.cpp

@@ -45,6 +45,7 @@ namespace GLOBAL
 	TCHAR g_szDBPassWord[MAX_PATH];				// 数据库登录密码;
 	TCHAR g_szDBName[MAX_PATH];					// 数据库名称;	
 	TCHAR g_szPython27Dir[MAX_PATH] = {0};
+	TCHAR g_szPython27ResourceConfig[MAX_PATH] = { 0 };
 	std::string g_strIPAddress;
 
 	//////////////////////////////////////////////////////////////////////////
@@ -225,12 +226,12 @@ namespace GLOBAL
 		GetPrivateProfileString(_T("LinuxDevice"), _T("model"), _T(""), g_stSATConfig.stLinuxDevice.szModel, MAX_PATH, szIniPath);
 
 		// 读取其他目录的配置文件;sat_result_dir
-		_stprintf_s(szIniPath, _T("%s%s"), g_szPython27Dir, "Lib\\site-packages\\ssat_sdk\\config\\resource_run.cfg");
-		GetPrivateProfileString(_T("COMM"), _T("serial_communicator_port"), _T(""), g_stSATConfig.szTVPort, MAX_PATH, szIniPath);
-		GetPrivateProfileString(_T("Abnormal"), _T("reboot"), NULL, g_stSATConfig.szTVReboot, MAX_PATH, szIniPath);
-		GetPrivateProfileString(_T("Abnormal"), _T("shutdown"), NULL, g_stSATConfig.szTVShutdown, MAX_PATH, szIniPath);
-		g_stSATConfig.bWatchTVPort = GetPrivateProfileInt(_T("Abnormal"), _T("Watch"), 0, szIniPath);
-		GetPrivateProfileString(_T("COMM"), _T("sat_result_dir"), _T(""), g_stSATConfig.szCaseResultDir, MAX_PATH, szIniPath);
+		_stprintf_s(g_szPython27ResourceConfig, _T("%s%s"), g_szPython27Dir, "Lib\\site-packages\\ssat_sdk\\config\\resource_run.cfg");
+		GetPrivateProfileString(_T("COMM"), _T("serial_communicator_port"), _T(""), g_stSATConfig.szTVPort, MAX_PATH, g_szPython27ResourceConfig);
+		GetPrivateProfileString(_T("Abnormal"), _T("reboot"), NULL, g_stSATConfig.szTVReboot, MAX_PATH, g_szPython27ResourceConfig);
+		GetPrivateProfileString(_T("Abnormal"), _T("shutdown"), NULL, g_stSATConfig.szTVShutdown, MAX_PATH, g_szPython27ResourceConfig);
+		g_stSATConfig.bWatchTVPort = GetPrivateProfileInt(_T("Abnormal"), _T("Watch"), 0, g_szPython27ResourceConfig);
+		GetPrivateProfileString(_T("COMM"), _T("sat_result_dir"), _T(""), g_stSATConfig.szCaseResultDir, MAX_PATH, g_szPython27ResourceConfig);
 		// 将反斜转正斜;
 		std::string dir = Replace(g_stSATConfig.szCaseResultDir, "\\", "/");
 		_stprintf_s(g_stSATConfig.szCaseResultDir, dir.c_str());
@@ -241,7 +242,7 @@ namespace GLOBAL
 		TCHAR szValue[10] = { 0 };
 		_itoa_s(g_stSATConfig.dwTCPSvrPort, szValue, 10);
 		// 作用:python脚本不需要去读取SATService的配置文件;
-		WritePrivateProfileString(_T("COMM"), _T("runner_tcp_port"), szValue, szIniPath);
+		WritePrivateProfileString(_T("COMM"), _T("runner_tcp_port"), szValue, g_szPython27ResourceConfig);
 
 		return 0;
 	}

+ 1 - 0
SATService/SATService/Global.h

@@ -117,6 +117,7 @@ namespace GLOBAL
 	extern TCHAR g_szFna[_MAX_FNAME];
 	extern TCHAR g_szExt[_MAX_EXT];
 	extern TCHAR g_szPython27Dir[MAX_PATH];
+	extern TCHAR g_szPython27ResourceConfig[MAX_PATH];
 	extern std::string g_strIPAddress;
 
 	//////////////////////////////////////////////////////////////////////////

+ 6 - 9
SATService/SATService/SATDevices.cpp

@@ -455,25 +455,22 @@ int CSATDevices::AttachDeviceName2Buffer(SATPROTO::Device (&pbuff)[SATPROTO::MAX
 
 void CSATDevices::SaveDeviceStatus2Config(SATDEV::STDevice &stDevice)
 {
-	TCHAR szIniPath[MAX_PATH] = {0};
-	_stprintf_s(szIniPath, _T("%s%s"), GLOBAL::g_szPython27Dir, "Lib\\site-packages\\ssat_sdk\\config\\resource_run.cfg");
 	if ( stDevice.nStatus == SATDEV::Online )
-		WritePrivateProfileString(_T("ADBSTATUS"), stDevice.strName.c_str(), _T("Online"), szIniPath);
+		WritePrivateProfileString(_T("ADBSTATUS"), stDevice.strName.c_str(), _T("Online"), GLOBAL::g_szPython27ResourceConfig);
 	else if ( stDevice.nStatus == SATDEV::Offline )
-		WritePrivateProfileString(_T("ADBSTATUS"), stDevice.strName.c_str(), _T("Offline"), szIniPath);
+		WritePrivateProfileString(_T("ADBSTATUS"), stDevice.strName.c_str(), _T("Offline"), GLOBAL::g_szPython27ResourceConfig);
 	else if ( stDevice.nStatus == SATDEV::Dropline )
-		WritePrivateProfileString(_T("ADBSTATUS"), stDevice.strName.c_str(), _T("Dropline"), szIniPath);
+		WritePrivateProfileString(_T("ADBSTATUS"), stDevice.strName.c_str(), _T("Dropline"), GLOBAL::g_szPython27ResourceConfig);
 }
 
 void CSATDevices::SaveAllDevicesStatus2Config()
 {
 	// ÏÈÇå¿Õ¶ÎÄÚÈÝ;
-	TCHAR szIniPath[MAX_PATH] = {0};
-	_stprintf_s(szIniPath, _T("%s%s"), GLOBAL::g_szPython27Dir, "Lib\\site-packages\\ssat_sdk\\config\\resource_run.cfg");
-	WritePrivateProfileString(_T("ADBSTATUS"), NULL, NULL, szIniPath);
+	WritePrivateProfileString(_T("ADBSTATUS"), NULL, NULL, GLOBAL::g_szPython27ResourceConfig);
 
 	std::vector<SATDEV::STDevice>::iterator it = s_vtDevices.begin();
 	for ( ; it != s_vtDevices.end(); it++ ) {
-		SaveDeviceStatus2Config(*it);
+		if ( it->nType != SATDEV::Virtual )
+			SaveDeviceStatus2Config(*it);
 	}
 }