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() const TString& TMenu_application::ask_user_password()
{ {
TString& utente = get_tmp_string(); TString utente = user();
utente = user();
#ifndef _DEMO_ #ifndef _DEMO_
// Disabilita le voci di personalizzazione // Disabilita le voci di personalizzazione
@ -1068,7 +1067,7 @@ const TString& TMenu_application::ask_user_password()
enable_menu_item(MENU_ITEM(mi)); enable_menu_item(MENU_ITEM(mi));
#endif #endif
return utente; return get_tmp_string() = utente;
} }
bool TMenu_application::check_user() bool TMenu_application::check_user()

View File

@ -128,13 +128,10 @@ protected:
public: public:
bool installed() const { return _installed;} bool installed() const { return _installed;}
bool sys_installed() const { return _sys_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 autoload();
bool install(const TString& module, int patch); bool install(const TString& module, int patch);
bool run_ba0close() const
{ return (_reboot_program & NEW_SYS) != 0; }
bool run_conversion() const bool run_conversion() const
{ return installed() && !sys_installed() && (_reboot_program & NEW_TRR) != 0; } { return installed() && !sys_installed() && (_reboot_program & NEW_TRR) != 0; }
@ -364,11 +361,15 @@ bool TInstaller_mask::autoload()
force_update(); force_update();
TString_array modules; 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()) if (ininame.exist())
{ {
// Presente il file ini generale "install.ini" (moduli;immagine cd) // Presente il file ini generale "install.ini" (moduli;immagine cd)
TInstall_ini ini(ininame); 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 *** ini.list_paragraphs(modules); //riempie modules con la lista dei paragrafi sul .ini ***
FOR_EACH_ARRAY_ROW(modules, i, row) FOR_EACH_ARRAY_ROW(modules, i, row)
@ -383,6 +384,8 @@ bool TInstaller_mask::autoload()
TFilename mod_ini = ininame.path(); TFilename mod_ini = ininame.path();
mod_ini.add(module); mod_ini.add(module);
mod_ini << "inst.ini"; mod_ini << "inst.ini";
//controlla se esiste il pacco zippato del modulo attraverso l'esistenza del file..
//..XXinst.ini
if (mod_ini.exist()) if (mod_ini.exist())
{ {
TInstall_ini moduleini(mod_ini); TInstall_ini moduleini(mod_ini);
@ -451,8 +454,13 @@ bool TInstaller_mask::autoload()
{ //modulo e via via gli altri) { //modulo e via via gli altri)
TInstall_ini installini; TInstall_ini installini;
TString_array paragrafi; TString_array paragrafi;
installini.list_paragraphs(paragrafi);
TFilename file; 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) FOR_EACH_ARRAY_ROW(modules, am, arow)
{ {
file = *arow; file = *arow;
@ -827,7 +835,7 @@ bool TInstaller_mask::install(const TString& module, int patchlevel)
chunk.add(module); chunk.add(module);
if (patchlevel > 0) if (patchlevel > 0)
{ {
TString8 name; TString16 name;
name.format("%04da", patchlevel); name.format("%04da", patchlevel);
chunk << name; chunk << name;
} }
@ -1335,6 +1343,7 @@ TInstaller_mask::TInstaller_mask()
{ {
_curr_mask = this; _curr_mask = this;
_installed = false; _installed = false;
_sys_installed = false;
_reboot_program= NONE; _reboot_program= NONE;
add_string(F_PATH, 0, PR("Installa da "), 1, 1, 80, "", 60); 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"); 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[]) int ba1700(int argc, char* argv[])