浏览代码

DLL多语言版本;

sat23 4 年之前
父节点
当前提交
ba74df0c99
共有 59 个文件被更改,包括 238 次插入2268 次删除
  1. 2 0
      SATHelper/SATHelper/DevicesWnd.cpp
  2. 4 3
      SATHelper/SATHelper/DlgLogin.cpp
  3. 1 1
      SATHelper/SATHelper/DlgProBar.cpp
  4. 2 0
      SATHelper/SATHelper/Global.cpp
  5. 2 0
      SATHelper/SATHelper/Global.h
  6. 51 0
      SATHelper/SATHelper/GlobalString.cpp
  7. 31 0
      SATHelper/SATHelper/GlobalString.h
  8. 2 2
      SATHelper/SATHelper/IMGCommon.cpp
  9. 8 8
      SATHelper/SATHelper/IRControlWnd.cpp
  10. 25 19
      SATHelper/SATHelper/MainFrm.cpp
  11. 31 3
      SATHelper/SATHelper/Resource.h
  12. 36 11
      SATHelper/SATHelper/SATHelper.cpp
  13. 1 0
      SATHelper/SATHelper/SATHelper.h
  14. 1 841
      SATHelper/SATHelper/SATHelper.rc
  15. 5 47
      SATHelper/SATHelper/SATHelper.vcxproj
  16. 11 133
      SATHelper/SATHelper/SATHelper.vcxproj.filters
  17. 0 13
      SATHelper/SATHelper/res/SATHelper.rc2
  18. 二进制
      SATHelper/SATHelper/res/SATHelperDoc.ico
  19. 二进制
      SATHelper/SATHelper/res/Toolbar.bmp
  20. 二进制
      SATHelper/SATHelper/res/Toolbar256.bmp
  21. 二进制
      SATHelper/SATHelper/res/buttons.bmp
  22. 二进制
      SATHelper/SATHelper/res/checked.bmp
  23. 二进制
      SATHelper/SATHelper/res/class_view.ico
  24. 二进制
      SATHelper/SATHelper/res/class_view_hc.ico
  25. 二进制
      SATHelper/SATHelper/res/classview.bmp
  26. 二进制
      SATHelper/SATHelper/res/classview_hc.bmp
  27. 二进制
      SATHelper/SATHelper/res/explorer.bmp
  28. 二进制
      SATHelper/SATHelper/res/explorer_hc.bmp
  29. 二进制
      SATHelper/SATHelper/res/file_view.ico
  30. 二进制
      SATHelper/SATHelper/res/file_view_hc.ico
  31. 二进制
      SATHelper/SATHelper/res/filelarge.bmp
  32. 二进制
      SATHelper/SATHelper/res/filesmall.bmp
  33. 二进制
      SATHelper/SATHelper/res/fileview.bmp
  34. 二进制
      SATHelper/SATHelper/res/fileview_hc.bmp
  35. 二进制
      SATHelper/SATHelper/res/info.bmp
  36. 二进制
      SATHelper/SATHelper/res/main.bmp
  37. 二进制
      SATHelper/SATHelper/res/menuimages.bmp
  38. 二进制
      SATHelper/SATHelper/res/menuimages_hc.bmp
  39. 二进制
      SATHelper/SATHelper/res/nav_large.bmp
  40. 二进制
      SATHelper/SATHelper/res/nav_large_hc.bmp
  41. 二进制
      SATHelper/SATHelper/res/output_wnd.ico
  42. 二进制
      SATHelper/SATHelper/res/output_wnd_hc.ico
  43. 二进制
      SATHelper/SATHelper/res/pages.bmp
  44. 二进制
      SATHelper/SATHelper/res/pages_hc.bmp
  45. 二进制
      SATHelper/SATHelper/res/pages_small.bmp
  46. 二进制
      SATHelper/SATHelper/res/pages_small_hc.bmp
  47. 二进制
      SATHelper/SATHelper/res/probar.gif
  48. 二进制
      SATHelper/SATHelper/res/properties.bmp
  49. 二进制
      SATHelper/SATHelper/res/properties_hc.bmp
  50. 二进制
      SATHelper/SATHelper/res/properties_wnd.ico
  51. 二进制
      SATHelper/SATHelper/res/properties_wnd_hc.ico
  52. 0 1186
      SATHelper/SATHelper/res/ribbon.mfcribbon-ms
  53. 二进制
      SATHelper/SATHelper/res/sort.bmp
  54. 二进制
      SATHelper/SATHelper/res/sort_hc.bmp
  55. 二进制
      SATHelper/SATHelper/res/unchecked.bmp
  56. 二进制
      SATHelper/SATHelper/res/writelarge.bmp
  57. 二进制
      SATHelper/SATHelper/res/writesmall.bmp
  58. 24 0
      SATHelper/SATHelper/resource.h
  59. 1 1
      SATHelper/SATHelper/stdafx.h

+ 2 - 0
SATHelper/SATHelper/DevicesWnd.cpp

@@ -183,6 +183,8 @@ int CDevicesWnd::InitCtrl()
 	m_btnSVNUpdate.m_nFlatStyle = CMFCButton::FlatStyle::BUTTONSTYLE_FLAT;
 	m_btnSVNUpdate.m_nFlatStyle = CMFCButton::FlatStyle::BUTTONSTYLE_FLAT;
 	// 设置鼠标形状;
 	// 设置鼠标形状;
 	m_btnSVNUpdate.SetMouseCursorHand();
 	m_btnSVNUpdate.SetMouseCursorHand();
+
+	return 0;
 }
 }
 
 
 CDevicesWnd::~CDevicesWnd()
 CDevicesWnd::~CDevicesWnd()

+ 4 - 3
SATHelper/SATHelper/DlgLogin.cpp

@@ -47,7 +47,7 @@ BOOL CDlgLogin::OnInitDialog()
 	SetDlgItemText(IDC_EDIT_USERNAME, Global::g_Config.strSATUserName.c_str());
 	SetDlgItemText(IDC_EDIT_USERNAME, Global::g_Config.strSATUserName.c_str());
 	SetDlgItemText(IDC_EDIT_PASSWORD, Global::g_Config.strSATPassword.c_str());
 	SetDlgItemText(IDC_EDIT_PASSWORD, Global::g_Config.strSATPassword.c_str());
 
 
-	SetDlgItemText(IDOK, SATData::login_resp.bStatus ? _T("登出") : _T("登录"));
+	SetDlgItemText(IDOK, SATData::login_resp.bStatus ? GlobalString::g_strLogin : GlobalString::g_strLogout);
 
 
 	return TRUE;  // return TRUE unless you set the focus to a control
 	return TRUE;  // return TRUE unless you set the focus to a control
 				  // 异常: OCX 属性页应返回 FALSE
 				  // 异常: OCX 属性页应返回 FALSE
@@ -57,6 +57,7 @@ BOOL CDlgLogin::OnInitDialog()
 void CDlgLogin::OnBnClickedOk()
 void CDlgLogin::OnBnClickedOk()
 {
 {
 	// TODO: 在此添加控件通知处理程序代码
 	// TODO: 在此添加控件通知处理程序代码
+	UpdateData(FALSE);
 	CString strUserName, strPassword;
 	CString strUserName, strPassword;
 	GetDlgItemText(IDC_EDIT_USERNAME, strUserName);
 	GetDlgItemText(IDC_EDIT_USERNAME, strUserName);
 	GetDlgItemText(IDC_EDIT_PASSWORD, strPassword);
 	GetDlgItemText(IDC_EDIT_PASSWORD, strPassword);
@@ -68,7 +69,7 @@ void CDlgLogin::OnBnClickedOk()
 			}
 			}
 
 
 			if (!SATData::login_resp.bStatus)
 			if (!SATData::login_resp.bStatus)
-				AfxMessageBox("登录失败");
+				AfxMessageBox(GlobalString::g_strLoginFail);
 		}
 		}
 	} 
 	} 
 	else {
 	else {
@@ -78,7 +79,7 @@ void CDlgLogin::OnBnClickedOk()
 			}
 			}
 
 
 			if (!SATData::logout_resp.bStatus)
 			if (!SATData::logout_resp.bStatus)
-				AfxMessageBox("登出失败");
+				AfxMessageBox(GlobalString::g_strLogoutFail);
 		}
 		}
 	}
 	}
 
 

+ 1 - 1
SATHelper/SATHelper/DlgProBar.cpp

@@ -52,7 +52,7 @@ BOOL CDlgProBar::OnInitDialog()
 	if ( m_spImg )
 	if ( m_spImg )
 		delete m_spImg;
 		delete m_spImg;
 	m_spImg = NULL;
 	m_spImg = NULL;
-	m_spImg = IMGCommon::LoadImgFromResource(NULL, MAKEINTRESOURCE(GIF_PROBAR), _T("GIF"));
+	m_spImg = IMGCommon::LoadImgFromResource(Global::g_hLanguageDLL, MAKEINTRESOURCE(GIF_PROBAR), _T("GIF"));
 
 
 #if 1
 #if 1
 	// 获取gif里的维度个数(gif就一个维度);
 	// 获取gif里的维度个数(gif就一个维度);

+ 2 - 0
SATHelper/SATHelper/Global.cpp

