www.pudn.com > WZ_UpdateModule_DLL.rar > UpdateInfo.cpp


#include ".\updateinfo.h" 
#include  
 
CUpdateInfo::CUpdateInfo(void) 
{ 
} 
 
CUpdateInfo::~CUpdateInfo(void) 
{ 
} 
 
//INI ÆÄÀÏÀº ¹Ýµå½Ã ½ÇÇà ÆÄÀÏ(¸ðµâ)ÀÌ Àִ°÷¿¡ °°ÀÌ ÀÖ¾î¾ß ÇÑ´Ù. 
BOOL CUpdateInfo::LoadData() 
{ 
	char szDirPath[256], szFilePath[256]; 
	GetModuleDirectory( szDirPath, 256 ); 
	wsprintf( szFilePath, "%s%s", szDirPath, "updateinfo.ini" ); 
 
	if( _access(szFilePath, 0) != -1 )  //ÆÄÀÏÀÌ Á¸ÀçÇϸé.. 
	{ 
		LoadFTPInfo( szFilePath ); 
		LoadRTTAInfo( szFilePath ); 
		LoadUpdateInfo( szFilePath ); 
		LoadProcessInfo( szFilePath ); 
		LoadDownloadPath( szFilePath ); 
	}	 
	else 
		return FALSE; 
 
	return TRUE; 
} 
 
 
 
void CUpdateInfo::GetModuleDirectory( char* szDirPath, int nSize ) 
{ 
	ZeroMemory( szDirPath, nSize ); 
	char szPath[128]; 
	char szDrive[40], szDir[256]; 
	GetModuleFileName( NULL, szPath, 128); 
	_splitpath( szPath, szDrive, szDir, NULL, NULL); 
	wsprintf( szDirPath, "%s%s", szDrive, szDir); 
} 
 
 
void CUpdateInfo::LoadFTPInfo( const char* pszFilePath ) 
{ 
	ZeroMemory( m_szFTP_IP, DEFAULT_BUFFER_SIZE ); 
	GetPrivateProfileString( "FTP", "IP", "127.0.0.1", m_szFTP_IP, DEFAULT_BUFFER_SIZE, pszFilePath ); 
	m_nFTP_Port = GetPrivateProfileInt( "FTP", "PORT", 21, pszFilePath ); 
 
	ZeroMemory( m_szFTP_VersionFileName, DEFAULT_BUFFER_SIZE ); 
	GetPrivateProfileString( "FTP", "VERSION_FILE", "wz_version.dat", m_szFTP_VersionFileName, 128, pszFilePath ); 
 
	ZeroMemory( m_szFTP_FileListFileName, DEFAULT_BUFFER_SIZE ); 
	GetPrivateProfileString( "FTP", "FILELIST_FILE ", "wz_filelist.dat", m_szFTP_FileListFileName, 128, pszFilePath ); 
} 
 
 
void CUpdateInfo::LoadRTTAInfo( const char* pszFilePath ) 
{ 
	ZeroMemory( m_szRTTA_IP, DEFAULT_BUFFER_SIZE ); 
	GetPrivateProfileString( "RTTA", "IP", "127.0.0.1", m_szRTTA_IP, DEFAULT_BUFFER_SIZE, pszFilePath ); 
	m_nRTTA_Port = GetPrivateProfileInt( "RTTA", "PORT", 20510, pszFilePath ); 
} 
 
void CUpdateInfo::LoadUpdateInfo( const char* pszFilePath ) 
{ 
	ZeroMemory( m_szServerName,  MAX_SERVER_COUNT*DEFAULT_BUFFER_SIZE ); 
	ZeroMemory( m_szServerVer,  MAX_SERVER_COUNT*DEFAULT_BUFFER_SIZE ); 
 
	m_nCntServer = GetPrivateProfileInt( "UPDATE_DATA", "COUNT", 0, pszFilePath ); 
 
	for(int i = 0; i < m_nCntServer; i++) 
	{ 
		char szNum[10]; 
		wsprintf(szNum, "%d", i+1); 
 
		//1. ¼­¹öÀ̸§ 
		string strServer = "SERVER"; 
		strServer += szNum; 
		GetPrivateProfileString( "UPDATE_DATA", strServer.c_str(), "", m_szServerName[i], DEFAULT_BUFFER_SIZE, pszFilePath ); 
 
		//2. ¼­¹ö¹öÀü 
		string strVersion = "VERSION"; 
		strVersion += szNum; 
		GetPrivateProfileString( "UPDATE_DATA", strVersion.c_str(), "", m_szServerVer[i], DEFAULT_BUFFER_SIZE, pszFilePath ); 
	} 
} 
 
 
BOOL CUpdateInfo::SaveVersionInfo( byte byVer1, byte byVer2, byte byVer3, int nServerNumber ) 
{ 
	char szDirPath[256], szFilePath[256]; 
	GetModuleDirectory( szDirPath, 256 ); 
	wsprintf( szFilePath, "%s%s", szDirPath, "updateinfo.ini" ); 
 
	if( _access(szFilePath, 0) != -1 )  //ÆÄÀÏÀÌ Á¸ÀçÇϸé.. 
	{ 
		char szTemp[10], szVer[128]; 
		wsprintf(szTemp, "%02d.%02d.%02d", byVer1, byVer2, byVer3); 
		wsprintf(szVer, "Version%d", nServerNumber+1); 
		BOOL bRet = WritePrivateProfileString ("UPDATE_DATA", szVer, szTemp, szFilePath); 
		if( bRet == FALSE ) 
		{ 
			DWORD dwError = GetLastError(); 
			if( dwError == 5 )		//Á¢±Ù ºÒ°¡´É.. 
			{ 
				SetFileAttributes( szFilePath, FILE_ATTRIBUTE_NORMAL ); 
				WritePrivateProfileString ("UPDATE_DATA", szVer, szTemp, szFilePath); 
			} 
		} 
	} 
	else 
		return FALSE; 
 
	return TRUE; 
 
} 
 
void CUpdateInfo::LoadProcessInfo( const char* pszFilePath ) 
{ 
	//PROCESS 
	for(int i = 0; i < MAX_LIVE_PROCESS; i++) 
	{ 
		string strProcess = "PROCESS"; 
		char szNum[10]; 
		wsprintf(szNum, "%d", i+1); 
		strProcess += szNum; 
		ZeroMemory( m_szProcess[i], DEFAULT_BUFFER_SIZE ); 
		GetPrivateProfileString( "PROCESS", strProcess.c_str(), "", m_szProcess[i], DEFAULT_BUFFER_SIZE, pszFilePath ); 
	} 
} 
 
void CUpdateInfo::LoadDownloadPath( const char* pszFilePath ) 
{ 
	//DownloadPath 
	ZeroMemory( m_szDownloadPath, MAX_PATH_SIZE ); 
	GetPrivateProfileString( "DOWNLOAD", "PATH", "C:\\SUN\\", m_szDownloadPath, MAX_PATH_SIZE, pszFilePath ); 
}