Bläddra i källkod

添加svn命令行处理类。

scbc.sat2 5 år sedan
förälder
incheckning
02cd84f9ab

+ 2 - 2
SATHelper/SATHelper/MainFrm.cpp

@@ -137,9 +137,9 @@ CMainFrame::~CMainFrame()
 void CMainFrame::InitTrayIcon()
 {
 	m_trayIcon.SetNotificationWnd(this, WM_MY_TRAY_NOTIFICATION);
-	m_trayIcon.SetIcon(IDR_MAINFRAME, _T("UB530"));
+	m_trayIcon.SetIcon(IDR_MAINFRAME, _T("SATHelper 客户端程序"));
 	m_trayIcon.SetIconInfos(IDR_MAINFRAME, IDR_MAINFRAME, IDR_MAINFRAME);
-	m_trayIcon.SetDefaultTip(_T("UB530"));
+	m_trayIcon.SetDefaultTip(_T("SATHelper 客户端程序"));
 }
 
 LRESULT CMainFrame::OnTaskBarCreated(WPARAM wp, LPARAM lp)

+ 2 - 0
SATHelper/SATHelper/SATHelper.vcxproj

@@ -245,6 +245,7 @@
     <ClInclude Include="SATHelperDoc.h" />
     <ClInclude Include="SATHelperView.h" />
     <ClInclude Include="stdint.h" />
+    <ClInclude Include="SVNProc.h" />
     <ClInclude Include="SynSerial.h" />
     <ClInclude Include="targetver.h" />
     <ClInclude Include="TestWizardDLL.h" />
@@ -302,6 +303,7 @@
     <ClCompile Include="SATHelper.cpp" />
     <ClCompile Include="SATHelperDoc.cpp" />
     <ClCompile Include="SATHelperView.cpp" />
+    <ClCompile Include="SVNProc.cpp" />
     <ClCompile Include="SynSerial.cpp" />
     <ClCompile Include="TestWizardDLL.cpp" />
     <ClCompile Include="tinyxml2.cpp">

+ 6 - 0
SATHelper/SATHelper/SATHelper.vcxproj.filters

@@ -216,6 +216,9 @@
     <ClInclude Include="RedRatDLL.h">
       <Filter>头文件</Filter>
     </ClInclude>
+    <ClInclude Include="SVNProc.h">
+      <Filter>头文件</Filter>
+    </ClInclude>
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="SATHelper.cpp">
@@ -356,6 +359,9 @@
     <ClCompile Include="RedRatDLL.cpp">
       <Filter>源文件</Filter>
     </ClCompile>
+    <ClCompile Include="SVNProc.cpp">
+      <Filter>源文件</Filter>
+    </ClCompile>
   </ItemGroup>
   <ItemGroup>
     <ResourceCompile Include="SATHelper.rc">

+ 50 - 0
SATHelper/SATHelper/SVNProc.cpp

@@ -0,0 +1,50 @@
+#include "StdAfx.h"
+#include "SVNProc.h"
+
+CSVNProc::CSVNProc(void)
+{
+}
+
+CSVNProc::~CSVNProc(void)
+{
+}
+
+void CSVNProc::SVNProcess(std::string strSVNAddress, std::string strSavePath, DWORD dwSVNVersion, SVNTYPE type)
+{
+
+	TCHAR szCommand[MAX_PATH] = { 0 };
+	if ( type == SVN_EXPORT ) {
+		// 先删除要导出的路径;
+		_stprintf_s(szCommand, _T("/c rd /s /q %s"), strSavePath.c_str());
+		ShellExecute(NULL, _T("open"), _T("cmd"), szCommand, NULL, SW_HIDE);
+		// 再执行导出;
+		_stprintf_s(szCommand, _T("/c svn export -r %d %s %s &pause"), dwSVNVersion, strSVNAddress.c_str(), strSavePath.c_str());
+	}
+	else if ( type == SVN_CHECKOUT ) {
+		// 先删除要导出的路径;
+		_stprintf_s(szCommand, _T("/c rd /s /q %s"), strSavePath.c_str());
+		ShellExecute(NULL, _T("open"), _T("cmd"), szCommand, NULL, SW_HIDE);
+		// 再执行导出;
+		_stprintf_s(szCommand, _T("/c svn checkout -r %d %s %s &pause"), dwSVNVersion, strSVNAddress.c_str(), strSavePath.c_str());
+	}
+	else if ( type == SVN_ROLLBACK ) {
+		_stprintf_s(szCommand, _T("/c svn update -r %d %s &pause"), dwSVNVersion, strSavePath.c_str());
+	}
+
+	ShellExecute(NULL, _T("open"), _T("cmd"), szCommand, NULL, SW_SHOW);
+}
+
+void CSVNProc::Export(std::string strSVNAddress, std::string strSavePath, DWORD dwSVNVersion)
+{
+	SVNProcess(strSVNAddress, strSavePath, dwSVNVersion, SVN_EXPORT);
+}
+
+void CSVNProc::Checkout(std::string strSVNAddress, std::string strSavePath, DWORD dwSVNVersion)
+{
+	SVNProcess(strSVNAddress, strSavePath, dwSVNVersion, SVN_CHECKOUT);
+}
+
+void CSVNProc::Rollback(std::string strSVNAddress, std::string strSavePath, DWORD dwSVNVersion)
+{
+	SVNProcess(strSVNAddress, strSavePath, dwSVNVersion, SVN_ROLLBACK);
+}

+ 31 - 0
SATHelper/SATHelper/SVNProc.h

@@ -0,0 +1,31 @@
+#ifndef __SVN_PROC__
+#define __SVN_PROC__
+
+#pragma once
+
+enum SVNTYPE{
+	SVN_EXPORT,
+	SVN_CHECKOUT,
+	SVN_ROLLBACK
+};
+
+class CSVNProc
+{
+public:
+	CSVNProc(void);
+	~CSVNProc(void);
+
+private:
+	void SVNProcess(std::string strSVNAddress, std::string strSavePath, DWORD dwSVNVersion, SVNTYPE type);
+
+public:
+	// 导出指定版本号的svn路径;
+	void Export(std::string strSVNAddress, std::string strSavePath, DWORD dwSVNVersion);
+	// 检出指定版本号的svn路径;
+	void Checkout(std::string strSVNAddress, std::string strSavePath, DWORD dwSVNVersion);
+	// 回退指定版本号的svn路径;
+	void Rollback(std::string strSVNAddress, std::string strSavePath, DWORD dwSVNVersion);
+};
+
+
+#endif // __SVN_PROC__ 

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 0 - 0
SATHelper/SATHelper/res/ribbon.mfcribbon-ms


Vissa filer visades inte eftersom för många filer har ändrats