Prechádzať zdrojové kódy

当配置值空时,写入默认值;

scbc.sat2 5 rokov pred
rodič
commit
85751d6f63

+ 29 - 0
SATService/SATService/Global.cpp

@@ -231,9 +231,15 @@ namespace GLOBAL
 		g_stSATConfig.ulAsynConnectTimeout = _tstol(szMicrosecond);
 
 		if ( _tcslen(g_stSATConfig.szAdbRouteAddress) == 0)
+		{
 			_stprintf_s(g_stSATConfig.szAdbRouteAddress, _T("192.168.1.1"));
+			WritePrivateProfileString(_T("SATService"), _T("AdbRouteAddress"), _T("192.168.1.1"), szIniPath);
+		}
 		if ( g_stSATConfig.ulAsynConnectTimeout == 0 )
+		{			
 			g_stSATConfig.ulAsynConnectTimeout = 3000;
+			WritePrivateProfileString(_T("SATService"), _T("AsynConnectTimeout"), _T("3000"), szIniPath);
+		}
 		
 		GetPrivateProfileString(_T("LinuxDevice"), _T("device"), _T(""), g_stSATConfig.stLinuxDevice.szDevice, MAX_PATH, szIniPath);
 		GetPrivateProfileString(_T("LinuxDevice"), _T("manu"), _T(""), g_stSATConfig.stLinuxDevice.szManu, MAX_PATH, szIniPath);
@@ -1471,6 +1477,29 @@ namespace GLOBAL
 		return TRUE;
 	}
 
+	std::string GetTortoiseSVNProcPath()
+	{
+		HKEY hKey;
+		int ret = RegOpenKeyEx(HKEY_LOCAL_MACHINE, _T("SOFTWARE\\TortoiseSVN"), 0, KEY_QUERY_VALUE, &hKey);
+		if (ret != ERROR_SUCCESS)
+			return std::string();
+
+		//¶ÁÈ¡KEY
+		DWORD dwType = REG_SZ; //Êý¾ÝÀàÐÍ
+		DWORD cbData = MAX_PATH;
+		TCHAR szTortoiseSVNProcPath[MAX_PATH] = {0};
+		ret = RegQueryValueEx(hKey, _T("ProcPath"), NULL, &dwType, (LPBYTE)szTortoiseSVNProcPath, &cbData);
+		if (ret != ERROR_SUCCESS) {
+			RegCloseKey(hKey);
+			return std::string();
+		}
+
+		RegCloseKey(hKey);
+
+		return szTortoiseSVNProcPath;
+	}
+
+
 	void Split(std::string str1, std::string str2, std::vector<std::string> &vt)
 	{
 		if ( str1.size() == 0 || str2.size() == 0 )

+ 3 - 1
SATService/SATService/Global.h

@@ -210,7 +210,7 @@ namespace GLOBAL
 	extern BOOL SetFileLastWirteTime(IN LPCTSTR lpDirName, IN SYSTEMTIME &st);
 	// 删除指定的目录所有文件;
 	extern void DeleteDirectory(CString strDir);
-	//
+	// 获取主机名;
 	extern void GetHostName();
 	// 创建目录;
 	bool MKDIR(LPCTSTR dir);
@@ -223,6 +223,8 @@ namespace GLOBAL
 	std::string Replace(std::string strSrc, std::string strNew, std::string strOld);
 	// 获取Python27路径;
 	BOOL Python27Dir();
+	// 获取TortoiseSVN的TortoiseProc.exe路径;
+	std::string GetTortoiseSVNProcPath();
 	// 指定字符串分隔;
 	void Split(std::string str1, std::string str2, std::vector<std::string> &vt);
 };