Patch level :4.0 setup
Files correlati : Ricompilazione Demo : [ ] Commento :aggiunto unzippamento patch di sistema e aggiornamento ini git-svn-id: svn://10.65.10.50/trunk@15586 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
7ddd0a6317
commit
aacf098860
@ -2262,11 +2262,27 @@ void CampoSetup::UnzipSystem(const wxString& strPrgLocPath) const
|
||||
strSourcePath.MakeAbsolute();
|
||||
//..contando anche quanti sono e memorizzandoli in un array asFileList
|
||||
const size_t uFilesToCopy = wxDir::GetAllFiles(strSourcePath.GetPath(), &asFilesList, strSourcePath.GetFullName());
|
||||
//ordina le patch per numero crescente ma mette davanti a tutte il pacco (sysinst1)
|
||||
asFilesList.Sort(PatchCompare);
|
||||
for (size_t i = 0; i < uFilesToCopy; i++)
|
||||
{
|
||||
UnzipFile(asFilesList[i] , strPrgLocPath);
|
||||
if (uFilesToCopy > 0)
|
||||
{
|
||||
//ordina le patch per numero crescente ma mette davanti a tutte il pacco (sysinst1)
|
||||
asFilesList.Sort(PatchCompare);
|
||||
for (size_t i = 0; i < uFilesToCopy; i++)
|
||||
{
|
||||
UnzipFile(asFilesList[i] , strPrgLocPath);
|
||||
}
|
||||
|
||||
//aggiorna l'install.ini in base al numero di patch e versione dell'ultimo file zip di sistema
|
||||
//ci vuole un giro allucinogeno per trasformare il .zip in .ini e togliere quel cazzo di 1 in fondo
|
||||
wxFileName strLastFile(asFilesList[uFilesToCopy - 1]);
|
||||
wxString strWrk = strLastFile.GetName();
|
||||
strWrk.Truncate(strWrk.Len() - 1);
|
||||
strLastFile.SetName(strWrk);
|
||||
strLastFile.SetExt("ini");
|
||||
strWrk = strLastFile.GetFullName();
|
||||
//adesso che ha trovato quello sporco ultimo .ini prende versione e patch
|
||||
CampoIniFile SyLastPatch(strWrk, "sy");
|
||||
const wxString strVersion = SyLastPatch.Get("Versione");
|
||||
const wxString strPatch = SyLastPatch.Get("Patch");
|
||||
}
|
||||
}
|
||||
|
||||
@ -2311,8 +2327,14 @@ void CampoSetup::OnTimer(wxTimerEvent& WXUNUSED(e))
|
||||
//per ogni files da copiare controlla i path sorgente e destinazione(problema con sottodirectory tipo dati)
|
||||
wxString strFileCurr;
|
||||
const size_t nPathLenght = strSourcePath.GetPath().Len();
|
||||
//progress bar
|
||||
wxProgressDialog pi("Installazione Dati e Programmi di base...", "", (int)uFilesToCopy, NULL, wxPD_AUTO_HIDE | wxPD_APP_MODAL | wxPD_CAN_ABORT);
|
||||
|
||||
for (size_t i = 0; i < uFilesToCopy; i++)
|
||||
{
|
||||
//aggiorna la progind
|
||||
if (!pi.Update((int)i, asFilesList[i]))
|
||||
break;
|
||||
//files dei dati standard! solo in caso di nuova installazione!!
|
||||
if (asFilesList[i].Lower().Find("\\dati\\") > 0)
|
||||
{
|
||||
@ -2428,16 +2450,8 @@ void CampoSetup::OnTimer(wxTimerEvent& WXUNUSED(e))
|
||||
CreateAutostartMode(iSrvAutostartMode, strPrgLocPath);
|
||||
}
|
||||
|
||||
//creazione dell'icona sul desktop
|
||||
const wxFileName strExe(strPrgLocPath, wxT("ba0.exe"));
|
||||
const bool bDesktopShortcut = pWizard->GetDesktopShortcut();
|
||||
if (bDesktopShortcut)
|
||||
CreateIcon(CSIDL_COMMON_DESKTOPDIRECTORY, strExe);
|
||||
|
||||
|
||||
// 2) procede poi al caricamento delle patch eventuali di sistema all'interno della dir 'program'
|
||||
//copia del contenuto della cartella campo nella cartella di destinazione (installaz/aggiornam)
|
||||
//per prima cosa cerca la cartella dei files sorgente...
|
||||
UnzipSystem(strPrgLocPath);
|
||||
|
||||
|
||||
@ -2445,6 +2459,12 @@ void CampoSetup::OnTimer(wxTimerEvent& WXUNUSED(e))
|
||||
|
||||
// 4) lanciare ba1.exe -6 in uscita (non va qui! e' solo per ricordarsi di farlo!)
|
||||
|
||||
//creazione dell'icona sul desktop
|
||||
const wxFileName strExe(strPrgLocPath, wxT("ba0.exe"));
|
||||
const bool bDesktopShortcut = pWizard->GetDesktopShortcut();
|
||||
if (bDesktopShortcut)
|
||||
CreateIcon(CSIDL_COMMON_DESKTOPDIRECTORY, strExe);
|
||||
|
||||
// 1) terminato il tutto scrive/aggiorna/lascia stare il campo.stp
|
||||
if (bNewInstallation)
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user