87 lines
1.9 KiB
C++
87 lines
1.9 KiB
C++
#pragma once
|
|
|
|
#include <Windows.h>
|
|
#include <stdlib.h>
|
|
#include <string>
|
|
#include <map>
|
|
#include "define.h"
|
|
#include "PublicStruct.h"
|
|
#include "VersionInfo.h"
|
|
|
|
typedef std::map<BYTE, PROCESS_INFO*> PROCESS_INFO_MAP;
|
|
typedef PROCESS_INFO_MAP::iterator PROCESS_INFO_MAP_ITER;
|
|
|
|
class DLL_DECLARE CUpdateProcessInfo
|
|
{
|
|
public:
|
|
CUpdateProcessInfo();
|
|
~CUpdateProcessInfo(){}
|
|
|
|
public:
|
|
TCHAR m_szFtpIP[MAX_PATH];
|
|
WORD m_wFtpPort;
|
|
TCHAR m_szID[MAX_PATH];
|
|
TCHAR m_szPass[MAX_PATH];
|
|
TCHAR m_szDownPath[MAX_PATH];
|
|
TCHAR m_szExecutePath[MAX_PATH];
|
|
|
|
int m_nTotalProcessCount;
|
|
int m_nUpdateNumber;
|
|
PROCESS_INFO_MAP m_mapProcessInfo;
|
|
|
|
public:
|
|
PROCESS_INFO* GetProcessInfo( BYTE byUpateNumber );
|
|
|
|
};
|
|
|
|
|
|
class DLL_DECLARE CUpdateScriptParser
|
|
{
|
|
private:
|
|
CUpdateScriptParser(void);
|
|
public:
|
|
~CUpdateScriptParser(void);
|
|
|
|
public:
|
|
static CUpdateScriptParser* GetInstance()
|
|
{
|
|
if( !m_pInstance )
|
|
m_pInstance = new CUpdateScriptParser;
|
|
|
|
return m_pInstance;
|
|
}
|
|
|
|
static void Release()
|
|
{
|
|
if( m_pInstance ) delete m_pInstance;
|
|
}
|
|
|
|
private:
|
|
static CUpdateScriptParser* m_pInstance;
|
|
|
|
public:
|
|
CUpdateProcessInfo m_LauncherInfo;
|
|
CUpdateProcessInfo m_ApplicationInfo;
|
|
AGENT_INFO m_AgentInfo;
|
|
|
|
private:
|
|
BYTE m_bLoad;
|
|
|
|
public:
|
|
BOOL SaveVersion( BYTE byUpdateType, BYTE byUpdateNumber, CVersionInfo& rVerInfo );
|
|
PROCESS_INFO* GetProcessInfo( BYTE byUpdateType, BYTE byUpdateNumber );
|
|
BYTE GetUpdateNumFromProcName( BYTE byUpdateType, TCHAR* pszProcessName );
|
|
eUPDATE_TYPE GetUpdateTypeFromProcName( TCHAR* pszProcessName );
|
|
|
|
//DataLoad
|
|
public:
|
|
BOOL LoadData(void);
|
|
void GetModuleDirectory( char* szDirPath, int nSize );
|
|
BOOL IsLoad(){ return m_bLoad; }
|
|
AGENT_INFO& GetAgentInfo(){ return m_AgentInfo; }
|
|
|
|
private:
|
|
BOOL LoadProcessInfo( BYTE byUpdateType, const char* pszFilePath );
|
|
BOOL LoadAgentInfo( const char* pszFilePath );
|
|
};
|