From f303d5be711f5d0880348dee8b9a8648ddc35f0e Mon Sep 17 00:00:00 2001 From: guy Date: Tue, 10 Jul 2012 13:49:07 +0000 Subject: [PATCH] Migliorato supporto per installazione per postazione server. Ora non propone erroneamente una installazione server su Windows 7/8 git-svn-id: svn://10.65.10.50/branches/R_10_00@22696 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- setup/Setup.cpp | 2 -- setup/dninst.txt | 5 ++++- setup/wizard.cpp | 35 +++++++++++++++++++++-------------- 3 files changed, 25 insertions(+), 17 deletions(-) diff --git a/setup/Setup.cpp b/setup/Setup.cpp index 87933b4b8..52f35cb69 100755 --- a/setup/Setup.cpp +++ b/setup/Setup.cpp @@ -1287,9 +1287,7 @@ void CampoSetup::NormalSetup() { const LurchMode iSrvAutostartMode = m_pWizard->GetSrvAutostartMode(); if (iSrvAutostartMode != lm_none) - { CreateAutostartMode(iSrvAutostartMode, strPrgLocPath); - } } diff --git a/setup/dninst.txt b/setup/dninst.txt index 1a55884cc..f01a31d22 100755 --- a/setup/dninst.txt +++ b/setup/dninst.txt @@ -1845,7 +1845,6 @@ OEM=8 [8266] Owner=D.B.Service srl unipersonale OEM=0 -ps0920 -*=31-12-3000 [8274] Owner=DOPPIO ZERO S.R.L OEM=1 @@ -1938,6 +1937,7 @@ OEM=1 [8352] ps0398 -0=31-12-3000 Owner=Gianni Ferrari +ve2 -7=31-12-3000 po=31-03-2012 OEM=0 [8355] @@ -3384,6 +3384,9 @@ OEM=1 [9009] Owner=CO.MA.RI. OEM=1 +[9013] +Owner=Anival +OEM=1 [9014] Owner=Transervice Europe OEM=1 diff --git a/setup/wizard.cpp b/setup/wizard.cpp index 182426075..8362f59e8 100755 --- a/setup/wizard.cpp +++ b/setup/wizard.cpp @@ -985,7 +985,7 @@ CampoWizardPage5::CampoWizardPage5(wxWizard* parent) : CampoWizardPage(parent) strBody += wxT("I client possono essere installati solo dopo l'installazione del server!

"); //sistema multissesione remoto (win2003srv etc.) - if (nVersion >= W2003) + if (nVersion == W2003 || nVersion == W2008) { strBody += wxT("

"); strBody += wxT("

E' stata rilevata una versione di Windows che consente sessioni remote (es. Windows 2008 Server)

"); @@ -1003,13 +1003,10 @@ CampoWizardPage5::CampoWizardPage5(wxWizard* parent) : CampoWizardPage(parent) asInstType.Add("Server"); asInstType.Add("Client"); - int nDefault = nVersion < W2003 ? 0 : 1; - m_pRadioBox = new wxRadioBox(this, 501, "Selezionare il tipo di installazione", wxDefaultPosition, wxDefaultSize, asInstType, 0, wxRA_SPECIFY_ROWS); //setta il default a Standard - m_pRadioBox->SetSelection(nDefault); GetSizer()->Add(m_pRadioBox); } @@ -1127,6 +1124,7 @@ class CampoWizardPage7 : public CampoWizardPage protected: DECLARE_EVENT_TABLE(); virtual bool ForwardValidate(); + virtual bool TransferDataToWindow(); void OnDirPick(wxCommandEvent& e); void OnSrvClick(wxCommandEvent& e); @@ -1157,15 +1155,29 @@ void CampoWizardPage7::OnDirPick(wxCommandEvent& e) void CampoWizardPage7::OnSrvClick(wxCommandEvent& e) { //nome del server - wxWindow* pWnd = FindWindowById(e.GetId() + 1); + wxWindow* pWnd = FindControlById(e.GetId() + 1); if (pWnd) pWnd->Enable(e.IsChecked()); //tipo installazione server - pWnd = FindWindowById(709); + pWnd = FindControlById(709); if (pWnd) pWnd->Enable(GetBool(705) || GetBool(707)); } +bool CampoWizardPage7::TransferDataToWindow() +{ + wxWindow* pServer = FindControlById(705); + if (pServer) + { + const unsigned int dt = GetWizard().GetDongleType(); + const bool bEnabled = dt == 1 || dt == 2; + pServer->Enable(bEnabled); + if (!bEnabled) + Set(705, false); + } + return true; +} + bool CampoWizardPage7::ForwardValidate() { //controllo esistenza directory vuota per i programmi in locale @@ -1211,7 +1223,7 @@ bool CampoWizardPage7::ForwardValidate() //..e loro modalita' di esecuzione if (bInstAuth || bInstDict) { - int nType = m_pRadioBox->GetSelection() + 1; //+1 perchè 0 corrisponde a lm_none + const int nType = m_pRadioBox->GetSelection() + 1; //+1 perchè 0 corrisponde a lm_none GetWizard().SetSrvAutostartMode((LurchMode)nType); } else @@ -1247,7 +1259,7 @@ CampoWizardPage7::CampoWizardPage7(wxWizard* parent) : CampoWizardPage(parent) strBody += wxT("Nel menu esecuzione automatica: i programmi di gestione vengono eseguiti automaticamente al primo accesso di un utente al server di PRODUCT; usare questa modalita' solo nell'impossibilita' di utilizzare la precedente

"); //se si ha un sistema multissesione remota (es. win2003srv ecc.) - if (nVersion >= W2003) + if (nVersion == W2003 || nVersion == W2008) { strTitle = wxT("Installazione di tipo Terminal Server"); strBody += wxT("

E' stata rilevata una versione di Windows che consente sessioni remote (es. Windows 2008 Server) ed è quindi possibile una installazione di questo tipo

"); @@ -1297,11 +1309,6 @@ CampoWizardPage7::CampoWizardPage7(wxWizard* parent) : CampoWizardPage(parent) //terza riga della griglia //check installa authoriz wxCheckBox* chAuthoriz = new wxCheckBox(this, 705, wxT("Installa il gestore delle autorizzazioni")); - //e' obbligatorio installare authoriz in caso di terminal server! - if (nVersion >= W2003) - chAuthoriz->SetValue(true); - else - chAuthoriz->SetValue(false); gbsSizer->Add(chAuthoriz, wxGBPosition(2, 1)); //server authoriz @@ -1322,7 +1329,7 @@ CampoWizardPage7::CampoWizardPage7(wxWizard* parent) : CampoWizardPage(parent) //quinta riga della griglia //radiobutton con i tipi di installazione wxArrayString asInstType; - if (nVersion >= W2003) + if (nVersion == W2003 || nVersion == W2008) { asInstType.Add("Come servizi (obbligatorio)"); }