Patch level :10.0 210 (nuovo CD)

Files correlati     :
Ricompilazione Demo : [ ]
Commento            :modifiche per utilizzare il multiproduttore con la stessa immagine CD


git-svn-id: svn://10.65.10.50/trunk@18006 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca 2009-01-12 15:24:09 +00:00
parent fa2a06601c
commit 4412a81dec
3 changed files with 53 additions and 8 deletions

View File

@ -764,6 +764,9 @@ TConfig::TConfig(int which_config, const char* paragraph)
case CONFIG_INSTALL:
_file = CGetCampoIni();
break;
case CONFIG_OEM:
_file = "setup/oem.ini";
break;
default:
NFCHECK("Chi usa questo strano .ini?");
break;

View File

@ -26,6 +26,8 @@ class TConfig;
#define CONFIG_GUI 7
// file parametri workstation
#define CONFIG_WST 8
// file parametri OEM (setup/oem.ini)
#define CONFIG_OEM 9
// Callback per for_each_paragraph
typedef int (*CONFIG_CALLBACK)(TConfig& cfg, void* jolly);

View File

@ -158,14 +158,38 @@ const TString& TDongle::administrator(TString* pwd) const
{
TString& admin = (TString&)_admin; // Sorry
TString& admpwd = (TString&)_admpwd; // Sorry
TConfig ini("install.ini", "Main");
admin = ini.get("Administrator");
//nuovo metodo di rilevamento administrator (dalla 10.0 in avanti); l'admin sta nel file oem.ini sotto la cartella
//setup, sia nel CD che soprattutto nel programma installato
int oem = -1;
if (oem < 0)
{
TConfig ini(CONFIG_OEM, "MAIN");
oem = ini.get_int("OEM", NULL, -1, -1);
if (oem >= 0)
{
TString8 para; para << "OEM_" << oem;
admin = ini.get("Administrator", para);
admpwd = ini.get("Password", para);
}
}
//vecchio metodo di rilevamento dell'admin e della sua password: sta in install.ini
//administrator
if (oem < 0)
{
TConfig ini("install.ini", "Main");
admin = ini.get("Administrator");
admpwd = ini.get("Password");
}
if (admin.blank())
admin = "ADMIN";
else
admin = ::decode(_admin);
admpwd = ini.get("Password");
if (admpwd.empty())
//password
if (admpwd.blank())
{
admpwd = admin;
admpwd.lower();
@ -661,9 +685,25 @@ const TString& TDongle::reseller() const
if (_reseller.blank())
{
TString& firm = (TString&)_reseller; // Sorry
TConfig ini("install.ini", "Main");
firm = ini.get("Producer");
//nuovo metodo di rilevamento producer (dalla 10.0 in avanti); il producer sta nel file oem.ini sotto la cartella
//setup, sia nel CD che soprattutto nel programma installato
int oem = -1;
if (oem < 0)
{
TConfig ini(CONFIG_OEM, "MAIN");
oem = ini.get_int("OEM", NULL, -1, -1);
if (oem >= 0)
{
TString8 para; para << "OEM_" << oem;
firm = ini.get("Name", para);
}
}
if (firm.blank()) //vecchio metodo di rilevamento del producer: sta in install.ini
{
TConfig ini("install.ini", "Main");
firm = ini.get("Producer");
}
if (firm.full())
{
const char* p = decode(firm);
@ -686,7 +726,7 @@ const TString& TDongle::reseller() const
}
if (firm.blank())
firm = "Campo";
firm = "Campo Enterprise";
}
return _reseller;