Patch level :4.0 618

Files correlati     :
Ricompilazione Demo : [ ]
Commento            :riportate modifiche ad installatore e gestore password dalla 3.1 in modo da non fare impazzire l'installazione moduli e il povero utente che si trovava ogni tanto il nome utente a faccine e puntini!


git-svn-id: svn://10.65.10.50/trunk@14897 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca 2007-02-12 11:19:12 +00:00
parent a1b613032e
commit 0c652e0c9f
2 changed files with 19 additions and 11 deletions

View File

@ -947,8 +947,7 @@ void TMenu_application::reload_images()
const TString& TMenu_application::ask_user_password()
{
TString& utente = get_tmp_string();
utente = user();
TString utente = user();
#ifndef _DEMO_
// Disabilita le voci di personalizzazione
@ -1068,7 +1067,7 @@ const TString& TMenu_application::ask_user_password()
enable_menu_item(MENU_ITEM(mi));
#endif
return utente;
return get_tmp_string() = utente;
}
bool TMenu_application::check_user()

View File

@ -128,13 +128,10 @@ protected:
public:
bool installed() const { return _installed;}
bool sys_installed() const { return _sys_installed;}
bool modules_pending() const { return _modules_pending;}
bool modules_pending() const { return _modules_pending && sys_installed();}
bool autoload();
bool install(const TString& module, int patch);
bool run_ba0close() const
{ return (_reboot_program & NEW_SYS) != 0; }
bool run_conversion() const
{ return installed() && !sys_installed() && (_reboot_program & NEW_TRR) != 0; }
@ -364,11 +361,15 @@ bool TInstaller_mask::autoload()
force_update();
TString_array modules;
TString producer;
//cerca sull'install.ini di origine se lo trova (ininame e' il path dell'install.ini remoto)
if (ininame.exist())
{
// Presente il file ini generale "install.ini" (moduli;immagine cd)
TInstall_ini ini(ininame);
//prende il producer dall'install.ini di origine installazione...non si sa mai che sia cambiato..
producer = ini.get("Producer", "Main");
ini.list_paragraphs(modules); //riempie modules con la lista dei paragrafi sul .ini ***
FOR_EACH_ARRAY_ROW(modules, i, row)
@ -383,6 +384,8 @@ bool TInstaller_mask::autoload()
TFilename mod_ini = ininame.path();
mod_ini.add(module);
mod_ini << "inst.ini";
//controlla se esiste il pacco zippato del modulo attraverso l'esistenza del file..
//..XXinst.ini
if (mod_ini.exist())
{
TInstall_ini moduleini(mod_ini);
@ -451,8 +454,13 @@ bool TInstaller_mask::autoload()
{ //modulo e via via gli altri)
TInstall_ini installini;
TString_array paragrafi;
installini.list_paragraphs(paragrafi);
TFilename file;
installini.list_paragraphs(paragrafi);
//settaggio del produttore sull'install.ini locale nel caso sia cambiato..
//..ovvero ad ogni nuova versione prassi..no partners..cioe' doubleone..volevo dire sirio..
//const TString& local_producer = installini.get("Producer", "Main");
installini.set("Producer", (const char*)producer, "Main");
FOR_EACH_ARRAY_ROW(modules, am, arow)
{
file = *arow;
@ -827,7 +835,7 @@ bool TInstaller_mask::install(const TString& module, int patchlevel)
chunk.add(module);
if (patchlevel > 0)
{
TString8 name;
TString16 name;
name.format("%04da", patchlevel);
chunk << name;
}
@ -1335,6 +1343,7 @@ TInstaller_mask::TInstaller_mask()
{
_curr_mask = this;
_installed = false;
_sys_installed = false;
_reboot_program= NONE;
add_string(F_PATH, 0, PR("Installa da "), 1, 1, 80, "", 60);
@ -1515,7 +1524,7 @@ void TExtendedInstaller::main_loop()
}
TExternal_app ba0close("ba0close.exe");
ba0close.run(true,true,true); // run asynchronous...
ba0close.run(true,true,false); // run asynchronous and not iconized!
}
int ba1700(int argc, char* argv[])