@@ -11,6 +11,7 @@ namespace Global
 {
 {
 	//////////////////////////////////////////////////////////////////////////
 	//////////////////////////////////////////////////////////////////////////
 	// È«¾Ö±äÁ¿;
 	// È«¾Ö±äÁ¿;
+	HINSTANCE g_hLanguageDLL = NULL;
 	TCHAR g_szCurModuleDir[MAX_PATH] = { 0 };
 	TCHAR g_szCurModuleDir[MAX_PATH] = { 0 };
 	TCHAR g_szCurModulePath[MAX_PATH] = { 0 };
 	TCHAR g_szCurModulePath[MAX_PATH] = { 0 };
 	TCHAR g_szFna[MAX_PATH] = { 0 };
 	TCHAR g_szFna[MAX_PATH] = { 0 };
@@ -254,6 +255,7 @@ namespace Global
 		_tcscpy_s(g_szConfig, szConfigpath);
 		_tcscpy_s(g_szConfig, szConfigpath);
 
 
 		TCHAR szValue[MAX_PATH] = { 0 };
 		TCHAR szValue[MAX_PATH] = { 0 };
+		g_Config.nLanguage = GetPrivateProfileInt(_T("SATHelper"), _T("Language"), 0, szConfigpath);
 		// ¶ÁÈ¡ÅäÖÃÄÚÈÝ;
 		// ¶ÁÈ¡ÅäÖÃÄÚÈÝ;
 		g_Config.enableTW = GetPrivateProfileInt(_T("SATHelper"), _T("enableTW"), 0, szConfigpath);
 		g_Config.enableTW = GetPrivateProfileInt(_T("SATHelper"), _T("enableTW"), 0, szConfigpath);
 		GetPrivateProfileString(_T("SATHelper"), _T("MIInitBat"), NULL, szValue, MAX_PATH, szConfigpath);
 		GetPrivateProfileString(_T("SATHelper"), _T("MIInitBat"), NULL, szValue, MAX_PATH, szConfigpath);

+ 2 - 0
SATHelper/SATHelper/Global.h

@@ -25,6 +25,7 @@ namespace Global
 {
 {
 	typedef struct __ST_CONFIG__
 	typedef struct __ST_CONFIG__
 	{
 	{
+		int nLanguage;	// 0:Chinese, 1:english
 		// 是否启用测试精灵;
 		// 是否启用测试精灵;
 		bool enableTW;
 		bool enableTW;
 		std::string strMIInitBat;
 		std::string strMIInitBat;
@@ -118,6 +119,7 @@ namespace Global
 
 
 	//////////////////////////////////////////////////////////////////////////
 	//////////////////////////////////////////////////////////////////////////
 	// 全局变量;
 	// 全局变量;
+	extern HINSTANCE g_hLanguageDLL;
 	extern TCHAR g_szCurModuleDir[MAX_PATH];
 	extern TCHAR g_szCurModuleDir[MAX_PATH];
 	extern TCHAR g_szCurModulePath[MAX_PATH];
 	extern TCHAR g_szCurModulePath[MAX_PATH];
 	extern TCHAR g_szFna[MAX_PATH];
 	extern TCHAR g_szFna[MAX_PATH];

+ 51 - 0
SATHelper/SATHelper/GlobalString.cpp

@@ -0,0 +1,51 @@
+#include "stdafx.h"
+#include "GlobalString.h"
+#include "Resource.h"
+
+namespace GlobalString
+{
+	CString g_strLogin;
+	CString g_strLogout;
+	CString g_strLoginFail;
+	CString g_strLogoutFail;
+
+	CString g_strSwitchPC;
+	CString g_strSwitchTV;
+	CString g_strRemoteDevice;
+	CString g_strActuator;
+	CString g_strUSBUpgrade;
+	CString g_strRestartRemoteDevice;
+	CString g_strRemoteSelect;
+	CString g_strActuatorModify;
+	CString g_strActuatorAddIP;
+	CString g_strActuatorTVIP;
+	CString g_strActuatorTaskID;
+	CString g_strActuatorTaskStatus;
+	CString g_strCtrlClose;
+	CString g_strCtrlOpen;
+
+	void GetResourceString()
+	{
+		g_strLogin.LoadString(IDS_LOGIN);
+		g_strLogout.LoadString(IDS_LOGOUT);
+
+		g_strLoginFail.LoadString(IDS_LOGIN_FAIL);
+		g_strLogoutFail.LoadString(IDS_LOGOUT_FAIL);
+
+		g_strSwitchPC.LoadString(IDS_SWITCH_PC);
+		g_strSwitchTV.LoadString(IDS_SWITCH_TV);
+		g_strRemoteDevice.LoadString(IDS_REMOTE_DEVICE);
+		g_strActuator.LoadString(IDS_ACTUATOR);
+		g_strUSBUpgrade.LoadString(IDS_USB_UPGRADE);
+		g_strRestartRemoteDevice.LoadString(IDS_RESTART_REMOTE_DEVICE);
+		g_strRemoteSelect.LoadString(IDS_REMOTE_SELECTE);
+		g_strActuatorModify.LoadString(IDS_ACTUATOR_MODIFY);
+		g_strActuatorAddIP.LoadString(IDS_ACTUATOR_ADDIP);
+		g_strActuatorTVIP.LoadString(IDS_ACTUATOR_TVIP);
+		g_strActuatorTaskID.LoadString(IDS_ACTUATOR_TASKID);
+		g_strActuatorTaskStatus.LoadString(IDS_ACTUATOR_TASK_STATUS);
+
+		g_strCtrlClose.LoadString(IDS_CTRL_CLOSE);
+		g_strCtrlOpen.LoadString(IDS_CTRL_OPEN);
+	}
+};

+ 31 - 0
SATHelper/SATHelper/GlobalString.h

@@ -0,0 +1,31 @@
+#ifndef __GSTRING__
+#define __GSTRING__
+
+#pragma once
+namespace GlobalString
+{
+	extern CString g_strLogin;
+	extern CString g_strLogout;
+	extern CString g_strLoginFail;
+	extern CString g_strLogoutFail;
+
+	extern CString g_strSwitchPC;
+	extern CString g_strSwitchTV;
+	extern CString g_strRemoteDevice;
+	extern CString g_strActuator;
+	extern CString g_strUSBUpgrade;
+	extern CString g_strRestartRemoteDevice;
+	extern CString g_strRemoteSelect;
+	extern CString g_strActuatorModify;
+	extern CString g_strActuatorAddIP;
+	extern CString g_strActuatorTVIP;
+	extern CString g_strActuatorTaskID;
+	extern CString g_strActuatorTaskStatus;
+	extern CString g_strCtrlClose;
+	extern CString g_strCtrlOpen;
+
+	void GetResourceString();
+};
+
+
+#endif

+ 2 - 2
SATHelper/SATHelper/IMGCommon.cpp

@@ -319,10 +319,10 @@ Image* IMGCommon::LoadImgFromResource(IN HMODULE hModule, IN LPCTSTR lpName, IN
 	}
 	}
 
 
 	// 2.获取资源的大小;
 	// 2.获取资源的大小;
-	dwSize = (UINT)SizeofResource(NULL, hSource);
+	dwSize = (UINT)SizeofResource(hModule, hSource);
 
 
 	// 3.加载资源;
 	// 3.加载资源;
-	hGlobal = LoadResource(NULL, hSource);
+	hGlobal = LoadResource(hModule, hSource);
 	if (hGlobal == NULL)
 	if (hGlobal == NULL)
 	{
 	{
 		_tprintf(_T("载入资源失败:%s"), lpName);
 		_tprintf(_T("载入资源失败:%s"), lpName);

+ 8 - 8
SATHelper/SATHelper/IRControlWnd.cpp

@@ -198,13 +198,13 @@ int CIRControlWnd::OnCreate(LPCREATESTRUCT lpCreateStruct)
 	// 创建组合: 
 	// 创建组合: 
 	const DWORD dwViewStyle = WS_CHILD | WS_VISIBLE | CBS_DROPDOWNLIST | WS_BORDER | CBS_SORT | WS_CLIPSIBLINGS | WS_CLIPCHILDREN;
 	const DWORD dwViewStyle = WS_CHILD | WS_VISIBLE | CBS_DROPDOWNLIST | WS_BORDER | CBS_SORT | WS_CLIPSIBLINGS | WS_CLIPCHILDREN;
 
 
-	if (!m_btnRestart.Create(_T("重启遥控器服务进程"), WS_CHILD | WS_VISIBLE, rectDummy, this, ID_BUTTON_RESTART_PROC))
+	if (!m_btnRestart.Create(GlobalString::g_strRestartRemoteDevice, WS_CHILD | WS_VISIBLE, rectDummy, this, ID_BUTTON_RESTART_PROC))
 	{
 	{
 		TRACE0("未能创建遥控器组合 \n");
 		TRACE0("未能创建遥控器组合 \n");
 		return -1;      // 未能创建
 		return -1;      // 未能创建
 	}
 	}
 
 
-	if (!m_wndSignalCheck.Create(_T("通用遥控器选择"), WS_CHILD | WS_VISIBLE | BS_AUTOCHECKBOX, rectDummy, this, ID_CHECKBOX_SIGNAL_TYPE))
+	if (!m_wndSignalCheck.Create(GlobalString::g_strRemoteSelect, WS_CHILD | WS_VISIBLE | BS_AUTOCHECKBOX, rectDummy, this, ID_CHECKBOX_SIGNAL_TYPE))
 	{
 	{
 		TRACE0("未能创建信号集下拉框 \n");
 		TRACE0("未能创建信号集下拉框 \n");
 		return -1;      // 未能创建
 		return -1;      // 未能创建
@@ -273,7 +273,7 @@ int CIRControlWnd::OnCreate(LPCREATESTRUCT lpCreateStruct)
 	// 启动红老鼠;
 	// 启动红老鼠;
 	if (!RedRat::LoadLibrary())
 	if (!RedRat::LoadLibrary())
 	{
 	{
-		AfxMessageBox("加载遥控dll失败,请检测dll是否正常!");
+		AfxMessageBox(Global::g_Config.nLanguage ? "Load dll Fail, pelease check dll is ok!" : "加载遥控dll失败,请检测dll是否正常!");
 	}
 	}
 
 
 	StartIRDevice(FALSE);
 	StartIRDevice(FALSE);
@@ -566,7 +566,7 @@ void CIRControlWnd::StartIRDevice(BOOL bReStart)
 			else
 			else
 			{
 			{
 				TRACE("启动红老鼠进程启动失败\r");
 				TRACE("启动红老鼠进程启动失败\r");
-				AfxMessageBox("启动红老鼠进程启动失败!");
+				AfxMessageBox(Global::g_Config.nLanguage ? "Failed to start red mouse process" : "启动红老鼠进程失败!");
 				return 0;
 				return 0;
 			}
 			}
 		}
 		}
@@ -581,7 +581,7 @@ void CIRControlWnd::StartIRDevice(BOOL bReStart)
 		}
 		}
 
 
 		if (!bRet)
 		if (!bRet)
-			AfxMessageBox("连接红老鼠服务端失败,请重启设备!");
+			AfxMessageBox(Global::g_Config.nLanguage ? "Failed to connect to red mouse server. Please restart the device!" : "连接红老鼠服务端失败,请重启设备!");
 
 
 		// 更新按钮状态;
 		// 更新按钮状态;
 		UpdateSignalBtnStatus();
 		UpdateSignalBtnStatus();
@@ -589,7 +589,7 @@ void CIRControlWnd::StartIRDevice(BOOL bReStart)
 		std::string devices = RedRat::g_getDeviceNames();
 		std::string devices = RedRat::g_getDeviceNames();
 		if (devices.size() == 0)
 		if (devices.size() == 0)
 		{
 		{
-			AfxMessageBox("当前无红老鼠设备连接!");
+			AfxMessageBox(Global::g_Config.nLanguage ? "There is currently no red mouse device connection" :"当前无红老鼠设备连接!");
 		}
 		}
 
 
 		return 1;
 		return 1;
@@ -607,7 +607,7 @@ void CIRControlWnd::ReLoadSignalXml()
 		signalpath.append(Global::g_Config.twUseSignal + ".xml");
 		signalpath.append(Global::g_Config.twUseSignal + ".xml");
 		if (!PathFileExists(signalpath.c_str()))
 		if (!PathFileExists(signalpath.c_str()))
 		{
 		{
-			AfxMessageBox(_T("该信号文件不存在!"));
+			AfxMessageBox(Global::g_Config.nLanguage ? "The signal file does not exist" :_T("该信号文件不存在!"));
 			// 设置默认的;
 			// 设置默认的;
 			CString strSignal;
 			CString strSignal;
 			m_wndSignalCombo.SetCurSel(0);
 			m_wndSignalCombo.SetCurSel(0);
@@ -652,7 +652,7 @@ void CIRControlWnd::ReLoadSignalXml()
 		signalpath.append(Global::g_Config.use_signal + ".xml");
 		signalpath.append(Global::g_Config.use_signal + ".xml");
 		if (!PathFileExists(signalpath.c_str()))
 		if (!PathFileExists(signalpath.c_str()))
 		{
 		{
-			AfxMessageBox(_T("该信号文件不存在!"));
+			AfxMessageBox(Global::g_Config.nLanguage ? "The signal file does not exist" : _T("该信号文件不存在!"));
 			// 设置默认的;
 			// 设置默认的;
 			CString strSignal;
 			CString strSignal;
 			m_wndSignalCombo.SetCurSel(0);
 			m_wndSignalCombo.SetCurSel(0);

+ 25 - 19
SATHelper/SATHelper/MainFrm.cpp

@@ -151,9 +151,9 @@ CMainFrame::~CMainFrame()
 void CMainFrame::InitTrayIcon()
 void CMainFrame::InitTrayIcon()
 {
 {
 	m_trayIcon.SetNotificationWnd(this, WM_MY_TRAY_NOTIFICATION);
 	m_trayIcon.SetNotificationWnd(this, WM_MY_TRAY_NOTIFICATION);
-	m_trayIcon.SetIcon(IDR_MAINFRAME, _T("SATHelper 客户端程序"));
+	m_trayIcon.SetIcon(IDR_MAINFRAME, Global::g_Config.nLanguage ? _T("SATHelper Client") : _T("SATHelper 客户端程序"));
 	m_trayIcon.SetIconInfos(IDR_MAINFRAME, IDR_MAINFRAME, IDR_MAINFRAME);
 	m_trayIcon.SetIconInfos(IDR_MAINFRAME, IDR_MAINFRAME, IDR_MAINFRAME);
-	m_trayIcon.SetDefaultTip(_T("SATHelper 客户端程序"));
+	m_trayIcon.SetDefaultTip(Global::g_Config.nLanguage ? _T("SATHelper Client") : _T("SATHelper 客户端程序"));
 }
 }
 
 
 LRESULT CMainFrame::OnTaskBarCreated(WPARAM wp, LPARAM lp)
 LRESULT CMainFrame::OnTaskBarCreated(WPARAM wp, LPARAM lp)
@@ -212,13 +212,13 @@ void CMainFrame::TaskNotifyIcon()
 {
 {
 	if (!m_bNoticeTray)
 	if (!m_bNoticeTray)
 	{
 	{
-		m_trayIcon.SetIcon(IDR_MAINFRAME, _T("UB530采集程序"));
+		m_trayIcon.SetIcon(IDR_MAINFRAME, Global::g_Config.nLanguage ? _T("UB530 Acquisition procedure") : _T("UB530采集程序"));
 		ShowWindow(SW_SHOWNORMAL);
 		ShowWindow(SW_SHOWNORMAL);
 		m_bNoticeTray = TRUE;
 		m_bNoticeTray = TRUE;
 	}
 	}
 	else
 	else
 	{
 	{
-		m_trayIcon.SetIcon(IDR_MAINFRAME, _T("UB530采集程序"));
+		m_trayIcon.SetIcon(IDR_MAINFRAME, Global::g_Config.nLanguage ? _T("UB530 Acquisition procedure") : _T("UB530采集程序"));
 		ShowWindow(SW_HIDE);
 		ShowWindow(SW_HIDE);
 		m_bNoticeTray = FALSE;
 		m_bNoticeTray = FALSE;
 	}
 	}
@@ -403,7 +403,10 @@ int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
 	InitDevicePanel();
 	InitDevicePanel();
 
 
 	CString strVersionInfo;
 	CString strVersionInfo;
-	strVersionInfo.Format(_T("SATHelper 版本 %s, SAT 版本 %s"), Global::g_szVersion, CSVNMgr::GetInstance()->GetVersion());
+	if ( Global::g_Config.nLanguage )
+		strVersionInfo.Format(_T("SATHelper Version %s, SAT Version %s"), Global::g_szVersion, CSVNMgr::GetInstance()->GetVersion());
+	else
+		strVersionInfo.Format(_T("SATHelper 版本 %s, SAT 版本 %s"), Global::g_szVersion, CSVNMgr::GetInstance()->GetVersion());
 	SetWindowText(strVersionInfo);
 	SetWindowText(strVersionInfo);
 
 
 #ifdef _DEBUG
 #ifdef _DEBUG
@@ -486,23 +489,20 @@ BOOL CMainFrame::CreateDockingWindows()
 	}
 	}
 
 
 	// 创建遥控器窗口
 	// 创建遥控器窗口
-	CString strPropertiesWnd = _T("遥控器");
-	if (!m_wndIRControl.Create(strPropertiesWnd, this, rcPanel, TRUE, ID_VIEW_PROPERTIESWND, WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | CBRS_RIGHT | CBRS_FLOAT_MULTI))
+	if (!m_wndIRControl.Create(GlobalString::g_strRemoteDevice, this, rcPanel, TRUE, ID_VIEW_PROPERTIESWND, WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | CBRS_RIGHT | CBRS_FLOAT_MULTI))
 	{
 	{
 		TRACE0("未能创建“遥控器”窗口\n");
 		TRACE0("未能创建“遥控器”窗口\n");
 		return FALSE; // 未能创建
 		return FALSE; // 未能创建
 	}
 	}
 
 
 	// 创建设备管理窗口
 	// 创建设备管理窗口
-	CString strDevicesWnd = _T("执行器");
-	if (!m_wndDevices.Create(strDevicesWnd, this, rcPanel, TRUE, ID_VIEW_OUTPUTWND, WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | CBRS_RIGHT | CBRS_FLOAT_MULTI))
+	if (!m_wndDevices.Create(GlobalString::g_strActuator, this, rcPanel, TRUE, ID_VIEW_OUTPUTWND, WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | CBRS_RIGHT | CBRS_FLOAT_MULTI))
 	{
 	{
 		TRACE0("未能创建“执行器”窗口\n");
 		TRACE0("未能创建“执行器”窗口\n");
 		return FALSE; // 未能创建
 		return FALSE; // 未能创建
 	}
 	}
 
 
-	CString strUpgradeWnd = _T("USB升级");
-	if (!m_wndUpgrade.Create(strUpgradeWnd, this, rcPanel, TRUE, ID_VIEW_OUTPUTWND, WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | CBRS_RIGHT | CBRS_FLOAT_MULTI))
+	if (!m_wndUpgrade.Create(GlobalString::g_strUSBUpgrade, this, rcPanel, TRUE, ID_VIEW_OUTPUTWND, WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | CBRS_RIGHT | CBRS_FLOAT_MULTI))
 	{
 	{
 		TRACE0("未能创建“升级”窗口\n");
 		TRACE0("未能创建“升级”窗口\n");
 		return FALSE; // 未能创建
 		return FALSE; // 未能创建
@@ -818,7 +818,10 @@ BOOL CMainFrame::PreTranslateMessage(MSG* pMsg)
 			{
 			{
 				SetWindowPos(&wndTopMost, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE);//窗口置顶
 				SetWindowPos(&wndTopMost, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE);//窗口置顶
 				CString strVersionInfo;
 				CString strVersionInfo;
-				strVersionInfo.Format(_T("SATHelper 版本 %s, SAT 版本 %s。视频采集卡 - 前置窗口(请按F3取消或开启前置)"), Global::g_szVersion, CSVNMgr::GetInstance()->GetVersion());
+				if ( Global::g_Config.nLanguage == 1 )
+					strVersionInfo.Format(_T("SATHelper Version %s, SAT Version %s.Video capture - Front window (please press F3 to cancel or open the front window)"), Global::g_szVersion, CSVNMgr::GetInstance()->GetVersion());
+				else
+					strVersionInfo.Format(_T("SATHelper 版本 %s, SAT 版本 %s。视频采集卡 - 前置窗口(请按F3取消或开启前置)"), Global::g_szVersion, CSVNMgr::GetInstance()->GetVersion());
 				//_stprintf_s(szVersion, _T("SATHelper 版本%s 视频采集卡 - 前置窗口(请按F3取消或开启前置)"), Global::g_szVersion);
 				//_stprintf_s(szVersion, _T("SATHelper 版本%s 视频采集卡 - 前置窗口(请按F3取消或开启前置)"), Global::g_szVersion);
 				SetWindowText(strVersionInfo);
 				SetWindowText(strVersionInfo);
 			}
 			}
@@ -826,7 +829,10 @@ BOOL CMainFrame::PreTranslateMessage(MSG* pMsg)
 			{
 			{
 				SetWindowPos(&wndNoTopMost, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE);//取消窗口置顶	
 				SetWindowPos(&wndNoTopMost, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE);//取消窗口置顶	
 				CString strVersionInfo;
 				CString strVersionInfo;
-				strVersionInfo.Format(_T("SATHelper 版本 %s, SAT 版本 %s。视频采集卡 - 取消前置(请按F3取消或开启前置)"), Global::g_szVersion, CSVNMgr::GetInstance()->GetVersion());
+				if (Global::g_Config.nLanguage == 1)
+					strVersionInfo.Format(_T("SATHelper Version %s, SAT Version %s.Video capture - Cancel the front window (please press F3 to cancel or open the front window)"), Global::g_szVersion, CSVNMgr::GetInstance()->GetVersion());
+				else
+					strVersionInfo.Format(_T("SATHelper 版本 %s, SAT 版本 %s。视频采集卡 - 取消前置(请按F3取消或开启前置)"), Global::g_szVersion, CSVNMgr::GetInstance()->GetVersion());
 				//_stprintf_s(szVersion, _T("SATHelper 版本%s 视频采集卡 - 取消前置(请按F3取消或开启前置)"), Global::g_szVersion);
 				//_stprintf_s(szVersion, _T("SATHelper 版本%s 视频采集卡 - 取消前置(请按F3取消或开启前置)"), Global::g_szVersion);
 				SetWindowText(strVersionInfo);
 				SetWindowText(strVersionInfo);
 			}
 			}
@@ -1952,15 +1958,15 @@ void CMainFrame::OnSwitchUsb()
 	CMFCRibbonButton* pSwitchUSB = DYNAMIC_DOWNCAST(CMFCRibbonButton, pRibbon->FindByID(ID_SWITCH_USB));
 	CMFCRibbonButton* pSwitchUSB = DYNAMIC_DOWNCAST(CMFCRibbonButton, pRibbon->FindByID(ID_SWITCH_USB));
 
 
 	CString strText = pSwitchUSB->GetText();
 	CString strText = pSwitchUSB->GetText();
-	if (strText == _T("切PC"))
+	if (strText == GlobalString::g_strSwitchPC)
 	{
 	{
 		TW::SendSwitch(1);		// 切换到TV;
 		TW::SendSwitch(1);		// 切换到TV;
-		pSwitchUSB->SetText(_T("切TV"));
+		pSwitchUSB->SetText(GlobalString::g_strSwitchTV);
 	}
 	}
 	else
 	else
 	{
 	{
 		TW::SendSwitch(0);		// 切换到PC;
 		TW::SendSwitch(0);		// 切换到PC;
-		pSwitchUSB->SetText(_T("切PC"));
+		pSwitchUSB->SetText(GlobalString::g_strSwitchPC);
 	}
 	}
 }
 }
 
 
@@ -2006,14 +2012,14 @@ void CMainFrame::OnPowerCtrl()
 
 
 	TCHAR szCommand[MAX_PATH] = {0};
 	TCHAR szCommand[MAX_PATH] = {0};
 	CString strText = pPowerCtrl->GetText();
 	CString strText = pPowerCtrl->GetText();
-	if (strText == _T("闭合"))
+	if (strText == GlobalString::g_strCtrlOpen)
 	{
 	{
 		_stprintf_s(szCommand, _T("*SET LAN %d POWER ON"), Global::g_Config.nPowerLanIndex);
 		_stprintf_s(szCommand, _T("*SET LAN %d POWER ON"), Global::g_Config.nPowerLanIndex);
 		if ( Global::g_Config.nPowerLanIndex == 0 )
 		if ( Global::g_Config.nPowerLanIndex == 0 )
 			TW::SendCmd(_T("*SET POWER ON"));
 			TW::SendCmd(_T("*SET POWER ON"));
 		else 
 		else 
 			TW::SendCmd(szCommand);
 			TW::SendCmd(szCommand);
-		pPowerCtrl->SetText(_T("断开"));
+		pPowerCtrl->SetText(GlobalString::g_strCtrlClose);
 	}
 	}
 	else
 	else
 	{
 	{
@@ -2022,7 +2028,7 @@ void CMainFrame::OnPowerCtrl()
 			TW::SendCmd(_T("*SET POWER OFF"));
 			TW::SendCmd(_T("*SET POWER OFF"));
 		else
 		else
 			TW::SendCmd(szCommand);
 			TW::SendCmd(szCommand);
-		pPowerCtrl->SetText(_T("闭合"));
+		pPowerCtrl->SetText(GlobalString::g_strCtrlOpen);
 	}
 	}
 }
 }
 
 

+ 31 - 3
SATHelper/SATHelper/Resource.h

@@ -4,15 +4,36 @@
 //
 //
 #define IDD_ABOUTBOX                    100
 #define IDD_ABOUTBOX                    100
 #define IDP_OLE_INIT_FAILED             100
 #define IDP_OLE_INIT_FAILED             100
+#define IDS_LOGIN                       101
+#define IDS_LOGOUT                      102
+#define IDS_SWITCH_PC                   103
+#define IDS_SWITCH_TV                   104
+#define IDS_CTRL_CLOSE                  105
+#define IDS_CTRL_OPEN                   106
+#define IDS_REMOTE_DEVICE               107
+#define IDS_ACTUATOR                    108
+#define IDS_USB_UPGRADE                 109
 #define IDB_WRITESMALL                  110
 #define IDB_WRITESMALL                  110
+#define IDS_RESTART_REMOTE_DEVICE       110
 #define IDB_WRITELARGE                  111
 #define IDB_WRITELARGE                  111
+#define IDS_REMOTE_SELECTE              111
 #define IDB_MAIN                        112
 #define IDB_MAIN                        112
+#define IDS_ACTUATOR_MODIFY             112
 #define IDB_BUTTONS                     113
 #define IDB_BUTTONS                     113
+#define IDS_ACTUATOR_ADDIP              113
 #define IDB_FILELARGE                   114
 #define IDB_FILELARGE                   114
+#define IDS_ACTUATOR_TVIP               114
 #define IDB_FILESMALL                   115
 #define IDB_FILESMALL                   115
+#define IDS_ACTUATOR_TASKID             115
+#define IDS_ACTUATOR_TASK_STATUS        116
+#define IDS_STRING117                   117
+#define IDS_STRING118                   118
 #define IDR_POPUP_EDIT                  119
 #define IDR_POPUP_EDIT                  119
+#define IDS_STRING119                   119
 #define ID_STATUSBAR_PANE1              120
 #define ID_STATUSBAR_PANE1              120
+#define IDS_STRING120                   120
 #define ID_STATUSBAR_PANE2              121
 #define ID_STATUSBAR_PANE2              121
+#define IDS_STRING121                   121
 #define IDS_STATUS_PANE1                122
 #define IDS_STATUS_PANE1                122
 #define IDS_STATUS_PANE2                123
 #define IDS_STATUS_PANE2                123
 #define IDR_MAINFRAME                   128
 #define IDR_MAINFRAME                   128
@@ -22,6 +43,7 @@
 #define ID_VIEW_FILEVIEW                133
 #define ID_VIEW_FILEVIEW                133
 #define ID_VIEW_CLASSVIEW               134
 #define ID_VIEW_CLASSVIEW               134
 #define ID_PROPERTIES                   135
 #define ID_PROPERTIES                   135
+#define IDS_STRING135                   135
 #define ID_OPEN                         136
 #define ID_OPEN                         136
 #define ID_OPEN_WITH                    137
 #define ID_OPEN_WITH                    137
 #define ID_DUMMY_COMPILE                138
 #define ID_DUMMY_COMPILE                138
@@ -119,6 +141,8 @@
 #define GIF_PROBAR                      322
 #define GIF_PROBAR                      322
 #define IDD_DLG_SERVICE                 323
 #define IDD_DLG_SERVICE                 323
 #define IDR_POPUP_DEVICES               326
 #define IDR_POPUP_DEVICES               326
+#define IDS_LOGIN_FAIL                  327
+#define IDS_LOGOUT_FAIL                 328
 #define IDC_COMBO1                      1000
 #define IDC_COMBO1                      1000
 #define IDC_COMBO2                      1001
 #define IDC_COMBO2                      1001
 #define IDC_CHECK1                      1002
 #define IDC_CHECK1                      1002
@@ -190,21 +214,25 @@
 #define ID_CHECK_SHOT_SYSTEM            32820
 #define ID_CHECK_SHOT_SYSTEM            32820
 #define ID_CHECK_IR_SHOT                32823
 #define ID_CHECK_IR_SHOT                32823
 #define ID_CHECK_RCONTROL               32824
 #define ID_CHECK_RCONTROL               32824
-#define ID_CHECK_USB                    32826
 #define ID_TRAYMENU_LOGIN               32825
 #define ID_TRAYMENU_LOGIN               32825
+#define ID_CHECK_USB                    32826
 #define ID_BUTTON2                      32827
 #define ID_BUTTON2                      32827
 #define ID_CHECK_LINEIN                 32828
 #define ID_CHECK_LINEIN                 32828
 #define ID_DEVICES_DEL                  32829
 #define ID_DEVICES_DEL                  32829
 #define ID_CHECK_ACTUATOR               32830
 #define ID_CHECK_ACTUATOR               32830
 #define ID_COMBO_USB                    32831
 #define ID_COMBO_USB                    32831
+#define ID_SWITCH_USB                   32832
+#define ID_COMBO_POWER                  32833
+#define ID_POWER_CTRL                   32834
+#define ID_CHECK_TVPORT                 32835
 
 
 // Next default values for new objects
 // Next default values for new objects
 // 
 // 
 #ifdef APSTUDIO_INVOKED
 #ifdef APSTUDIO_INVOKED
 #ifndef APSTUDIO_READONLY_SYMBOLS
 #ifndef APSTUDIO_READONLY_SYMBOLS
-#define _APS_NEXT_RESOURCE_VALUE        327
+#define _APS_NEXT_RESOURCE_VALUE        328
 #define _APS_NEXT_COMMAND_VALUE         32832
 #define _APS_NEXT_COMMAND_VALUE         32832
-#define _APS_NEXT_CONTROL_VALUE         1024
+#define _APS_NEXT_CONTROL_VALUE         1025
 #define _APS_NEXT_SYMED_VALUE           310
 #define _APS_NEXT_SYMED_VALUE           310
 #endif
 #endif
 #endif
 #endif

+ 36 - 11
SATHelper/SATHelper/SATHelper.cpp

@@ -113,11 +113,23 @@ BOOL CSATHelperApp::InitInstance()
 	EnableTaskbarInteraction(FALSE);
 	EnableTaskbarInteraction(FALSE);
 #endif
 #endif
 
 
+	std::thread t([]() {
+		while (true) {
+			Global::GetConfig();
+			Sleep(15000);
+		}
+		OutputDebugString(_T("刷新配置文件线程退出\n"));
+		});
+	t.detach();
+
 #ifndef _DEBUG
 #ifndef _DEBUG
 	g_hMutex = ::CreateMutex(NULL, FALSE, _T("SATHelper"));
 	g_hMutex = ::CreateMutex(NULL, FALSE, _T("SATHelper"));
 	if (GetLastError() == ERROR_ALREADY_EXISTS)
 	if (GetLastError() == ERROR_ALREADY_EXISTS)
 	{
 	{
-		::MessageBox(NULL, _T("SATHelper已经打开!"), _T("温馨提示"), MB_ICONINFORMATION);
+		if ( Global::g_Config.nLanguage )
+			::MessageBox(NULL, _T("SATHelper was Open!"), _T("Reminder"), MB_ICONINFORMATION);
+		else
+			::MessageBox(NULL, _T("SATHelper已经打开!"), _T("温馨提示"), MB_ICONINFORMATION);
 		return FALSE;
 		return FALSE;
 	}
 	}
 #endif
 #endif
@@ -146,21 +158,32 @@ BOOL CSATHelperApp::InitInstance()
 
 
 	CSVNMgr::GetInstance()->Load();
 	CSVNMgr::GetInstance()->Load();
 #if 1
 #if 1
-	std::thread t([]() {
-		while (true) {
-			Global::GetConfig();
-			Sleep(15000);
-		}
-		OutputDebugString(_T("刷新配置文件线程退出\n"));
-	});
-	t.detach();
-	
 	Global::WriteTextLog("程序启动");
 	Global::WriteTextLog("程序启动");
 
 
 	TW::LoadLibrary();
 	TW::LoadLibrary();
 	RedRat::LoadLibrary();
 	RedRat::LoadLibrary();
 	USBUPGRADE::LoadLibrary();
 	USBUPGRADE::LoadLibrary();
 
 
+	if (Global::g_Config.nLanguage == 0)
+	{
+		Global::g_hLanguageDLL = ::LoadLibrary("ChineseRes.dll");
+	}
+	else if (Global::g_Config.nLanguage == 1)
+	{
+		Global::g_hLanguageDLL = ::LoadLibrary("EnglishRes.dll");
+	}
+
+	if (Global::g_hLanguageDLL)
+		AfxSetResourceHandle(Global::g_hLanguageDLL);
+	else
+	{
+		AfxMessageBox(_T("Load Language Dll Fail!"));
+		return FALSE;
+		//Global::g_hLanguageDLL = AfxGetResourceHandle();
+	}
+
+	GlobalString::GetResourceString();
+
 	// 启动TCP客户端;
 	// 启动TCP客户端;
 	if (CSATClient::GetInstance()->Start())
 	if (CSATClient::GetInstance()->Start())
 	{
 	{
@@ -249,6 +272,8 @@ int CSATHelperApp::ExitInstance()
 	Gdiplus::GdiplusShutdown(m_gdiplusToken);
 	Gdiplus::GdiplusShutdown(m_gdiplusToken);
 	g_iocp.Stop();
 	g_iocp.Stop();
 	CCallPython::Free();
 	CCallPython::Free();
+	if (Global::g_hLanguageDLL)
+		AfxFreeLibrary(Global::g_hLanguageDLL);
 	return CWinAppEx::ExitInstance();
 	return CWinAppEx::ExitInstance();
 }
 }
 
 
@@ -279,7 +304,7 @@ public:
 	{
 	{
 		CDialogEx::OnInitDialog();
 		CDialogEx::OnInitDialog();
 		CString strVersionInfo;
 		CString strVersionInfo;
-		strVersionInfo.Format(_T("%s,%s"), Global::g_szVersion, CSVNMgr::GetInstance()->GetVersion());
+		strVersionInfo.Format(_T("%s,%s."), Global::g_szVersion, CSVNMgr::GetInstance()->GetVersion());
 		GetDlgItem(IDC_STATIC_VERSION)->SetWindowText(strVersionInfo);
 		GetDlgItem(IDC_STATIC_VERSION)->SetWindowText(strVersionInfo);
 
 
 		return TRUE;
 		return TRUE;

+ 1 - 0
SATHelper/SATHelper/SATHelper.h

@@ -32,6 +32,7 @@ public:
 
 
 // 重写
 // 重写
 public:
 public:
+	HINSTANCE m_hLangDLL = NULL;
 	virtual BOOL InitInstance();
 	virtual BOOL InitInstance();
 	virtual int ExitInstance();
 	virtual int ExitInstance();
 
 

+ 1 - 841
SATHelper/SATHelper/SATHelper.rc

@@ -75,846 +75,6 @@ END
 // remains consistent on all systems.
 // remains consistent on all systems.
 IDR_MAINFRAME           ICON                    "res\\SATHelper.ico"
 IDR_MAINFRAME           ICON                    "res\\SATHelper.ico"
 
 
-IDR_SATHelperTYPE       ICON                    "res\\SATHelperDoc.ico"
-
-IDI_FILE_VIEW           ICON                    "res\\file_view.ico"
-
-IDI_FILE_VIEW_HC        ICON                    "res\\file_view_hc.ico"
-
-IDI_CLASS_VIEW          ICON                    "res\\class_view.ico"
-
-IDI_CLASS_VIEW_HC       ICON                    "res\\class_view_hc.ico"
-
-IDI_OUTPUT_WND          ICON                    "res\\output_wnd.ico"
-
-IDI_OUTPUT_WND_HC       ICON                    "res\\output_wnd_hc.ico"
-
-IDI_PROPERTIES_WND      ICON                    "res\\properties_wnd.ico"
-
-IDI_PROPERTIES_WND_HC   ICON                    "res\\properties_wnd_hc.ico"
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Bitmap
-//
-
-IDR_MAINFRAME           BITMAP                  "res\\Toolbar.bmp"
-
-IDR_MAINFRAME_256       BITMAP                  "res\\Toolbar256.bmp"
-
-IDB_MAIN                BITMAP                  "res\\main.bmp"
-
-IDB_FILELARGE           BITMAP                  "res\\filelarge.bmp"
-
-IDB_FILESMALL           BITMAP                  "res\\filesmall.bmp"
-
-IDB_WRITELARGE          BITMAP                  "res\\writelarge.bmp"
-
-IDB_WRITESMALL          BITMAP                  "res\\writesmall.bmp"
-
-IDB_BUTTONS             BITMAP                  "res\\buttons.bmp"
-
-IDR_SORT                BITMAP                  "res\\sort.bmp"
-
-IDB_SORT_24             BITMAP                  "res\\sort_hc.bmp"
-
-IDB_FILE_VIEW           BITMAP                  "res\\fileview.bmp"
-
-IDB_FILE_VIEW_24        BITMAP                  "res\\fileview_hc.bmp"
-
-IDB_CLASS_VIEW          BITMAP                  "res\\classview.bmp"
-
-IDB_CLASS_VIEW_24       BITMAP                  "res\\classview_hc.bmp"
-
-IDR_EXPLORER            BITMAP                  "res\\explorer.bmp"
-
-IDB_EXPLORER_24         BITMAP                  "res\\explorer_hc.bmp"
-
-IDR_MENU_IMAGES         BITMAP                  "res\\menuimages.bmp"
-
-IDB_MENU_IMAGES_24      BITMAP                  "res\\menuimages_hc.bmp"
-
-IDR_PROPERTIES          BITMAP                  "res\\properties.bmp"
-
-IDB_PROPERTIES_HC       BITMAP                  "res\\properties_hc.bmp"
-
-IDB_NAVIGATION_LARGE    BITMAP                  "res\\nav_large.bmp"
-
-IDB_NAVIGATION_LARGE_HC BITMAP                  "res\\nav_large_hc.bmp"
-
-IDB_PAGES               BITMAP                  "res\\pages.bmp"
-
-IDB_PAGES_HC            BITMAP                  "res\\pages_hc.bmp"
-
-IDB_PAGES_SMALL         BITMAP                  "res\\pages_small.bmp"
-
-IDB_PAGES_SMALL_HC      BITMAP                  "res\\pages_small_hc.bmp"
-
-IDB_INFO                BITMAP                  "res\\info.bmp"
-
-IDB_CHECKED             BITMAP                  "res\\checked.bmp"
-
-IDB_UNCHECKED           BITMAP                  "res\\unchecked.bmp"
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Toolbar
-//
-
-IDR_MAINFRAME TOOLBAR 16, 15
-BEGIN
-    BUTTON      ID_FILE_NEW
-    BUTTON      ID_FILE_OPEN
-    BUTTON      ID_FILE_SAVE
-    SEPARATOR
-    BUTTON      ID_EDIT_CUT
-    BUTTON      ID_EDIT_COPY
-    BUTTON      ID_EDIT_PASTE
-    SEPARATOR
-    BUTTON      ID_FILE_PRINT
-    BUTTON      ID_APP_ABOUT
-END
-
-IDR_MAINFRAME_256 TOOLBAR 16, 15
-BEGIN
-    BUTTON      ID_FILE_NEW
-    BUTTON      ID_FILE_OPEN
-    BUTTON      ID_FILE_SAVE
-    SEPARATOR
-    BUTTON      ID_EDIT_CUT
-    BUTTON      ID_EDIT_COPY
-    BUTTON      ID_EDIT_PASTE
-    SEPARATOR
-    BUTTON      ID_FILE_PRINT
-    BUTTON      ID_APP_ABOUT
-END
-
-IDR_SORT TOOLBAR 16, 15
-BEGIN
-    BUTTON      ID_SORT_MENU
-    BUTTON      ID_NEW_FOLDER
-END
-
-IDR_EXPLORER TOOLBAR 16, 15
-BEGIN
-    BUTTON      ID_PROPERTIES
-END
-
-IDR_MENU_IMAGES TOOLBAR 16, 15
-BEGIN
-    BUTTON      ID_WINDOW_MANAGER
-    SEPARATOR
-    BUTTON      ID_WINDOW_CASCADE
-    BUTTON      ID_WINDOW_TILE_HORZ
-    BUTTON      ID_TOOLS_MACRO
-    BUTTON      ID_SORTING_SORTALPHABETIC
-    BUTTON      ID_SORTING_SORTBYTYPE
-    BUTTON      ID_SORTING_SORTBYACCESS
-    BUTTON      ID_SORTING_GROUPBYTYPE
-END
-
-IDR_PROPERTIES TOOLBAR 16, 15
-BEGIN
-    BUTTON      ID_EXPAND_ALL
-    BUTTON      ID_SORTPROPERTIES
-    BUTTON      ID_PROPERTIES1
-    BUTTON      ID_PROPERTIES2
-END
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Menu
-//
-
-IDR_MAINFRAME MENU
-BEGIN
-    POPUP "文件(&F)"
-    BEGIN
-        MENUITEM "新建(&N)\tCtrl+N",              ID_FILE_NEW
-        MENUITEM "打开(&O)...\tCtrl+O",           ID_FILE_OPEN
-        MENUITEM "关闭(&C)",                      ID_FILE_CLOSE
-        MENUITEM SEPARATOR
-        MENUITEM "打印设置(&R)...",                 ID_FILE_PRINT_SETUP
-        MENUITEM SEPARATOR
-        MENUITEM "最近的文件",                       ID_FILE_MRU_FILE1, GRAYED
-        MENUITEM SEPARATOR
-        MENUITEM "退出(&X)",                      ID_APP_EXIT
-    END
-    POPUP "视图(&V)"
-    BEGIN
-        MENUITEM "状态栏(&S)",                     ID_VIEW_STATUS_BAR
-        MENUITEM "标题栏(&C)",                     ID_VIEW_CAPTION_BAR
-        POPUP "应用程序外观(&A)"
-        BEGIN
-            MENUITEM "Windows 2000(&2)",            ID_VIEW_APPLOOK_WIN_2000
-            MENUITEM "Office XP(&X)",               ID_VIEW_APPLOOK_OFF_XP
-            MENUITEM "Windows XP(&W)",              ID_VIEW_APPLOOK_WIN_XP
-            MENUITEM "Office 2003(&3)",             ID_VIEW_APPLOOK_OFF_2003
-            MENUITEM "Visual Studio 200&5",         ID_VIEW_APPLOOK_VS_2005
-            MENUITEM "Visual Studio 200&8",         ID_VIEW_APPLOOK_VS_2008
-            POPUP "Office 2007(&7)"
-            BEGIN
-                MENUITEM "蓝色样式(&B)",                    ID_VIEW_APPLOOK_OFF_2007_BLUE
-                MENUITEM "黑色样式(&L)",                    ID_VIEW_APPLOOK_OFF_2007_BLACK
-                MENUITEM "银色样式(&S)",                    ID_VIEW_APPLOOK_OFF_2007_SILVER
-                MENUITEM "水绿色样式(&A)",                   ID_VIEW_APPLOOK_OFF_2007_AQUA
-            END
-        END
-    END
-    POPUP "帮助(&H)"
-    BEGIN
-        MENUITEM "关于 SATHelper(&A)...",         ID_APP_ABOUT
-    END
-    POPUP "TrayMenu"
-    BEGIN
-        MENUITEM "登录",                          ID_TRAYMENU_LOGIN
-        MENUITEM "重连",                          ID_TRAYMENU_RECONNECT
-        MENUITEM "退出",                          ID_TRAYMENU_EXIT
-    END
-END
-
-IDR_SATHelperTYPE MENU
-BEGIN
-    POPUP "文件(&F)"
-    BEGIN
-        MENUITEM "新建(&N)\tCtrl+N",              ID_FILE_NEW
-        MENUITEM "打开(&O)...\tCtrl+O",           ID_FILE_OPEN
-        MENUITEM "关闭(&C)",                      ID_FILE_CLOSE
-        MENUITEM "保存(&S)\tCtrl+S",              ID_FILE_SAVE
-        MENUITEM "另存为(&A)...",                  ID_FILE_SAVE_AS
-        MENUITEM SEPARATOR
-        MENUITEM "打印(&P)...\tCtrl+P",           ID_FILE_PRINT
-        MENUITEM "打印预览(&V)",                    ID_FILE_PRINT_PREVIEW
-        MENUITEM "打印设置(&R)...",                 ID_FILE_PRINT_SETUP
-        MENUITEM SEPARATOR
-        MENUITEM "最近的文件",                       ID_FILE_MRU_FILE1, GRAYED
-        MENUITEM SEPARATOR
-        MENUITEM "退出(&X)",                      ID_APP_EXIT
-    END
-    POPUP "编辑(&E)"
-    BEGIN
-        MENUITEM "撤消(&U)\tCtrl+Z",              ID_EDIT_UNDO
-        MENUITEM SEPARATOR
-        MENUITEM "剪切(&T)\tCtrl+X",              ID_EDIT_CUT
-        MENUITEM "复制(&C)\tCtrl+C",              ID_EDIT_COPY
-        MENUITEM "粘贴(&P)\tCtrl+V",              ID_EDIT_PASTE
-    END
-    POPUP "视图(&V)"
-    BEGIN
-        MENUITEM "状态栏(&S)",                     ID_VIEW_STATUS_BAR
-        MENUITEM "标题栏(&C)",                     ID_VIEW_CAPTION_BAR
-        POPUP "应用程序外观(&A)"
-        BEGIN
-            MENUITEM "Windows 2000(&2)",            ID_VIEW_APPLOOK_WIN_2000
-            MENUITEM "Office XP(&X)",               ID_VIEW_APPLOOK_OFF_XP
-            MENUITEM "Windows XP(&W)",              ID_VIEW_APPLOOK_WIN_XP
-            MENUITEM "Office 2003(&3)",             ID_VIEW_APPLOOK_OFF_2003
-            MENUITEM "Visual Studio 200&5",         ID_VIEW_APPLOOK_VS_2005
-            MENUITEM "Visual Studio 200&8",         ID_VIEW_APPLOOK_VS_2008
-            POPUP "Office 2007(&7)"
-            BEGIN
-                MENUITEM "蓝色样式(&B)",                    ID_VIEW_APPLOOK_OFF_2007_BLUE
-                MENUITEM "黑色样式(&L)",                    ID_VIEW_APPLOOK_OFF_2007_BLACK
-                MENUITEM "银色样式(&S)",                    ID_VIEW_APPLOOK_OFF_2007_SILVER
-                MENUITEM "水绿色样式(&A)",                   ID_VIEW_APPLOOK_OFF_2007_AQUA
-            END
-        END
-    END
-    POPUP "窗口(&W)"
-    BEGIN
-        MENUITEM "新建窗口(&N)",                    ID_WINDOW_NEW
-    END
-    POPUP "帮助(&H)"
-    BEGIN
-        MENUITEM "关于 SATHelper(&A)...",         ID_APP_ABOUT
-    END
-END
-
-IDR_POPUP_EDIT MENU
-BEGIN
-    POPUP "编辑"
-    BEGIN
-        MENUITEM "剪切(&T)\tCtrl+X",              ID_EDIT_CUT
-        MENUITEM "复制(&C)\tCtrl+C",              ID_EDIT_COPY
-        MENUITEM "粘贴(&P)\tCtrl+V",              ID_EDIT_PASTE
-    END
-END
-
-IDR_WINDOWS_MENU MENU
-BEGIN
-    MENUITEM "新建窗口(&N)",                    ID_WINDOW_NEW
-END
-
-IDR_POPUP_SORT MENU
-BEGIN
-    POPUP "排序"
-    BEGIN
-        MENUITEM "按字母顺序排序(&S)",                 ID_SORTING_SORTALPHABETIC
-        MENUITEM "按类型排序(&T)",                   ID_SORTING_SORTBYTYPE
-        MENUITEM "按访问排序(&E)",                   ID_SORTING_SORTBYACCESS
-        MENUITEM "按类型分组(&Y)",                   ID_SORTING_GROUPBYTYPE
-    END
-END
-
-IDR_POPUP_EXPLORER MENU
-BEGIN
-    POPUP "资源管理器"
-    BEGIN
-        MENUITEM "打开(&O)",                      ID_OPEN
-        MENUITEM "打开方式(&W)....",                ID_OPEN_WITH
-        MENUITEM SEPARATOR
-        MENUITEM "编译(&C)",                      ID_DUMMY_COMPILE
-        MENUITEM SEPARATOR
-        MENUITEM "剪切(&T)\tCtrl+X",              ID_EDIT_CUT
-        MENUITEM "复制(&C)\tCtrl+C",              ID_EDIT_COPY
-        MENUITEM "移除(&R)",                      ID_EDIT_CLEAR
-        MENUITEM SEPARATOR
-        MENUITEM "属性(&P)...",                   ID_PROPERTIES
-    END
-END
-
-IDR_OUTPUT_POPUP MENU
-BEGIN
-    POPUP "弹出项"
-    BEGIN
-        MENUITEM "复制(&C)",                      ID_EDIT_COPY
-        MENUITEM "清除(&C)",                      ID_EDIT_CLEAR
-        MENUITEM SEPARATOR
-        MENUITEM "隐藏(&H)",                      ID_VIEW_OUTPUTWND
-    END
-END
-
-IDR_HELP_MENU MENU
-BEGIN
-    MENUITEM "关于 SATHelper(&A)...",         ID_APP_ABOUT
-END
-
-IDR_THEME_MENU MENU
-BEGIN
-    MENUITEM "Office 2007 (蓝色样式)(&B)",      ID_VIEW_APPLOOK_OFF_2007_BLUE
-    MENUITEM "Office 2007 (黑色样式)(&L)",      ID_VIEW_APPLOOK_OFF_2007_BLACK
-    MENUITEM "Office 2007 (银色样式)(&S)",      ID_VIEW_APPLOOK_OFF_2007_SILVER
-    MENUITEM "Office 2007 (水绿色样式)(&A)",     ID_VIEW_APPLOOK_OFF_2007_AQUA
-    MENUITEM "Windows 7(&D)",               ID_VIEW_APPLOOK_WINDOWS_7
-END
-
-IDR_POPUP_DEVICES MENU
-BEGIN
-    POPUP "Devices"
-    BEGIN
-        MENUITEM "删除该设备",                       ID_DEVICES_DEL
-    END
-END
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Accelerator
-//
-
-IDR_MAINFRAME ACCELERATORS
-BEGIN
-    "N",            ID_FILE_NEW,            VIRTKEY, CONTROL
-    "O",            ID_FILE_OPEN,           VIRTKEY, CONTROL
-    "S",            ID_FILE_SAVE,           VIRTKEY, CONTROL
-    "P",            ID_FILE_PRINT,          VIRTKEY, CONTROL
-    "Z",            ID_EDIT_UNDO,           VIRTKEY, CONTROL
-    "X",            ID_EDIT_CUT,            VIRTKEY, CONTROL
-    "C",            ID_EDIT_COPY,           VIRTKEY, CONTROL
-    "V",            ID_EDIT_PASTE,          VIRTKEY, CONTROL
-    VK_BACK,        ID_EDIT_UNDO,           VIRTKEY, ALT
-    VK_DELETE,      ID_EDIT_CUT,            VIRTKEY, SHIFT
-    VK_INSERT,      ID_EDIT_COPY,           VIRTKEY, CONTROL
-    VK_INSERT,      ID_EDIT_PASTE,          VIRTKEY, SHIFT
-    VK_F6,          ID_NEXT_PANE,           VIRTKEY 
-    VK_F6,          ID_PREV_PANE,           VIRTKEY, SHIFT
-END
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Dialog
-//
-
-IDD_ABOUTBOX DIALOGEX 0, 0, 180, 63
-STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
-CAPTION "关于 SATHelper"
-FONT 9, "MS Shell Dlg", 0, 0, 0x1
-BEGIN
-    ICON            IDR_MAINFRAME,IDC_STATIC,14,14,18,18
-    LTEXT           "SATHelper,版本: 4.39.003",IDC_STATIC_VERSION,42,14,125,8,SS_NOPREFIX
-    LTEXT           "<自动化测试小组>版权所有 (C) 2019",IDC_STATIC,42,27,114,8
-    DEFPUSHBUTTON   "确定",IDOK,121,42,50,14,WS_GROUP
-END
-
-DLG_DEVICEMANAGER DIALOGEX 0, 0, 313, 177
-STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
-FONT 8, "MS Shell Dlg", 400, 0, 0x1
-BEGIN
-    GROUPBOX        "设备列表",IDC_STATIC,7,7,299,65
-    LTEXT           "信号仪1:",IDC_STATIC,17,26,37,8
-    COMBOBOX        IDC_COMBO1,58,24,60,58,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_TABSTOP
-    LTEXT           "信号仪2:",IDC_STATIC,18,41,37,8
-    COMBOBOX        IDC_COMBO2,58,40,60,58,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_TABSTOP
-    CONTROL         "启动",IDC_CHECK1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,126,26,32,10
-    CONTROL         "启动",IDC_CHECK2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,126,41,32,10
-    PUSHBUTTON      "调试",IDC_BUTTON1,159,23,50,14
-    PUSHBUTTON      "调试",IDC_BUTTON2,159,39,50,14
-    EDITTEXT        IDC_EDIT1,7,89,299,81,ES_MULTILINE | ES_AUTOHSCROLL | WS_VSCROLL
-    LTEXT           "调试输出:",IDC_STATIC,7,79,41,8
-END
-
-DLG_UB530VIEW DIALOGEX 0, 0, 224, 103
-STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_BORDER
-FONT 8, "MS Shell Dlg", 400, 0, 0x1
-BEGIN
-END
-
-IDD_DLG_LOGIN DIALOGEX 0, 0, 225, 114
-STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
-CAPTION "登录"
-FONT 8, "MS Shell Dlg", 400, 0, 0x1
-BEGIN
-    EDITTEXT        IDC_EDIT_USERNAME,89,23,74,14,ES_AUTOHSCROLL
-    EDITTEXT        IDC_EDIT_PASSWORD,89,48,74,14,ES_PASSWORD | ES_AUTOHSCROLL
-    DEFPUSHBUTTON   "确定",IDOK,52,78,50,14
-    PUSHBUTTON      "取消",IDCANCEL,124,78,50,14
-    LTEXT           "用户",IDC_STATIC,62,26,17,8
-    LTEXT           "密码",IDC_STATIC,62,50,17,8
-END
-
-IDD_DLG_PROBAR DIALOGEX 0, 0, 135, 85
-STYLE DS_SETFONT | DS_FIXEDSYS | WS_POPUP | WS_SYSMENU
-FONT 8, "MS Shell Dlg", 400, 0, 0x1
-BEGIN
-END
-
-IDD_DLG_SERVICE DIALOGEX 0, 0, 176, 302
-STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
-EXSTYLE WS_EX_TRANSPARENT
-FONT 8, "MS Shell Dlg", 400, 0, 0x1
-BEGIN
-    LTEXT           "名称:",LABLE_NAME,2,3,25,8
-    EDITTEXT        IDC_EDIT_RUNNER_NAME,33,2,91,14,ES_AUTOHSCROLL
-    CONTROL         "修改",BTN_MODIFY_RUNNER_NAME,"MfcButton",WS_TABSTOP,125,2,44,14
-    CONTROL         "",IDC_IP_ANDROID,"SysIPAddress32",WS_TABSTOP,33,19,91,15
-    CONTROL         "添加",BTN_ADD_ANDROID,"MfcButton",WS_TABSTOP,125,20,44,14
-    LTEXT           "TV IP:",LABLE_IP,2,21,25,8
-    CONTROL         "",IDC_LIST_DEVICES,"SysListView32",LVS_REPORT | LVS_ALIGNLEFT | WS_BORDER | WS_TABSTOP,3,37,163,56
-    CONTROL         "",IDC_LIST_TASK,"SysListView32",LVS_REPORT | LVS_ALIGNLEFT | WS_BORDER | WS_TABSTOP,5,140,159,158
-    LTEXT           "任务ID:",LABLE_TASK,2,123,27,8
-    EDITTEXT        TX_TASKID,37,120,96,14,ES_AUTOHSCROLL | ES_READONLY
-    LTEXT           "执行中",LABLE_TASK_STATUS,138,123,25,8
-    PUSHBUTTON      "mi Init",BTN_MI_INIT,3,95,46,14
-    PUSHBUTTON      "scbc Init",BTN_SCBC_INIT,76,95,31,14
-    PUSHBUTTON      "SAT Update",BTN_SVN_UPDATE,111,95,50,14
-END
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Version
-//
-
-VS_VERSION_INFO VERSIONINFO
- FILEVERSION 4,44,3807,0
- PRODUCTVERSION 2,0,0,1
- FILEFLAGSMASK 0x3fL
-#ifdef _DEBUG
- FILEFLAGS 0x1L
-#else
- FILEFLAGS 0x0L
-#endif
- FILEOS 0x40004L
- FILETYPE 0x1L
- FILESUBTYPE 0x0L
-BEGIN
-    BLOCK "StringFileInfo"
-    BEGIN
-        BLOCK "080404b0"
-        BEGIN
-            VALUE "CompanyName", "自动化测试小组"
-            VALUE "FileDescription", "SATHelper"
-            VALUE "FileVersion", "4.44.3807.0"
-            VALUE "InternalName", "SATHelper.exe"
-            VALUE "LegalCopyright", "自动化测试小组。  保留所有权利。"
-            VALUE "OriginalFilename", "SATHelper.exe"
-            VALUE "ProductName", "自动化测试运行平台"
-            VALUE "ProductVersion", "2.0.0.1"
-        END
-    END
-    BLOCK "VarFileInfo"
-    BEGIN
-        VALUE "Translation", 0x804, 1200
-    END
-END
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// DESIGNINFO
-//
-
-#ifdef APSTUDIO_INVOKED
-GUIDELINES DESIGNINFO
-BEGIN
-    IDD_ABOUTBOX, DIALOG
-    BEGIN
-        LEFTMARGIN, 7
-        RIGHTMARGIN, 173
-        TOPMARGIN, 7
-        BOTTOMMARGIN, 56
-    END
-
-    DLG_DEVICEMANAGER, DIALOG
-    BEGIN
-        LEFTMARGIN, 7
-        RIGHTMARGIN, 306
-        TOPMARGIN, 7
-        BOTTOMMARGIN, 170
-    END
-
-    DLG_UB530VIEW, DIALOG
-    BEGIN
-        LEFTMARGIN, 7
-        RIGHTMARGIN, 217
-        TOPMARGIN, 7
-        BOTTOMMARGIN, 96
-    END
-
-    IDD_DLG_LOGIN, DIALOG
-    BEGIN
-        LEFTMARGIN, 7
-        RIGHTMARGIN, 218
-        TOPMARGIN, 7
-        BOTTOMMARGIN, 107
-    END
-
-    IDD_DLG_PROBAR, DIALOG
-    BEGIN
-        LEFTMARGIN, 7
-        RIGHTMARGIN, 128
-        TOPMARGIN, 7
-        BOTTOMMARGIN, 78
-    END
-
-    IDD_DLG_SERVICE, DIALOG
-    BEGIN
-        RIGHTMARGIN, 170
-        BOTTOMMARGIN, 298
-    END
-END
-#endif    // APSTUDIO_INVOKED
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Ribbon
-//
-
-IDR_RIBBON              RT_RIBBON_XML           "res\\ribbon.mfcribbon-ms"
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// AFX_DIALOG_LAYOUT
-//
-
-DLG_DEVICEMANAGER AFX_DIALOG_LAYOUT
-BEGIN
-    0
-END
-
-DLG_UB530VIEW AFX_DIALOG_LAYOUT
-BEGIN
-    0
-END
-
-IDD_ABOUTBOX AFX_DIALOG_LAYOUT
-BEGIN
-    0
-END
-
-IDD_DLG_LOGIN AFX_DIALOG_LAYOUT
-BEGIN
-    0
-END
-
-IDD_DLG_PROBAR AFX_DIALOG_LAYOUT
-BEGIN
-    0
-END
-
-IDD_DLG_SERVICE AFX_DIALOG_LAYOUT
-BEGIN
-    0
-END
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// GIF
-//
-
-GIF_PROBAR              GIF                     "res\\probar.gif"
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Dialog Info
-//
-
-IDD_DLG_SERVICE DLGINIT
-BEGIN
-    BTN_MODIFY_RUNNER_NAME, 0x37c, 369, 0
-0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x535f, 0x7974, 0x656c, 0x343e, 
-0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x7453, 0x6c79, 0x3e65, 
-0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x415f, 0x7475, 0x736f, 0x7a69, 
-0x3e65, 0x4146, 0x534c, 0x3c45, 0x4d2f, 0x4346, 0x7542, 0x7474, 0x6e6f, 
-0x415f, 0x7475, 0x736f, 0x7a69, 0x3e65, 0x4d3c, 0x4346, 0x7542, 0x7474, 
-0x6e6f, 0x545f, 0x6f6f, 0x746c, 0x7069, 0x3c3e, 0x4d2f, 0x4346, 0x7542, 
-0x7474, 0x6e6f, 0x545f, 0x6f6f, 0x746c, 0x7069, 0x3c3e, 0x464d, 0x4243, 
-0x7475, 0x6f74, 0x5f6e, 0x7546, 0x6c6c, 0x6554, 0x7478, 0x6f54, 0x6c6f, 
-0x543e, 0x5552, 0x3c45, 0x4d2f, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x465f, 
-0x6c75, 0x546c, 0x7865, 0x5474, 0x6f6f, 0x3e6c, 0x4d3c, 0x4346, 0x7542, 
-0x7474, 0x6e6f, 0x435f, 0x7275, 0x6f73, 0x5472, 0x7079, 0x3e65, 0x3131, 
-0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x7543, 0x7372, 0x726f, 
-0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 
-0x6761, 0x5465, 0x7079, 0x3e65, 0x3c38, 0x4d2f, 0x4346, 0x7542, 0x7474, 
-0x6e6f, 0x495f, 0x616d, 0x6567, 0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, 
-0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x4f65, 0x546e, 0x706f, 0x463e, 
-0x4c41, 0x4553, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 
-0x6761, 0x4f65, 0x546e, 0x706f, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, 
-0x5f6e, 0x6d49, 0x6761, 0x4f65, 0x526e, 0x6769, 0x7468, 0x463e, 0x4c41, 
-0x4553, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 
-0x4f65, 0x526e, 0x6769, 0x7468, "\076" 
-    BTN_ADD_ANDROID, 0x37c, 369, 0
-0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x535f, 0x7974, 0x656c, 0x343e, 
-0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x7453, 0x6c79, 0x3e65, 
-0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x415f, 0x7475, 0x736f, 0x7a69, 
-0x3e65, 0x4146, 0x534c, 0x3c45, 0x4d2f, 0x4346, 0x7542, 0x7474, 0x6e6f, 
-0x415f, 0x7475, 0x736f, 0x7a69, 0x3e65, 0x4d3c, 0x4346, 0x7542, 0x7474, 
-0x6e6f, 0x545f, 0x6f6f, 0x746c, 0x7069, 0x3c3e, 0x4d2f, 0x4346, 0x7542, 
-0x7474, 0x6e6f, 0x545f, 0x6f6f, 0x746c, 0x7069, 0x3c3e, 0x464d, 0x4243, 
-0x7475, 0x6f74, 0x5f6e, 0x7546, 0x6c6c, 0x6554, 0x7478, 0x6f54, 0x6c6f, 
-0x543e, 0x5552, 0x3c45, 0x4d2f, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x465f, 
-0x6c75, 0x546c, 0x7865, 0x5474, 0x6f6f, 0x3e6c, 0x4d3c, 0x4346, 0x7542, 
-0x7474, 0x6e6f, 0x435f, 0x7275, 0x6f73, 0x5472, 0x7079, 0x3e65, 0x3131, 
-0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x7543, 0x7372, 0x726f, 
-0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 
-0x6761, 0x5465, 0x7079, 0x3e65, 0x3c38, 0x4d2f, 0x4346, 0x7542, 0x7474, 
-0x6e6f, 0x495f, 0x616d, 0x6567, 0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, 
-0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x4f65, 0x546e, 0x706f, 0x463e, 
-0x4c41, 0x4553, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 
-0x6761, 0x4f65, 0x546e, 0x706f, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, 
-0x5f6e, 0x6d49, 0x6761, 0x4f65, 0x526e, 0x6769, 0x7468, 0x463e, 0x4c41, 
-0x4553, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 
-0x4f65, 0x526e, 0x6769, 0x7468, "\076" 
-    0
-END
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// String Table
-//
-
-STRINGTABLE
-BEGIN
-    IDP_OLE_INIT_FAILED     "OLE 初始化失败。  请确保 OLE 库是正确的版本。"
-END
-
-STRINGTABLE
-BEGIN
-    IDR_MAINFRAME           "SATHelper"
-    IDR_SATHelperTYPE       "\nSATHelper\nSATHelper\n\n\nSATHelper.Document\nSATHelper.Document"
-    ID_WINDOW_MANAGER       "窗口(&W)..."
-END
-
-STRINGTABLE
-BEGIN
-    AFX_IDS_APP_TITLE       "SATHelper"
-    AFX_IDS_IDLEMESSAGE     "就绪"
-END
-
-STRINGTABLE
-BEGIN
-    ID_INDICATOR_EXT        "EXT"
-    ID_INDICATOR_CAPS       "CAP"
-    ID_INDICATOR_NUM        "NUM"
-    ID_INDICATOR_SCRL       "SCRL"
-    ID_INDICATOR_OVR        "OVR"
-    ID_INDICATOR_REC        "REC"
-END
-
-STRINGTABLE
-BEGIN
-    ID_FILE_NEW             "创建新文档\n新建"
-    ID_FILE_OPEN            "打开现有文档\n打开"
-    ID_FILE_CLOSE           "关闭活动文档\n关闭"
-    ID_FILE_SAVE            "保存活动文档\n保存"
-    ID_FILE_SAVE_AS         "用新名称保存活动文档\n另存为"
-    ID_FILE_PAGE_SETUP      "更改打印选项\n页面设置"
-    ID_FILE_PRINT_SETUP     "更改打印机选项和打印选项\n打印设置"
-    ID_FILE_PRINT           "打印活动文档\n打印"
-    ID_FILE_PRINT_DIRECT    "使用当前选项打印活动文档\n快速打印"
-    ID_FILE_PRINT_PREVIEW   "显示整页\n打印预览"
-END
-
-STRINGTABLE
-BEGIN
-    ID_APP_ABOUT            "显示程序信息、版本号和版权信息\n关于"
-    ID_APP_EXIT             "退出应用程序;提示保存文档\n退出"
-END
-
-STRINGTABLE
-BEGIN
-    ID_FILE_MRU_FILE1       "打开此文档"
-    ID_FILE_MRU_FILE2       "打开此文档"
-    ID_FILE_MRU_FILE3       "打开此文档"
-    ID_FILE_MRU_FILE4       "打开此文档"
-    ID_FILE_MRU_FILE5       "打开此文档"
-    ID_FILE_MRU_FILE6       "打开此文档"
-    ID_FILE_MRU_FILE7       "打开此文档"
-    ID_FILE_MRU_FILE8       "打开此文档"
-    ID_FILE_MRU_FILE9       "打开此文档"
-    ID_FILE_MRU_FILE10      "打开此文档"
-    ID_FILE_MRU_FILE11      "打开此文档"
-    ID_FILE_MRU_FILE12      "打开此文档"
-    ID_FILE_MRU_FILE13      "打开此文档"
-    ID_FILE_MRU_FILE14      "打开此文档"
-    ID_FILE_MRU_FILE15      "打开此文档"
-    ID_FILE_MRU_FILE16      "打开此文档"
-END
-
-STRINGTABLE
-BEGIN
-    ID_NEXT_PANE            "切换到下一个窗格\n下一窗格"
-    ID_PREV_PANE            "切换回上一个窗格\n上一窗格"
-END
-
-STRINGTABLE
-BEGIN
-    ID_WINDOW_NEW           "为活动文档打开另一个窗口\n新建窗口"
-    ID_WINDOW_ARRANGE       "在窗口底部排列图标\n排列图标"
-    ID_WINDOW_CASCADE       "以重叠方式排列窗口\n层叠窗口"
-    ID_WINDOW_TILE_HORZ     "以不重叠的平铺方式排列窗口\n平铺窗口"
-    ID_WINDOW_TILE_VERT     "以不重叠的平铺方式排列窗口\n平铺窗口"
-    ID_WINDOW_SPLIT         "将活动窗口拆分为多个窗格\n拆分"
-END
-
-STRINGTABLE
-BEGIN
-    ID_EDIT_CLEAR           "清除所选内容\n清除"
-    ID_EDIT_CLEAR_ALL       "清除全部内容\n全部清除"
-    ID_EDIT_COPY            "复制所选内容,将其放入剪贴板\n复制"
-    ID_EDIT_CUT             "剪切所选内容,将其放入剪贴板\n剪切"
-    ID_EDIT_FIND            "查找指定的文本\n查找"
-    ID_EDIT_PASTE           "插入剪贴板内容\n粘贴"
-    ID_EDIT_REPEAT          "重复上一操作\n重复"
-    ID_EDIT_REPLACE         "用其他文本替换特定的文本\n替换"
-    ID_EDIT_SELECT_ALL      "选定整个文档\n全选"
-    ID_EDIT_UNDO            "撤消上一操作\n撤消"
-    ID_EDIT_REDO            "重做上次撤消的操作\n重做"
-END
-
-STRINGTABLE
-BEGIN
-    ID_VIEW_TOOLBAR         "显示或隐藏工具栏\n切换工具栏"
-    ID_VIEW_STATUS_BAR      "显示或隐藏状态栏\n切换状态栏"
-END
-
-STRINGTABLE
-BEGIN
-    ID_VIEW_CAPTION_BAR     "显示或隐藏标题栏\n切换标题栏"
-END
-
-STRINGTABLE
-BEGIN
-    AFX_IDS_SCSIZE          "更改窗口大小"
-    AFX_IDS_SCMOVE          "更改窗口位置"
-    AFX_IDS_SCMINIMIZE      "将窗口缩小成图标"
-    AFX_IDS_SCMAXIMIZE      "将窗口放大到最大尺寸"
-    AFX_IDS_SCNEXTWINDOW    "切换到下一个文档窗口"
-    AFX_IDS_SCPREVWINDOW    "切换到上一个文档窗口"
-    AFX_IDS_SCCLOSE         "关闭活动窗口并提示保存文档"
-END
-
-STRINGTABLE
-BEGIN
-    AFX_IDS_SCRESTORE       "将窗口恢复到正常大小"
-    AFX_IDS_SCTASKLIST      "激活任务列表"
-    AFX_IDS_MDICHILD        "激活此窗口"
-END
-
-STRINGTABLE
-BEGIN
-    AFX_IDS_PREVIEW_CLOSE   "关闭打印预览模式\n取消预览"
-END
-
-STRINGTABLE
-BEGIN
-    IDS_STATUS_PANE1        "窗格 1"
-    IDS_STATUS_PANE2        "窗格 2"
-END
-
-STRINGTABLE
-BEGIN
-    IDS_FILE_VIEW           "文件视图"
-    IDS_CLASS_VIEW          "类视图"
-    IDS_OUTPUT_WND          "输出"
-    IDS_PROPERTIES_WND      "属性"
-END
-
-STRINGTABLE
-BEGIN
-    IDS_EXPLORER            "资源管理器"
-    IDS_EDIT_MENU           "编辑"
-END
-
-STRINGTABLE
-BEGIN
-    IDS_BUILD_TAB           "生成"
-    IDS_DEBUG_TAB           "调试"
-    IDS_FIND_TAB            "查找"
-END
-
-STRINGTABLE
-BEGIN
-    IDS_MYCALENDARS         "我的日历"
-    IDS_CALENDAR            "日历"
-    IDS_SHORTCUTS           "快捷方式"
-    IDS_FOLDERS             "文件夹"
-END
-
-STRINGTABLE
-BEGIN
-    IDS_OUTLOOKBAR          "Outlook 栏"
-END
-
-STRINGTABLE
-BEGIN
-    IDS_CAPTION_BUTTON      "选项..."
-    IDS_CAPTION_BUTTON_TIP  "单击此处查看其他选项"
-    IDS_CAPTION_TEXT        "这是标题栏,可在其中向用户显示消息。"
-    IDS_CAPTION_IMAGE_TIP   "重要事项"
-    IDS_CAPTION_IMAGE_TEXT  "这是向用户显示的信息性消息。"
-END
-
-STRINGTABLE
-BEGIN
-    ID_CUT_BMP              "BMP格式截图"
-    ID_CUT_JPG              "JPG格式截图"
-END
-
-STRINGTABLE
-BEGIN
-    ID_CHECK_IR_SHOT        "在遥控200毫秒后开始截图!\n"
-END
-
 #endif    // 中文(简体,中国) resources
 #endif    // 中文(简体,中国) resources
 /////////////////////////////////////////////////////////////////////////////
 /////////////////////////////////////////////////////////////////////////////
 
 
@@ -931,7 +91,7 @@ END
 
 
 #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_CHS)
 #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_CHS)
 LANGUAGE 4, 2
 LANGUAGE 4, 2
-#include "res\SATHelper.rc2"  // not Microsoft Visual C++ 
+//#include "res\SATHelper.rc2"  // not Microsoft Visual C++ 
 #include "l.CHS\afxres.rc"      // std
 #include "l.CHS\afxres.rc"      // std
 #include "l.CHS\afxprint.rc"    // print
 #include "l.CHS\afxprint.rc"    // print
 #if !defined(_AFXDLL)
 #if !defined(_AFXDLL)

+ 5 - 47
SATHelper/SATHelper/SATHelper.vcxproj

@@ -222,6 +222,7 @@
     <ClInclude Include="DlgService.h" />
     <ClInclude Include="DlgService.h" />
     <ClInclude Include="framework.h" />
     <ClInclude Include="framework.h" />
     <ClInclude Include="Global.h" />
     <ClInclude Include="Global.h" />
+    <ClInclude Include="GlobalString.h" />
     <ClInclude Include="IMGCommon.h" />
     <ClInclude Include="IMGCommon.h" />
     <ClInclude Include="IOCPModel.h" />
     <ClInclude Include="IOCPModel.h" />
     <ClInclude Include="IRControlWnd.h" />
     <ClInclude Include="IRControlWnd.h" />
@@ -277,6 +278,7 @@
     <ClCompile Include="DlgProBar.cpp" />
     <ClCompile Include="DlgProBar.cpp" />
     <ClCompile Include="DlgService.cpp" />
     <ClCompile Include="DlgService.cpp" />
     <ClCompile Include="Global.cpp" />
     <ClCompile Include="Global.cpp" />
+    <ClCompile Include="GlobalString.cpp" />
     <ClCompile Include="IMGCommon.cpp" />
     <ClCompile Include="IMGCommon.cpp" />
     <ClCompile Include="IOCPModel.cpp" />
     <ClCompile Include="IOCPModel.cpp" />
     <ClCompile Include="IRControlWnd.cpp" />
     <ClCompile Include="IRControlWnd.cpp" />
@@ -309,54 +311,7 @@
     <ClCompile Include="USBUpgradeDLL.cpp" />
     <ClCompile Include="USBUpgradeDLL.cpp" />
   </ItemGroup>
   </ItemGroup>
   <ItemGroup>
   <ItemGroup>
-    <ResourceCompile Include="SATHelper.rc" />
-  </ItemGroup>
-  <ItemGroup>
-    <Image Include="res\buttons.bmp" />
-    <Image Include="res\checked.bmp" />
-    <Image Include="res\classview.bmp" />
-    <Image Include="res\classview_hc.bmp" />
-    <Image Include="res\class_view.ico" />
-    <Image Include="res\class_view_hc.ico" />
-    <Image Include="res\explorer.bmp" />
-    <Image Include="res\explorer_hc.bmp" />
-    <Image Include="res\filelarge.bmp" />
-    <Image Include="res\filesmall.bmp" />
-    <Image Include="res\fileview.bmp" />
-    <Image Include="res\fileview_hc.bmp" />
-    <Image Include="res\file_view.ico" />
-    <Image Include="res\file_view_hc.ico" />
-    <Image Include="res\info.bmp" />
-    <Image Include="res\main.bmp" />
-    <Image Include="res\menuimages.bmp" />
-    <Image Include="res\menuimages_hc.bmp" />
-    <Image Include="res\nav_large.bmp" />
-    <Image Include="res\nav_large_hc.bmp" />
-    <Image Include="res\output_wnd.ico" />
-    <Image Include="res\output_wnd_hc.ico" />
-    <Image Include="res\pages.bmp" />
-    <Image Include="res\pages_hc.bmp" />
-    <Image Include="res\pages_small.bmp" />
-    <Image Include="res\pages_small_hc.bmp" />
-    <Image Include="res\probar.gif" />
-    <Image Include="res\properties.bmp" />
-    <Image Include="res\properties_hc.bmp" />
-    <Image Include="res\properties_wnd.ico" />
-    <Image Include="res\properties_wnd_hc.ico" />
     <Image Include="res\SATHelper.ico" />
     <Image Include="res\SATHelper.ico" />
-    <Image Include="res\SATHelperDoc.ico" />
-    <Image Include="res\sort.bmp" />
-    <Image Include="res\sort_hc.bmp" />
-    <Image Include="res\Toolbar.bmp" />
-    <Image Include="res\Toolbar256.bmp" />
-    <Image Include="res\unchecked.bmp" />
-    <Image Include="res\writelarge.bmp" />
-    <Image Include="res\writesmall.bmp" />
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="res\gif1.bin" />
-    <None Include="res\ribbon.mfcribbon-ms" />
-    <None Include="res\SATHelper.rc2" />
   </ItemGroup>
   </ItemGroup>
   <ItemGroup>
   <ItemGroup>
     <Xml Include="layout.xml" />
     <Xml Include="layout.xml" />
@@ -364,6 +319,9 @@
   <ItemGroup>
   <ItemGroup>
     <Library Include="QCAP.X86.LIB" />
     <Library Include="QCAP.X86.LIB" />
   </ItemGroup>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="SATHelper.rc" />
+  </ItemGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
   <ImportGroup Label="ExtensionTargets">
   <ImportGroup Label="ExtensionTargets">
   </ImportGroup>
   </ImportGroup>

+ 11 - 133
SATHelper/SATHelper/SATHelper.vcxproj.filters

@@ -207,6 +207,9 @@
     <ClInclude Include="UpgradeWnd.h">
     <ClInclude Include="UpgradeWnd.h">
       <Filter>DockPane</Filter>
       <Filter>DockPane</Filter>
     </ClInclude>
     </ClInclude>
+    <ClInclude Include="GlobalString.h">
+      <Filter>头文件</Filter>
+    </ClInclude>
   </ItemGroup>
   </ItemGroup>
   <ItemGroup>
   <ItemGroup>
     <ClCompile Include="SATHelper.cpp">
     <ClCompile Include="SATHelper.cpp">
@@ -338,144 +341,14 @@
     <ClCompile Include="UpgradeWnd.cpp">
     <ClCompile Include="UpgradeWnd.cpp">
       <Filter>DockPane</Filter>
       <Filter>DockPane</Filter>
     </ClCompile>
     </ClCompile>
+    <ClCompile Include="GlobalString.cpp">
+      <Filter>源文件</Filter>
+    </ClCompile>
   </ItemGroup>
   </ItemGroup>
   <ItemGroup>
   <ItemGroup>
-    <ResourceCompile Include="SATHelper.rc">
-      <Filter>资源文件</Filter>
-    </ResourceCompile>
-  </ItemGroup>
-  <ItemGroup>
-    <Image Include="res\file_view.ico">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\file_view_hc.ico">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\class_view.ico">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\class_view_hc.ico">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\fileview.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\fileview_hc.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\classview.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\classview_hc.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\explorer.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\explorer_hc.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\sort.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\sort_hc.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\menuimages.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\menuimages_hc.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\output_wnd.ico">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\output_wnd_hc.ico">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\properties_wnd.ico">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\properties_wnd_hc.ico">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\properties.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\properties_hc.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\nav_large.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\nav_large_hc.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\pages.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\pages_hc.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\pages_small.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\pages_small_hc.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\info.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\buttons.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\filelarge.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\filesmall.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\main.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\writelarge.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\writesmall.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\SATHelperDoc.ico">
-      <Filter>资源文件</Filter>
-    </Image>
     <Image Include="res\SATHelper.ico">
     <Image Include="res\SATHelper.ico">
       <Filter>资源文件</Filter>
       <Filter>资源文件</Filter>
     </Image>
     </Image>
-    <Image Include="res\Toolbar.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\Toolbar256.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\checked.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\unchecked.bmp">
-      <Filter>资源文件</Filter>
-    </Image>
-    <Image Include="res\probar.gif">
-      <Filter>资源文件</Filter>
-    </Image>
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="res\ribbon.mfcribbon-ms">
-      <Filter>资源文件</Filter>
-    </None>
-    <None Include="res\SATHelper.rc2">
-      <Filter>资源文件</Filter>
-    </None>
-    <None Include="res\gif1.bin">
-      <Filter>资源文件</Filter>
-    </None>
   </ItemGroup>
   </ItemGroup>
   <ItemGroup>
   <ItemGroup>
     <Xml Include="layout.xml" />
     <Xml Include="layout.xml" />
@@ -483,4 +356,9 @@
   <ItemGroup>
   <ItemGroup>
     <Library Include="QCAP.X86.LIB" />
     <Library Include="QCAP.X86.LIB" />
   </ItemGroup>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="SATHelper.rc">
+      <Filter>资源文件</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
 </Project>

+ 0 - 13
SATHelper/SATHelper/res/SATHelper.rc2

@@ -1,13 +0,0 @@
-//
-// SATHelper.rc2 - Microsoft Visual C++ 不会直接编辑的资源
-//
-
-#ifdef APSTUDIO_INVOKED
-#error 此文件不能用 Microsoft Visual C++ 编辑
-#endif //APSTUDIO_INVOKED
-
-
-/////////////////////////////////////////////////////////////////////////////
-// 在此处添加手动编辑的资源...
-
-/////////////////////////////////////////////////////////////////////////////

二进制
SATHelper/SATHelper/res/SATHelperDoc.ico


二进制
SATHelper/SATHelper/res/Toolbar.bmp


二进制
SATHelper/SATHelper/res/Toolbar256.bmp


二进制
SATHelper/SATHelper/res/buttons.bmp


二进制
SATHelper/SATHelper/res/checked.bmp


二进制
SATHelper/SATHelper/res/class_view.ico


二进制
SATHelper/SATHelper/res/class_view_hc.ico


二进制
SATHelper/SATHelper/res/classview.bmp


二进制
SATHelper/SATHelper/res/classview_hc.bmp


二进制
SATHelper/SATHelper/res/explorer.bmp


二进制
SATHelper/SATHelper/res/explorer_hc.bmp


二进制
SATHelper/SATHelper/res/file_view.ico


二进制
SATHelper/SATHelper/res/file_view_hc.ico


二进制
SATHelper/SATHelper/res/filelarge.bmp


二进制
SATHelper/SATHelper/res/filesmall.bmp


二进制
SATHelper/SATHelper/res/fileview.bmp


二进制
SATHelper/SATHelper/res/fileview_hc.bmp


二进制
SATHelper/SATHelper/res/info.bmp


二进制
SATHelper/SATHelper/res/main.bmp


二进制
SATHelper/SATHelper/res/menuimages.bmp


二进制
SATHelper/SATHelper/res/menuimages_hc.bmp


二进制
SATHelper/SATHelper/res/nav_large.bmp


二进制
SATHelper/SATHelper/res/nav_large_hc.bmp


二进制
SATHelper/SATHelper/res/output_wnd.ico


二进制
SATHelper/SATHelper/res/output_wnd_hc.ico


二进制
SATHelper/SATHelper/res/pages.bmp


二进制
SATHelper/SATHelper/res/pages_hc.bmp


二进制
SATHelper/SATHelper/res/pages_small.bmp


二进制
SATHelper/SATHelper/res/pages_small_hc.bmp


二进制
SATHelper/SATHelper/res/probar.gif


二进制
SATHelper/SATHelper/res/properties.bmp


二进制
SATHelper/SATHelper/res/properties_hc.bmp


二进制
SATHelper/SATHelper/res/properties_wnd.ico


二进制
SATHelper/SATHelper/res/properties_wnd_hc.ico


+ 0 - 1186
SATHelper/SATHelper/res/ribbon.mfcribbon-ms

@@ -1,1186 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<AFX_RIBBON>
-    <HEADER>
-        <VERSION>1</VERSION>
-    </HEADER>
-    <RIBBON_BAR>
-        <ELEMENT_NAME>RibbonBar</ELEMENT_NAME>
-        <ENABLE_TOOLTIPS>TRUE</ENABLE_TOOLTIPS>
-        <ENABLE_TOOLTIPS_DESCRIPTION>TRUE</ENABLE_TOOLTIPS_DESCRIPTION>
-        <ENABLE_KEYS>TRUE</ENABLE_KEYS>
-        <ENABLE_PRINTPREVIEW>TRUE</ENABLE_PRINTPREVIEW>
-        <ENABLE_DRAWUSINGFONT>TRUE</ENABLE_DRAWUSINGFONT>
-        <IMAGE>
-            <ID>
-                <NAME>IDB_BUTTONS</NAME>
-                <VALUE>113</VALUE>
-            </ID>
-        </IMAGE>
-        <BUTTON_MAIN>
-            <ELEMENT_NAME>Button_Main</ELEMENT_NAME>
-            <KEYS>F</KEYS>
-            <PALETTE_TOP>FALSE</PALETTE_TOP>
-            <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-            <INDEX_SMALL>-1</INDEX_SMALL>
-            <INDEX_LARGE>-1</INDEX_LARGE>
-            <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-            <IMAGE>
-                <ID>
-                    <NAME>IDB_MAIN</NAME>
-                    <VALUE>112</VALUE>
-                </ID>
-            </IMAGE>
-        </BUTTON_MAIN>
-        <CATEGORY_MAIN>
-            <ELEMENT_NAME>Category_Main</ELEMENT_NAME>
-            <NAME>文件</NAME>
-            <IMAGE_SMALL>
-                <ID>
-                    <NAME>IDB_FILESMALL</NAME>
-                    <VALUE>115</VALUE>
-                </ID>
-            </IMAGE_SMALL>
-            <IMAGE_LARGE>
-                <ID>
-                    <NAME>IDB_FILELARGE</NAME>
-                    <VALUE>114</VALUE>
-                </ID>
-            </IMAGE_LARGE>
-            <ELEMENTS>
-                <ELEMENT>
-                    <ELEMENT_NAME>Button</ELEMENT_NAME>
-                    <ID>
-                        <NAME>ID_TRAYMENU_LOGIN</NAME>
-                        <VALUE>32825</VALUE>
-                    </ID>
-                    <TEXT>登录(&amp;C)</TEXT>
-                    <PALETTE_TOP>FALSE</PALETTE_TOP>
-                    <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                    <INDEX_SMALL>8</INDEX_SMALL>
-                    <INDEX_LARGE>8</INDEX_LARGE>
-                    <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                    <ALWAYS_DESCRIPTION>FALSE</ALWAYS_DESCRIPTION>
-                </ELEMENT>
-                <ELEMENT>
-                    <ELEMENT_NAME>Button</ELEMENT_NAME>
-                    <ID>
-                        <NAME>ID_TRAYMENU_RECONNECT</NAME>
-                        <VALUE>32771</VALUE>
-                    </ID>
-                    <TEXT>重连(&amp;C)</TEXT>
-                    <PALETTE_TOP>FALSE</PALETTE_TOP>
-                    <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                    <INDEX_SMALL>8</INDEX_SMALL>
-                    <INDEX_LARGE>8</INDEX_LARGE>
-                    <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                    <ALWAYS_DESCRIPTION>FALSE</ALWAYS_DESCRIPTION>
-                </ELEMENT>
-                <ELEMENT>
-                    <ELEMENT_NAME>Separator</ELEMENT_NAME>
-                    <HORIZ>TRUE</HORIZ>
-                </ELEMENT>
-                <ELEMENT>
-                    <ELEMENT_NAME>Button_Main_Panel</ELEMENT_NAME>
-                    <ID>
-                        <NAME>ID_APP_EXIT</NAME>
-                        <VALUE>57665</VALUE>
-                    </ID>
-                    <TEXT>退出(&amp;X)</TEXT>
-                    <PALETTE_TOP>FALSE</PALETTE_TOP>
-                    <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                    <INDEX_SMALL>10</INDEX_SMALL>
-                    <INDEX_LARGE>-1</INDEX_LARGE>
-                    <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                </ELEMENT>
-            </ELEMENTS>
-            <RECENT_FILE_LIST>
-                <ENABLE>FALSE</ENABLE>
-                <WIDTH>300</WIDTH>
-            </RECENT_FILE_LIST>
-        </CATEGORY_MAIN>
-        <QAT_ELEMENTS>
-            <ELEMENT_NAME>QAT</ELEMENT_NAME>
-            <QAT_TOP>TRUE</QAT_TOP>
-            <ITEMS>
-                <ITEM>
-                    <ID>
-                        <NAME>ID_FILE_NEW</NAME>
-                        <VALUE>57600</VALUE>
-                    </ID>
-                    <VISIBLE>TRUE</VISIBLE>
-                </ITEM>
-                <ITEM>
-                    <ID>
-                        <NAME>ID_FILE_OPEN</NAME>
-                        <VALUE>57601</VALUE>
-                    </ID>
-                    <VISIBLE>TRUE</VISIBLE>
-                </ITEM>
-                <ITEM>
-                    <ID>
-                        <NAME>ID_FILE_SAVE</NAME>
-                        <VALUE>57603</VALUE>
-                    </ID>
-                    <VISIBLE>TRUE</VISIBLE>
-                </ITEM>
-                <ITEM>
-                    <ID>
-                        <NAME>ID_FILE_PRINT_DIRECT</NAME>
-                        <VALUE>57608</VALUE>
-                    </ID>
-                    <VISIBLE>TRUE</VISIBLE>
-                </ITEM>
-            </ITEMS>
-        </QAT_ELEMENTS>
-        <TAB_ELEMENTS>
-            <ELEMENT_NAME>Group</ELEMENT_NAME>
-            <ELEMENTS>
-                <ELEMENT>
-                    <ELEMENT_NAME>Button</ELEMENT_NAME>
-                    <TEXT>样式</TEXT>
-                    <KEYS>S</KEYS>
-                    <PALETTE_TOP>FALSE</PALETTE_TOP>
-                    <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                    <INDEX_SMALL>-1</INDEX_SMALL>
-                    <INDEX_LARGE>-1</INDEX_LARGE>
-                    <DEFAULT_COMMAND>FALSE</DEFAULT_COMMAND>
-                    <ALWAYS_DESCRIPTION>FALSE</ALWAYS_DESCRIPTION>
-                    <ELEMENTS>
-                        <ELEMENT>
-                            <ELEMENT_NAME>Button</ELEMENT_NAME>
-                            <ID>
-                                <NAME>ID_VIEW_APPLOOK_OFF_2007_BLUE</NAME>
-                                <VALUE>215</VALUE>
-                            </ID>
-                            <TEXT>Office 2007 (蓝色样式)(&amp;B)</TEXT>
-                            <PALETTE_TOP>FALSE</PALETTE_TOP>
-                            <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                            <INDEX_SMALL>-1</INDEX_SMALL>
-                            <INDEX_LARGE>-1</INDEX_LARGE>
-                            <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            <ALWAYS_DESCRIPTION>FALSE</ALWAYS_DESCRIPTION>
-                        </ELEMENT>
-                        <ELEMENT>
-                            <ELEMENT_NAME>Button</ELEMENT_NAME>
-                            <ID>
-                                <NAME>ID_VIEW_APPLOOK_OFF_2007_BLACK</NAME>
-                                <VALUE>216</VALUE>
-                            </ID>
-                            <TEXT>Office 2007 (黑色样式)(&amp;L)</TEXT>
-                            <PALETTE_TOP>FALSE</PALETTE_TOP>
-                            <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                            <INDEX_SMALL>-1</INDEX_SMALL>
-                            <INDEX_LARGE>-1</INDEX_LARGE>
-                            <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            <ALWAYS_DESCRIPTION>FALSE</ALWAYS_DESCRIPTION>
-                        </ELEMENT>
-                        <ELEMENT>
-                            <ELEMENT_NAME>Button</ELEMENT_NAME>
-                            <ID>
-                                <NAME>ID_VIEW_APPLOOK_OFF_2007_SILVER</NAME>
-                                <VALUE>217</VALUE>
-                            </ID>
-                            <TEXT>Office 2007 (银色样式)(&amp;S)</TEXT>
-                            <PALETTE_TOP>FALSE</PALETTE_TOP>
-                            <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                            <INDEX_SMALL>-1</INDEX_SMALL>
-                            <INDEX_LARGE>-1</INDEX_LARGE>
-                            <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            <ALWAYS_DESCRIPTION>FALSE</ALWAYS_DESCRIPTION>
-                        </ELEMENT>
-                        <ELEMENT>
-                            <ELEMENT_NAME>Button</ELEMENT_NAME>
-                            <ID>
-                                <NAME>ID_VIEW_APPLOOK_OFF_2007_AQUA</NAME>
-                                <VALUE>218</VALUE>
-                            </ID>
-                            <TEXT>Office 2007 (水绿色样式)(&amp;A)</TEXT>
-                            <PALETTE_TOP>FALSE</PALETTE_TOP>
-                            <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                            <INDEX_SMALL>-1</INDEX_SMALL>
-                            <INDEX_LARGE>-1</INDEX_LARGE>
-                            <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            <ALWAYS_DESCRIPTION>FALSE</ALWAYS_DESCRIPTION>
-                        </ELEMENT>
-                        <ELEMENT>
-                            <ELEMENT_NAME>Button</ELEMENT_NAME>
-                            <ID>
-                                <NAME>ID_VIEW_APPLOOK_WINDOWS_7</NAME>
-                                <VALUE>219</VALUE>
-                            </ID>
-                            <TEXT>Windows 7(&amp;D)</TEXT>
-                            <PALETTE_TOP>FALSE</PALETTE_TOP>
-                            <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                            <INDEX_SMALL>-1</INDEX_SMALL>
-                            <INDEX_LARGE>-1</INDEX_LARGE>
-                            <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            <ALWAYS_DESCRIPTION>FALSE</ALWAYS_DESCRIPTION>
-                        </ELEMENT>
-                    </ELEMENTS>
-                </ELEMENT>
-                <ELEMENT>
-                    <ELEMENT_NAME>Button</ELEMENT_NAME>
-                    <ID>
-                        <NAME>ID_APP_ABOUT</NAME>
-                        <VALUE>57664</VALUE>
-                    </ID>
-                    <KEYS>A</KEYS>
-                    <PALETTE_TOP>FALSE</PALETTE_TOP>
-                    <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                    <INDEX_SMALL>0</INDEX_SMALL>
-                    <INDEX_LARGE>-1</INDEX_LARGE>
-                    <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                    <ALWAYS_DESCRIPTION>FALSE</ALWAYS_DESCRIPTION>
-                </ELEMENT>
-            </ELEMENTS>
-        </TAB_ELEMENTS>
-        <CATEGORIES>
-            <CATEGORY>
-                <ELEMENT_NAME>Category</ELEMENT_NAME>
-                <NAME>电视画面</NAME>
-                <IMAGE_SMALL>
-                    <ID>
-                        <NAME>IDB_WRITESMALL</NAME>
-                        <VALUE>110</VALUE>
-                    </ID>
-                </IMAGE_SMALL>
-                <IMAGE_LARGE>
-                    <ID>
-                        <NAME>IDB_WRITELARGE</NAME>
-                        <VALUE>111</VALUE>
-                    </ID>
-                </IMAGE_LARGE>
-                <PANELS>
-                    <PANEL>
-                        <ELEMENT_NAME>Panel</ELEMENT_NAME>
-                        <NAME>截图与录屏</NAME>
-                        <KEYS>F</KEYS>
-                        <INDEX>1</INDEX>
-                        <JUSTIFY_COLUMNS>FALSE</JUSTIFY_COLUMNS>
-                        <CENTER_COLUMN_VERT>FALSE</CENTER_COLUMN_VERT>
-                        <ELEMENTS>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CUT_BMP</NAME>
-                                    <VALUE>32784</VALUE>
-                                </ID>
-                                <TEXT>截图BMP</TEXT>
-                                <KEYS>F</KEYS>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>5</INDEX_SMALL>
-                                <INDEX_LARGE>0</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                <ALWAYS_DESCRIPTION>FALSE</ALWAYS_DESCRIPTION>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CUT_JPG</NAME>
-                                    <VALUE>32785</VALUE>
-                                </ID>
-                                <TEXT>截图JPG</TEXT>
-                                <KEYS>F</KEYS>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>5</INDEX_SMALL>
-                                <INDEX_LARGE>1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                <ALWAYS_DESCRIPTION>FALSE</ALWAYS_DESCRIPTION>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CHECK_SHOT_LOCAL</NAME>
-                                    <VALUE>32819</VALUE>
-                                </ID>
-                                <TEXT>程序路径</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CHECK_SHOT_SYSTEM</NAME>
-                                    <VALUE>32820</VALUE>
-                                </ID>
-                                <TEXT>MenuTree路径</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CHECK_SHOT_SPEC</NAME>
-                                    <VALUE>32818</VALUE>
-                                </ID>
-                                <TEXT>指定路径</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Separator</ELEMENT_NAME>
-                                <HORIZ>FALSE</HORIZ>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_START_RECORD</NAME>
-                                    <VALUE>32786</VALUE>
-                                </ID>
-                                <TEXT>开始录屏</TEXT>
-                                <KEYS>N</KEYS>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>6</INDEX_SMALL>
-                                <INDEX_LARGE>2</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                <ALWAYS_DESCRIPTION>FALSE</ALWAYS_DESCRIPTION>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_STOP_RECORD</NAME>
-                                    <VALUE>32787</VALUE>
-                                </ID>
-                                <TEXT>停止录屏</TEXT>
-                                <KEYS>R</KEYS>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>7</INDEX_SMALL>
-                                <INDEX_LARGE>3</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                <ALWAYS_DESCRIPTION>FALSE</ALWAYS_DESCRIPTION>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CHECK_SUPORT_GPU</NAME>
-                                    <VALUE>32792</VALUE>
-                                </ID>
-                                <TEXT>GPU支持</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CHECK_FORMAT_MP4</NAME>
-                                    <VALUE>32782</VALUE>
-                                </ID>
-                                <TEXT>MP4格式</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CHECK_FORMAT_AVI</NAME>
-                                    <VALUE>32793</VALUE>
-                                </ID>
-                                <TEXT>AVI格式</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Separator</ELEMENT_NAME>
-                                <HORIZ>FALSE</HORIZ>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CHECK_VERTICALLY</NAME>
-                                    <VALUE>32789</VALUE>
-                                </ID>
-                                <TEXT>垂直镜像</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CHECK_HORIONTAL</NAME>
-                                    <VALUE>32790</VALUE>
-                                </ID>
-                                <TEXT>水平镜像</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CHECK_IR_SHOT</NAME>
-                                    <VALUE>32823</VALUE>
-                                </ID>
-                                <TEXT>遥控截图</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            </ELEMENT>
-                        </ELEMENTS>
-                    </PANEL>
-                    <PANEL>
-                        <ELEMENT_NAME>Panel</ELEMENT_NAME>
-                        <NAME>Video Input</NAME>
-                        <KEYS>D</KEYS>
-                        <INDEX>2</INDEX>
-                        <JUSTIFY_COLUMNS>FALSE</JUSTIFY_COLUMNS>
-                        <CENTER_COLUMN_VERT>FALSE</CENTER_COLUMN_VERT>
-                        <ELEMENTS>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CHECK_AUTO</NAME>
-                                    <VALUE>32779</VALUE>
-                                </ID>
-                                <TEXT>AUTO</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CHECK_HDMI</NAME>
-                                    <VALUE>32773</VALUE>
-                                </ID>
-                                <TEXT>HDMI</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CHECK_DVID</NAME>
-                                    <VALUE>32774</VALUE>
-                                </ID>
-                                <TEXT>DVI-D</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CHECK_YCBCR</NAME>
-                                    <VALUE>32773</VALUE>
-                                </ID>
-                                <TEXT>YCBCR</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CHECK_DVIA</NAME>
-                                    <VALUE>32775</VALUE>
-                                </ID>
-                                <TEXT>DVI-A</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CHECK_SDI</NAME>
-                                    <VALUE>32778</VALUE>
-                                </ID>
-                                <TEXT>SDI</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CHECK_COMPOSITE</NAME>
-                                    <VALUE>32776</VALUE>
-                                </ID>
-                                <TEXT>COMPOSITE</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CHECK_SVIDEO</NAME>
-                                    <VALUE>32777</VALUE>
-                                </ID>
-                                <TEXT>SVIDEO</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            </ELEMENT>
-                        </ELEMENTS>
-                    </PANEL>
-                    <PANEL>
-                        <ELEMENT_NAME>Panel</ELEMENT_NAME>
-                        <NAME>Audio Input</NAME>
-                        <KEYS>I</KEYS>
-                        <INDEX>3</INDEX>
-                        <JUSTIFY_COLUMNS>FALSE</JUSTIFY_COLUMNS>
-                        <CENTER_COLUMN_VERT>FALSE</CENTER_COLUMN_VERT>
-                        <ELEMENTS>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CHECK_AUTO</NAME>
-                                    <VALUE>32779</VALUE>
-                                </ID>
-                                <TEXT>Embedded Audio</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CHECK_LINEIN</NAME>
-                                    <VALUE>32828</VALUE>
-                                </ID>
-                                <TEXT>Line-IN</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            </ELEMENT>
-                        </ELEMENTS>
-                    </PANEL>
-                    <PANEL>
-                        <ELEMENT_NAME>Panel</ELEMENT_NAME>
-                        <NAME>Video Quality</NAME>
-                        <INDEX>2</INDEX>
-                        <JUSTIFY_COLUMNS>FALSE</JUSTIFY_COLUMNS>
-                        <CENTER_COLUMN_VERT>FALSE</CENTER_COLUMN_VERT>
-                        <ELEMENTS>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Edit</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_SPIN3</NAME>
-                                    <VALUE>32788</VALUE>
-                                </ID>
-                                <TEXT>色    调:</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                <WIDTH>50</WIDTH>
-                                <WIDTH_FLOATY>0</WIDTH_FLOATY>
-                                <SPIN_BUTTONS>TRUE</SPIN_BUTTONS>
-                                <MIN>0</MIN>
-                                <MAX>100</MAX>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Edit</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_SPIN3</NAME>
-                                    <VALUE>32788</VALUE>
-                                </ID>
-                                <TEXT>亮    度:</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                <WIDTH>50</WIDTH>
-                                <WIDTH_FLOATY>0</WIDTH_FLOATY>
-                                <SPIN_BUTTONS>TRUE</SPIN_BUTTONS>
-                                <MIN>0</MIN>
-                                <MAX>100</MAX>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Edit</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_SPIN3</NAME>
-                                    <VALUE>32788</VALUE>
-                                </ID>
-                                <TEXT>锐    度:</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                <WIDTH>50</WIDTH>
-                                <WIDTH_FLOATY>0</WIDTH_FLOATY>
-                                <SPIN_BUTTONS>TRUE</SPIN_BUTTONS>
-                                <MIN>0</MIN>
-                                <MAX>100</MAX>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Edit</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_SPIN3</NAME>
-                                    <VALUE>32788</VALUE>
-                                </ID>
-                                <TEXT>饱和度:</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                <WIDTH>50</WIDTH>
-                                <WIDTH_FLOATY>0</WIDTH_FLOATY>
-                                <SPIN_BUTTONS>TRUE</SPIN_BUTTONS>
-                                <MIN>0</MIN>
-                                <MAX>100</MAX>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Edit</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_SPIN3</NAME>
-                                    <VALUE>32788</VALUE>
-                                </ID>
-                                <TEXT>对比度:</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                <WIDTH>50</WIDTH>
-                                <WIDTH_FLOATY>0</WIDTH_FLOATY>
-                                <SPIN_BUTTONS>TRUE</SPIN_BUTTONS>
-                                <MIN>0</MIN>
-                                <MAX>100</MAX>
-                            </ELEMENT>
-                        </ELEMENTS>
-                    </PANEL>
-                </PANELS>
-            </CATEGORY>
-            <CATEGORY>
-                <ELEMENT_NAME>Category</ELEMENT_NAME>
-                <NAME>设备管理</NAME>
-                <PANELS>
-                    <PANEL>
-                        <ELEMENT_NAME>Panel</ELEMENT_NAME>
-                        <NAME>声音和OCR</NAME>
-                        <INDEX>3</INDEX>
-                        <JUSTIFY_COLUMNS>FALSE</JUSTIFY_COLUMNS>
-                        <CENTER_COLUMN_VERT>TRUE</CENTER_COLUMN_VERT>
-                        <ELEMENTS>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Group</ELEMENT_NAME>
-                                <ELEMENTS>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>Label</ELEMENT_NAME>
-                                        <TEXT>声音等级:</TEXT>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>-1</INDEX_SMALL>
-                                        <INDEX_LARGE>-1</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                    </ELEMENT>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>Edit</ELEMENT_NAME>
-                                        <ID>
-                                            <NAME>ID_EDIT_SOUND_LEVEL</NAME>
-                                            <VALUE>32780</VALUE>
-                                        </ID>
-                                        <TEXT>声音等级 :</TEXT>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>-1</INDEX_SMALL>
-                                        <INDEX_LARGE>-1</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                        <WIDTH>80</WIDTH>
-                                        <WIDTH_FLOATY>0</WIDTH_FLOATY>
-                                        <SPIN_BUTTONS>FALSE</SPIN_BUTTONS>
-                                        <VALUE>2000.0</VALUE>
-                                    </ELEMENT>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>Button</ELEMENT_NAME>
-                                        <ID>
-                                            <NAME>BTN_DEF_SOUND</NAME>
-                                            <VALUE>32802</VALUE>
-                                        </ID>
-                                        <TEXT>默认</TEXT>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>-1</INDEX_SMALL>
-                                        <INDEX_LARGE>-1</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                        <ALWAYS_DESCRIPTION>FALSE</ALWAYS_DESCRIPTION>
-                                    </ELEMENT>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>Button</ELEMENT_NAME>
-                                        <ID>
-                                            <NAME>BTN_HAD_SOUND</NAME>
-                                            <VALUE>32795</VALUE>
-                                        </ID>
-                                        <TEXT>有声</TEXT>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>-1</INDEX_SMALL>
-                                        <INDEX_LARGE>-1</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                        <ALWAYS_DESCRIPTION>FALSE</ALWAYS_DESCRIPTION>
-                                    </ELEMENT>
-                                </ELEMENTS>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Group</ELEMENT_NAME>
-                                <ELEMENTS>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>Label</ELEMENT_NAME>
-                                        <TEXT>百度识别:</TEXT>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>-1</INDEX_SMALL>
-                                        <INDEX_LARGE>-1</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                    </ELEMENT>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>ComboBox</ELEMENT_NAME>
-                                        <ID>
-                                            <NAME>ID_COMBOX_OCR</NAME>
-                                            <VALUE>32800</VALUE>
-                                        </ID>
-                                        <TEXT>百度OCR</TEXT>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>-1</INDEX_SMALL>
-                                        <INDEX_LARGE>-1</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                        <WIDTH>68</WIDTH>
-                                        <WIDTH_FLOATY>80</WIDTH_FLOATY>
-                                        <SPIN_BUTTONS>FALSE</SPIN_BUTTONS>
-                                        <EDIT_BOX>FALSE</EDIT_BOX>
-                                        <DROPDOWN_LIST>TRUE</DROPDOWN_LIST>
-                                        <DROPDOWN_LIST_RESIZE>TRUE</DROPDOWN_LIST_RESIZE>
-                                    </ELEMENT>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>Label</ELEMENT_NAME>
-                                        <TEXT>余量:</TEXT>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>-1</INDEX_SMALL>
-                                        <INDEX_LARGE>-1</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                    </ELEMENT>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>Edit</ELEMENT_NAME>
-                                        <ID>
-                                            <NAME>ID_EDIT_COUNT</NAME>
-                                            <VALUE>32801</VALUE>
-                                        </ID>
-                                        <TEXT>剩余次数:</TEXT>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>-1</INDEX_SMALL>
-                                        <INDEX_LARGE>-1</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                        <WIDTH>40</WIDTH>
-                                        <WIDTH_FLOATY>0</WIDTH_FLOATY>
-                                        <SPIN_BUTTONS>FALSE</SPIN_BUTTONS>
-                                        <VALUE>10000</VALUE>
-                                    </ELEMENT>
-                                </ELEMENTS>
-                            </ELEMENT>
-                        </ELEMENTS>
-                    </PANEL>
-                    <PANEL>
-                        <ELEMENT_NAME>Panel</ELEMENT_NAME>
-                        <NAME>信号仪管理</NAME>
-                        <INDEX>1</INDEX>
-                        <JUSTIFY_COLUMNS>FALSE</JUSTIFY_COLUMNS>
-                        <CENTER_COLUMN_VERT>FALSE</CENTER_COLUMN_VERT>
-                        <ELEMENTS>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Group</ELEMENT_NAME>
-                                <ELEMENTS>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                        <ID>
-                                            <NAME>ID_CHECK1_22293</NAME>
-                                            <VALUE>32807</VALUE>
-                                        </ID>
-                                        <TEXT>信号仪1</TEXT>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>-1</INDEX_SMALL>
-                                        <INDEX_LARGE>-1</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                    </ELEMENT>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>ComboBox</ELEMENT_NAME>
-                                        <ID>
-                                            <NAME>ID_COMBO1_22293</NAME>
-                                            <VALUE>32806</VALUE>
-                                        </ID>
-                                        <TEXT>Combo1</TEXT>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>-1</INDEX_SMALL>
-                                        <INDEX_LARGE>-1</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                        <WIDTH>50</WIDTH>
-                                        <WIDTH_FLOATY>50</WIDTH_FLOATY>
-                                        <SPIN_BUTTONS>FALSE</SPIN_BUTTONS>
-                                        <EDIT_BOX>FALSE</EDIT_BOX>
-                                        <DROPDOWN_LIST>TRUE</DROPDOWN_LIST>
-                                        <DROPDOWN_LIST_RESIZE>TRUE</DROPDOWN_LIST_RESIZE>
-                                    </ELEMENT>
-                                </ELEMENTS>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Group</ELEMENT_NAME>
-                                <ELEMENTS>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                        <ID>
-                                            <NAME>ID_CHECK2_22293</NAME>
-                                            <VALUE>32804</VALUE>
-                                        </ID>
-                                        <TEXT>信号仪2</TEXT>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>-1</INDEX_SMALL>
-                                        <INDEX_LARGE>-1</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                    </ELEMENT>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>ComboBox</ELEMENT_NAME>
-                                        <ID>
-                                            <NAME>ID_COMBO2_22293</NAME>
-                                            <VALUE>32803</VALUE>
-                                        </ID>
-                                        <TEXT>Combo1</TEXT>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>-1</INDEX_SMALL>
-                                        <INDEX_LARGE>-1</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                        <WIDTH>50</WIDTH>
-                                        <WIDTH_FLOATY>50</WIDTH_FLOATY>
-                                        <SPIN_BUTTONS>FALSE</SPIN_BUTTONS>
-                                        <EDIT_BOX>FALSE</EDIT_BOX>
-                                        <DROPDOWN_LIST>TRUE</DROPDOWN_LIST>
-                                        <DROPDOWN_LIST_RESIZE>TRUE</DROPDOWN_LIST_RESIZE>
-                                    </ELEMENT>
-                                </ELEMENTS>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Separator</ELEMENT_NAME>
-                                <HORIZ>TRUE</HORIZ>
-                            </ELEMENT>
-                        </ELEMENTS>
-                    </PANEL>
-                    <PANEL>
-                        <ELEMENT_NAME>Panel</ELEMENT_NAME>
-                        <NAME>电视相关</NAME>
-                        <INDEX>-1</INDEX>
-                        <JUSTIFY_COLUMNS>TRUE</JUSTIFY_COLUMNS>
-                        <CENTER_COLUMN_VERT>TRUE</CENTER_COLUMN_VERT>
-                        <ELEMENTS>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Group</ELEMENT_NAME>
-                                <ELEMENTS>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                        <ID>
-                                            <NAME>ID_CHECK_TVPORT</NAME>
-                                            <VALUE>32835</VALUE>
-                                        </ID>
-                                        <TEXT>电视串口</TEXT>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>-1</INDEX_SMALL>
-                                        <INDEX_LARGE>-1</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                    </ELEMENT>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>ComboBox</ELEMENT_NAME>
-                                        <ID>
-                                            <NAME>ID_COMBO_TVPORT</NAME>
-                                            <VALUE>32805</VALUE>
-                                        </ID>
-                                        <TEXT>Combo1</TEXT>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>-1</INDEX_SMALL>
-                                        <INDEX_LARGE>-1</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                        <WIDTH>50</WIDTH>
-                                        <WIDTH_FLOATY>50</WIDTH_FLOATY>
-                                        <SPIN_BUTTONS>FALSE</SPIN_BUTTONS>
-                                        <EDIT_BOX>FALSE</EDIT_BOX>
-                                        <DROPDOWN_LIST>TRUE</DROPDOWN_LIST>
-                                        <DROPDOWN_LIST_RESIZE>TRUE</DROPDOWN_LIST_RESIZE>
-                                    </ELEMENT>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                        <ID>
-                                            <NAME>ID_CHECK_WATCHTV</NAME>
-                                            <VALUE>32809</VALUE>
-                                        </ID>
-                                        <TEXT>监听</TEXT>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>-1</INDEX_SMALL>
-                                        <INDEX_LARGE>-1</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                    </ELEMENT>
-                                </ELEMENTS>
-                            </ELEMENT>
-                             <ELEMENT>
-                                <ELEMENT_NAME>Group</ELEMENT_NAME>
-                                <ELEMENTS>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                        <ID>
-                                            <NAME>ID_CHECK_USB</NAME>
-                                            <VALUE>32826</VALUE>
-                                        </ID>
-                                        <TEXT>闪盘切换</TEXT>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>-1</INDEX_SMALL>
-                                        <INDEX_LARGE>-1</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                    </ELEMENT>                                    
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>ComboBox</ELEMENT_NAME>
-                                        <ID>
-                                            <NAME>ID_COMBO_USB</NAME>
-                                            <VALUE>32831</VALUE>
-                                        </ID>
-                                        <TEXT>U盘切换</TEXT>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>-1</INDEX_SMALL>
-                                        <INDEX_LARGE>-1</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                        <WIDTH>50</WIDTH>
-                                        <WIDTH_FLOATY>0</WIDTH_FLOATY>
-                                        <SPIN_BUTTONS>FALSE</SPIN_BUTTONS>
-                                        <EDIT_BOX>FALSE</EDIT_BOX>
-                                        <DROPDOWN_LIST>TRUE</DROPDOWN_LIST>
-                                        <DROPDOWN_LIST_RESIZE>TRUE</DROPDOWN_LIST_RESIZE>
-                                    </ELEMENT>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>Button</ELEMENT_NAME>
-                                        <ID>
-                                            <NAME>ID_SWITCH_USB</NAME>
-                                            <VALUE>32832</VALUE>
-                                        </ID>
-                                        <TEXT>切PC</TEXT>
-                                        <KEYS>F</KEYS>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>5</INDEX_SMALL>
-                                        <INDEX_LARGE>0</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                        <ALWAYS_DESCRIPTION>FALSE</ALWAYS_DESCRIPTION>
-                                    </ELEMENT>
-                                </ELEMENTS>
-                            </ELEMENT>
-                        </ELEMENTS>
-                    </PANEL>
-                    <PANEL>
-                        <ELEMENT_NAME>Panel</ELEMENT_NAME>
-                        <NAME>测试精灵</NAME>
-                        <INDEX>5</INDEX>
-                        <JUSTIFY_COLUMNS>TRUE</JUSTIFY_COLUMNS>
-                        <CENTER_COLUMN_VERT>TRUE</CENTER_COLUMN_VERT>
-                        <ELEMENTS>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Group</ELEMENT_NAME>
-                                <ELEMENTS>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>Label</ELEMENT_NAME>
-                                        <TEXT>测试精灵:</TEXT>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>-1</INDEX_SMALL>
-                                        <INDEX_LARGE>-1</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                    </ELEMENT>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>ComboBox</ELEMENT_NAME>
-                                        <ID>
-                                            <NAME>ID_COMBO_TWPORT</NAME>
-                                            <VALUE>32811</VALUE>
-                                        </ID>
-                                        <TEXT>Combo1</TEXT>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>-1</INDEX_SMALL>
-                                        <INDEX_LARGE>-1</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                        <WIDTH>50</WIDTH>
-                                        <WIDTH_FLOATY>50</WIDTH_FLOATY>
-                                        <SPIN_BUTTONS>FALSE</SPIN_BUTTONS>
-                                        <EDIT_BOX>FALSE</EDIT_BOX>
-                                        <DROPDOWN_LIST>TRUE</DROPDOWN_LIST>
-                                        <DROPDOWN_LIST_RESIZE>TRUE</DROPDOWN_LIST_RESIZE>
-                                    </ELEMENT>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                        <ID>
-                                            <NAME>ID_CHECK_ENABLETW</NAME>
-                                            <VALUE>32810</VALUE>
-                                        </ID>
-                                        <TEXT>启用</TEXT>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>-1</INDEX_SMALL>
-                                        <INDEX_LARGE>-1</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                    </ELEMENT>
-                                </ELEMENTS>
-                            </ELEMENT>
-
-                            <ELEMENT>
-                                <ELEMENT_NAME>Group</ELEMENT_NAME>
-                                <ELEMENTS>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>Label</ELEMENT_NAME>
-                                        <TEXT>控制端口:</TEXT>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>-1</INDEX_SMALL>
-                                        <INDEX_LARGE>-1</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                    </ELEMENT>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>ComboBox</ELEMENT_NAME>
-                                        <ID>
-                                            <NAME>ID_COMBO_POWER</NAME>
-                                            <VALUE>32833</VALUE>
-                                        </ID>
-                                        <TEXT>控制端口</TEXT>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>-1</INDEX_SMALL>
-                                        <INDEX_LARGE>-1</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                        <WIDTH>50</WIDTH>
-                                        <WIDTH_FLOATY>50</WIDTH_FLOATY>
-                                        <SPIN_BUTTONS>FALSE</SPIN_BUTTONS>
-                                        <EDIT_BOX>FALSE</EDIT_BOX>
-                                        <DROPDOWN_LIST>TRUE</DROPDOWN_LIST>
-                                        <DROPDOWN_LIST_RESIZE>TRUE</DROPDOWN_LIST_RESIZE>
-                                    </ELEMENT>
-                                    <ELEMENT>
-                                        <ELEMENT_NAME>Button</ELEMENT_NAME>
-                                        <ID>
-                                            <NAME>ID_POWER_CTRL</NAME>
-                                            <VALUE>32834</VALUE>
-                                        </ID>
-                                        <TEXT>闭合</TEXT>
-                                        <KEYS>F</KEYS>
-                                        <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                        <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                        <INDEX_SMALL>5</INDEX_SMALL>
-                                        <INDEX_LARGE>0</INDEX_LARGE>
-                                        <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                                        <ALWAYS_DESCRIPTION>FALSE</ALWAYS_DESCRIPTION>
-                                    </ELEMENT>
-                                </ELEMENTS>
-                            </ELEMENT>
-
-                        </ELEMENTS>
-                    </PANEL>
-                    <PANEL>
-                        <ELEMENT_NAME>Panel</ELEMENT_NAME>
-                        <NAME>其他设置</NAME>
-                        <INDEX>4</INDEX>
-                        <JUSTIFY_COLUMNS>TRUE</JUSTIFY_COLUMNS>
-                        <CENTER_COLUMN_VERT>TRUE</CENTER_COLUMN_VERT>
-                        <ELEMENTS>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CHECK_FULL_CUT</NAME>
-                                    <VALUE>32781</VALUE>
-                                </ID>
-                                <TEXT>全步骤截图</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CHECK_RCONTROL</NAME>
-                                    <VALUE>32824</VALUE>
-                                </ID>
-                                <TEXT>遥控器(&amp;F5)</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            </ELEMENT>
-                            <ELEMENT>
-                                <ELEMENT_NAME>Button_Check</ELEMENT_NAME>
-                                <ID>
-                                    <NAME>ID_CHECK_ACTUATOR</NAME>
-                                    <VALUE>32830</VALUE>
-                                </ID>
-                                <TEXT>执行器(&amp;F6)</TEXT>
-                                <PALETTE_TOP>FALSE</PALETTE_TOP>
-                                <ALWAYS_LARGE>FALSE</ALWAYS_LARGE>
-                                <INDEX_SMALL>-1</INDEX_SMALL>
-                                <INDEX_LARGE>-1</INDEX_LARGE>
-                                <DEFAULT_COMMAND>TRUE</DEFAULT_COMMAND>
-                            </ELEMENT>
-                        </ELEMENTS>
-                    </PANEL>
-                </PANELS>
-            </CATEGORY>
-        </CATEGORIES>
-    </RIBBON_BAR>
-</AFX_RIBBON>

二进制
SATHelper/SATHelper/res/sort.bmp


二进制
SATHelper/SATHelper/res/sort_hc.bmp


二进制
SATHelper/SATHelper/res/unchecked.bmp


二进制
SATHelper/SATHelper/res/writelarge.bmp


二进制
SATHelper/SATHelper/res/writesmall.bmp


+ 24 - 0
SATHelper/SATHelper/resource.h

@@ -4,15 +4,36 @@
 //
 //
 #define IDD_ABOUTBOX                    100
 #define IDD_ABOUTBOX                    100
 #define IDP_OLE_INIT_FAILED             100
 #define IDP_OLE_INIT_FAILED             100
+#define IDS_LOGIN                       101
+#define IDS_LOGOUT                      102
+#define IDS_SWITCH_PC                   103
+#define IDS_SWITCH_TV                   104
+#define IDS_CTRL_CLOSE                  105
+#define IDS_CTRL_OPEN                   106
+#define IDS_REMOTE_DEVICE               107
+#define IDS_ACTUATOR                    108
+#define IDS_USB_UPGRADE                 109
 #define IDB_WRITESMALL                  110
 #define IDB_WRITESMALL                  110
+#define IDS_RESTART_REMOTE_DEVICE       110
 #define IDB_WRITELARGE                  111
 #define IDB_WRITELARGE                  111
+#define IDS_REMOTE_SELECTE              111
 #define IDB_MAIN                        112
 #define IDB_MAIN                        112
+#define IDS_ACTUATOR_MODIFY             112
 #define IDB_BUTTONS                     113
 #define IDB_BUTTONS                     113
+#define IDS_ACTUATOR_ADDIP              113
 #define IDB_FILELARGE                   114
 #define IDB_FILELARGE                   114
+#define IDS_ACTUATOR_TVIP               114
 #define IDB_FILESMALL                   115
 #define IDB_FILESMALL                   115
+#define IDS_ACTUATOR_TASKID             115
+#define IDS_ACTUATOR_TASK_STATUS        116
+#define IDS_STRING117                   117
+#define IDS_STRING118                   118
 #define IDR_POPUP_EDIT                  119
 #define IDR_POPUP_EDIT                  119
+#define IDS_STRING119                   119
 #define ID_STATUSBAR_PANE1              120
 #define ID_STATUSBAR_PANE1              120
+#define IDS_STRING120                   120
 #define ID_STATUSBAR_PANE2              121
 #define ID_STATUSBAR_PANE2              121
+#define IDS_STRING121                   121
 #define IDS_STATUS_PANE1                122
 #define IDS_STATUS_PANE1                122
 #define IDS_STATUS_PANE2                123
 #define IDS_STATUS_PANE2                123
 #define IDR_MAINFRAME                   128
 #define IDR_MAINFRAME                   128
@@ -22,6 +43,7 @@
 #define ID_VIEW_FILEVIEW                133
 #define ID_VIEW_FILEVIEW                133
 #define ID_VIEW_CLASSVIEW               134
 #define ID_VIEW_CLASSVIEW               134
 #define ID_PROPERTIES                   135
 #define ID_PROPERTIES                   135
+#define IDS_STRING135                   135
 #define ID_OPEN                         136
 #define ID_OPEN                         136
 #define ID_OPEN_WITH                    137
 #define ID_OPEN_WITH                    137
 #define ID_DUMMY_COMPILE                138
 #define ID_DUMMY_COMPILE                138
@@ -119,6 +141,8 @@
 #define GIF_PROBAR                      322
 #define GIF_PROBAR                      322
 #define IDD_DLG_SERVICE                 323
 #define IDD_DLG_SERVICE                 323
 #define IDR_POPUP_DEVICES               326
 #define IDR_POPUP_DEVICES               326
+#define IDS_LOGIN_FAIL                  327
+#define IDS_LOGOUT_FAIL                 328
 #define IDC_COMBO1                      1000
 #define IDC_COMBO1                      1000
 #define IDC_COMBO2                      1001
 #define IDC_COMBO2                      1001
 #define IDC_CHECK1                      1002
 #define IDC_CHECK1                      1002

+ 1 - 1
SATHelper/SATHelper/stdafx.h

@@ -89,5 +89,5 @@ typedef struct __CAPTURE_INFO__
 #include "TestWizardDLL.h"
 #include "TestWizardDLL.h"
 #include "CallPython.h"
 #include "CallPython.h"
 #include "USBUpgradeDLL.h"
 #include "USBUpgradeDLL.h"
-
+#include "GlobalString.h"
 #endif //PCH_H
 #endif //PCH_H