Patch level :03.063

Files correlati     :
Ricompilazione Demo : [ ]
Commento            : suddivisione del support di installazione su dischetti
		tradotti i messaggi in inglese a Diaslogasktext
		corretta la cancellazione della winsock.dll :sse
		si rileva la presenza del TCP-IP;
		aggiunti messaggi di prompt in caso di mancanza di TCP
		che inibiscono l'installazione del server di chiavi
		e dell'uso del server di chiavi


git-svn-id: svn://10.65.10.50/trunk@6770 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
augusto 1998-06-19 15:12:50 +00:00
parent 31b2527133
commit 9591797601
9 changed files with 480 additions and 185 deletions

Binary file not shown.

Binary file not shown.

View File

@ -14,6 +14,7 @@ declare
NUMBER nSystemFileModified; NUMBER nSystemFileModified;
// szAppPath e' la directory dove la applicazione verra' installata // szAppPath e' la directory dove la applicazione verra' installata
STRING szAppPath[ _MAX_LENGTH ]; STRING szAppPath[ _MAX_LENGTH ];
STRING szConfigPath[ _MAX_LENGTH ];
// szDataPath e' la directory dove risiederanno i dati // szDataPath e' la directory dove risiederanno i dati
STRING szDataPath[ _MAX_LENGTH ]; STRING szDataPath[ _MAX_LENGTH ];
// nome della macchina server delle chiavi // nome della macchina server delle chiavi
@ -31,6 +32,9 @@ declare
STRING szGroupName[ _MAX_LENGTH]; STRING szGroupName[ _MAX_LENGTH];
STRING szOSName; STRING szOSName;
BOOL bSCREENSAVER; BOOL bSCREENSAVER;
// 29 maggio 1998: cancella Winsock.dll dal direttorio di installazione
// poiche' tale dll vale solo per Windows 3.11
BOOL bIsWin95;
#define STR_ERR_DLG "Errore di sistema. Impossibile visualizzare una finestra di dialogo." #define STR_ERR_DLG "Errore di sistema. Impossibile visualizzare una finestra di dialogo."
#define STR_ERR_STRING "Errore di sistema. Impossibile ultimare l'installazione.\n\nRimuovere la causa dell'errore e ripetere l'installazione." #define STR_ERR_STRING "Errore di sistema. Impossibile ultimare l'installazione.\n\nRimuovere la causa dell'errore e ripetere l'installazione."
@ -38,8 +42,8 @@ declare
// #define STR_ERR_DLG "Errore di sistema. Impossibile visualizzare una finestra di dialogo." // #define STR_ERR_DLG "Errore di sistema. Impossibile visualizzare una finestra di dialogo."
#define STR_INVALID_PATH "Il percorso indicato non e' valido.\nIndicare un altro percorso.\n" #define STR_INVALID_PATH "Il percorso indicato non e' valido.\nIndicare un altro percorso.\n"
#define STR_TEXT1 "I programmi PR.A.S.S.I. verranno installati nella directory :" #define STR_TEXT1 "I programmi di EuroCAMPO verranno installati nella directory :"
#define STR_TEXTSER1 "I programmi PR.A.S.S.I. sono installati nella directory :" #define STR_TEXTSER1 "I programmi di EuroCAMPO sono installati nella directory :"
#define STR_DATATEXT1 "I dati verranno installati nella directory :" #define STR_DATATEXT1 "I dati verranno installati nella directory :"
#define STR_ENT_DISK "Inserire il disco " #define STR_ENT_DISK "Inserire il disco "
#define STR_TAGDISK1 "BA" #define STR_TAGDISK1 "BA"
@ -83,8 +87,8 @@ declare
#define ZIP_DIRECTORY "ZIP" #define ZIP_DIRECTORY "ZIP"
#define ZIPDEMO_DIRECTORY "ZIPDEMO" #define ZIPDEMO_DIRECTORY "ZIPDEMO"
#define DEFAULT_LOCALPATH "C:\\PRASSI" #define DEFAULT_LOCALPATH "C:\\easy"
#define DEFAULT_NETPATH "F:\\PRASSI" #define DEFAULT_NETPATH "F:\\easy"
#define SELECTFOLDER_DIALOG 12008 #define SELECTFOLDER_DIALOG 12008
// Prototipo delle funzioni // Prototipo delle funzioni
@ -110,11 +114,12 @@ prototype _ChooseDongleServer(BYREF NUMBER);
prototype _ChiediDestDongleServer(BYREF NUMBER); prototype _ChiediDestDongleServer(BYREF NUMBER);
prototype _InstallDongleServer(BYREF NUMBER); prototype _InstallDongleServer(BYREF NUMBER);
prototype _WhereIsDongleServer(BYREF NUMBER); prototype _WhereIsDongleServer(BYREF NUMBER);
prototype _ChiediPrgSuRete(BYREF NUMBER );
prototype _ConfirmInstallation(BYREF NUMBER );
// first level // first level
prototype _ExitOnConfirm( ); prototype _ExitOnConfirm( );
prototype _PerformSet(STRING); prototype _PerformSet(STRING);
prototype _TrovaPrgSuRete( );
prototype _DeleteFilesMinima(); prototype _DeleteFilesMinima();
prototype _InstallaFilesMinima(); prototype _InstallaFilesMinima();
prototype _UpdateRegistry( ); prototype _UpdateRegistry( );
@ -128,7 +133,7 @@ prototype _CambiaDirectory( );
prototype _CreateDLG( STRING, INT, LONG ); prototype _CreateDLG( STRING, INT, LONG );
prototype _FineInstallazione( ); prototype _FineInstallazione( );
prototype _RemoveHDLOCK( ); prototype _RemoveUnusedFiles( );
prototype _UpdateSysFiles( ); prototype _UpdateSysFiles( );
prototype _SetPathpref(); prototype _SetPathpref();
@ -149,6 +154,7 @@ prototype _Verifica( STRING );
prototype _Errore( STRING ); prototype _Errore( STRING );
prototype _Attenzione( STRING ); prototype _Attenzione( STRING );
prototype _DeSlash( STRING, BYREF STRING ); prototype _DeSlash( STRING, BYREF STRING );
prototype _TCPIPPresent( );
prototype _GetOSName( ); prototype _GetOSName( );
prototype _DisattivaScreenSaver( ); prototype _DisattivaScreenSaver( );
prototype _RiattivaScreenSaver( ); prototype _RiattivaScreenSaver( );
@ -159,6 +165,7 @@ prototype _SettaModelessDialog( STRING );
prototype _NascondiModelessDialog( ); prototype _NascondiModelessDialog( );
prototype _RichiediMemoria( NUMBER ); prototype _RichiediMemoria( NUMBER );
prototype _NToStringKB( NUMBER, BYREF STRING ); prototype _NToStringKB( NUMBER, BYREF STRING );
prototype _ShowInfoList(STRING,STRING,LIST );
/* /*
prototype _InstallaFiles( ); prototype _InstallaFiles( );

View File

@ -1,11 +1,21 @@
1; 1;
sys.z 2;
winsys.z
winsyscg.z
bademo.z
ba.z
std.z
com.z
cm770.z
datidemo.z datidemo.z
datiditt.z
3;
datiauto.z datiauto.z
datiditt.z
4;
WINsys.Z
WINsysCG.Z
sys.z
5;
sys.z
6;
sys.z
7;
BA.z
8;
BADEMO.z
9;
BA.z

View File

@ -1,11 +1,13 @@
// File principale della installazione EASY CAMPO // File principale della installazione EuroCAMPO
declare declare
// Windows API
#include "WINSUB.H"
// #include "sddialog.h"
// Dichiarazioni di costanti per questo script // Dichiarazioni di costanti per questo script
#include "DECLARE.RUL" #include "DECLARE.RUL"
// Windows API
#include "WINSUB.H"
// File di include con gli ID dei dialog usati in questo script // File di include con gli ID dei dialog usati in questo script
#include "PRADIAGS.H" #include "PRADIAGS.H"
NUMBER nHandle; NUMBER nHandle;
NUMBER nTerminatedConv, nResult; NUMBER nTerminatedConv, nResult;
STRING szSXTR1,szSXTR2, szDoMnu, szText, szModifiedPath, szBaCnv; STRING szSXTR1,szSXTR2, szDoMnu, szText, szModifiedPath, szBaCnv;
@ -18,6 +20,7 @@ declare
//---------------------------------- //----------------------------------
NUMBER nDirection; NUMBER nDirection;
program program
@ -31,11 +34,11 @@ Step_start:
_ProgramPrologue(); _ProgramPrologue();
#define SPACE_REQUIRED 3000 // Disk space in bytes. #define SPACE_REQUIRED 3000 // Disk space in bytes.
#define APP_NAME "EasyCAMPO" #define APP_NAME "EuroCAMPO"
#define PROGRAM_FOLDER_NAME "PRASSI" #define PROGRAM_FOLDER_NAME "EuroCAMPO"
#define APPBASE_PATH "\\" #define APPBASE_PATH "\\"
#define COMPANY_NAME "A.G.A. Informatica" #define COMPANY_NAME "A.G.A. Informatica srl"
#define PRODUCT_NAME "Easy Campo" #define PRODUCT_NAME "Euro Campo"
#define PRODUCT_VERSION "1.0 beta" #define PRODUCT_VERSION "1.0 beta"
#define DEINSTALL_KEY "SampleDeinstKey" #define DEINSTALL_KEY "SampleDeinstKey"
#define PRODUCT_KEY "ba0.exe" #define PRODUCT_KEY "ba0.exe"
@ -54,17 +57,14 @@ Step_welcome:
Welcome( "", 0 ); Welcome( "", 0 );
Enable( BACKBUTTON ); Enable( BACKBUTTON );
_CopiaINSTALLINI();
Step_chooseinst: Step_chooseinst:
// sceglie cosa installare // sceglie cosa installare
_SelectInstall(nDirection); _SelectInstall(nDirection);
if (nDirection=BACK) then if (nDirection=BACK) then
goto Step_welcome; goto Step_welcome;
endif ; endif ;
if nDirection=NEXT then
if bInstallNetWrk then
goto Step_installnet;
endif;
endif;
Step_choosewhere: Step_choosewhere:
_ChiediDestinazione(nDirection); _ChiediDestinazione(nDirection);
@ -78,22 +78,29 @@ Step_choosecomp:
goto Step_choosewhere; goto Step_choosewhere;
endif; endif;
Step_choosewhereD: Step_netprg:
_ChiediDestDati(nDirection); _ChiediPrgSuRete(nDirection);
if nDirection=BACK then if (nDirection =BACK) then
goto Step_choosecomp; goto Step_choosecomp;
endif; endif;
Step_choosedata: Step_choosedata:
_SelectDataType(nDirection); _SelectDataType(nDirection);
if nDirection=BACK then if nDirection=BACK then
goto Step_choosewhereD; goto Step_netprg;
endif; endif;
Step_choosewhereD:
_ChiediDestDati(nDirection);
if nDirection=BACK then
goto Step_choosedata;
endif;
Step_chooseDongleServer: Step_chooseDongleServer:
_ChooseDongleServer(nDirection); _ChooseDongleServer(nDirection);
if nDirection=BACK then if nDirection=BACK then
goto Step_choosedata; goto Step_choosewhereD;
endif; endif;
Step_whereDongleServer: Step_whereDongleServer:
@ -103,16 +110,25 @@ Step_whereDongleServer:
goto Step_chooseDongleServer; goto Step_chooseDongleServer;
endif; endif;
Step_fromnet: if nDirection=NEXT then
_SettaFlagNet(nDirection); if bInstallNetWrk then
if nDirection=BACK then goto Step_installnet;
goto Step_whereDongleServer; endif;
endif; endif;
// ***********************************
// * local installation
Step_newORupdate: Step_newORupdate:
_AddOrOverwrite(nDirection); _AddOrOverwrite(nDirection);
if nDirection=BACK then if nDirection=BACK then
goto Step_fromnet; goto Step_whereDongleServer;
endif;
Step_confirm1:
_ConfirmInstallation(nDirection);
if nDirection=BACK then
goto Step_newORupdate;
endif; endif;
Step_installData: Step_installData:
@ -148,19 +164,34 @@ Step_purchase:
_ProgramEpilogue(); _ProgramEpilogue();
exit; exit;
// ***********************************
// * network installation
Step_installnet: Step_installnet:
_ConfirmInstallation(nDirection);
if nDirection=BACK then
goto Step_whereDongleServer;
endif;
nStep_installData:
_InstallazioneDati(nDirection);
if (nDirection=BACK) then
goto Step_whereDongleServer;
endif;
Step_installwrkst:
_NewNetWorkPlace(nDirection); _NewNetWorkPlace(nDirection);
if (nDirection=BACK) then if (nDirection=BACK) then
goto Step_chooseinst; goto Step_whereDongleServer;
endif; endif;
_ProgramEpilogue(); _ProgramEpilogue();
exit; exit;
#include "winsub.rul"
#include "setup1.rul" #include "setup1.rul"
#include "setup2.rul" #include "setup2.rul"
#include "setup3.rul" #include "setup3.rul"
#include "setup4.rul" #include "setup4.rul"
#include "winsub.rul"
// #include "sddialog.rul"

View File

@ -3,19 +3,37 @@
// **** (programmi o postazione di rete) // **** (programmi o postazione di rete)
function _SelectInstall(nRetv ) function _SelectInstall(nRetv )
STRING szMsg[512]; STRING szMsg[512];
BOOL zInstallEnv, zInstallDemo, zInstallNetWrk;
begin begin
zInstallEnv= bInstallEnv;
zInstallDemo=bInstallDemo;
zInstallNetWrk=bInstallNetWrk;
szMsg = "Setup puo' essere utilizzato per installare "; szMsg = "Setup puo' essere utilizzato per installare ";
szMsg=szMsg + "EasyCampo in versione normale o demo, oppure per installare "; szMsg=szMsg + "EuroCampo in versione normale o demo, oppure ";
szMsg=szMsg + "una postazione di lavoro che sfrutta una precedente intallazione su disco di rete"; szMsg=szMsg + "una postazione di lavoro che sfrutta una precedente intallazione su disco di rete";
nRetv = AskOptions(EXCLUSIVE,szMsg, nRetv = AskOptions(EXCLUSIVE,szMsg,
"&Installazione EasyCAMPO", "&Installazione EuroCAMPO",
bInstallEnv, bInstallEnv,
"Installazione EasyCAMPO &Demo", "Installazione EuroCAMPO &Demo",
bInstallDemo, bInstallDemo,
"Installazione nuova postazione di lavoro in &rete", "Installazione nuova postazione di lavoro in &rete",
bInstallNetWrk bInstallNetWrk
); );
if (( zInstallDemo!=bInstallDemo) || (zInstallNetWrk!=bInstallNetWrk) ) then
// something changed ...
if bInstallDemo then
bInstallPrg = TRUE;
bInstallData=TRUE;
bInstallDemoData=TRUE;
elseif bInstallNetWrk then
bInstallPrg = FALSE;
bInstallData= FALSE;
bInstallDemoData=FALSE;
else
bInstallPrg = TRUE;
endif;
endif;
end; end;
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
@ -25,22 +43,31 @@ function _SelectComponents(nRetv)
BOOL bJunk; BOOL bJunk;
STRING szMsg[512]; STRING szMsg[512];
begin begin
if bInstallDemo then
bInstallPrg = TRUE;
bInstallData = TRUE;
bInstallDemoData=TRUE;
return;
endif;
repeat repeat
if szOSName = "Windows" || bInstallDemo then if szOSName = "Windows" || bInstallDemo then
// Windows 3.XX platforms
if bInstallNetWrk then
szMsg= "Setup installerà la postazione di lavoro in rete.\nE' possibile installare anche l'area dati.";
nRetv = AskOptions(NONEXCLUSIVE,szMsg,
"Installa l'area dati", bInstallData
);
else
szMsg= "E' possibile installare i programmi (ambiente e moduli) oppure l'area dati. "; szMsg= "E' possibile installare i programmi (ambiente e moduli) oppure l'area dati. ";
szMsg=szMsg + "\nSelezionare almeno una delle componenti"; szMsg=szMsg + "\nSelezionare almeno una delle componenti";
nRetv = AskOptions(NONEXCLUSIVE,szMsg, nRetv = AskOptions(NONEXCLUSIVE,szMsg,
"Installa i programmi", bInstallPrg, "Installa i programmi", bInstallPrg,
"Installa l'area dati", bInstallData "Installa l'area dati", bInstallData
); );
bInstallDongleServer = FALSE; bInstallDongleServer = FALSE;
endif;
else else
// Windows 95 or NT platforms
if bInstallNetWrk then
szMsg= "Setup installerà la postazione di lavoro in rete.\nE' possibile installare anche l'area dati.";
nRetv = AskOptions(NONEXCLUSIVE,szMsg,
"Installa l'area dati", bInstallData
);
else
szMsg= "E' possibile installare i programmi (ambiente e moduli), l'area dati oppure il server di rete per le chiavi. "; szMsg= "E' possibile installare i programmi (ambiente e moduli), l'area dati oppure il server di rete per le chiavi. ";
szMsg=szMsg + "\nSelezionare almeno una delle componenti"; szMsg=szMsg + "\nSelezionare almeno una delle componenti";
nRetv = AskOptions(NONEXCLUSIVE,szMsg, nRetv = AskOptions(NONEXCLUSIVE,szMsg,
@ -48,8 +75,9 @@ begin
"Installa l'area dati", bInstallData , "Installa l'area dati", bInstallData ,
"Installa il server di chiavi", bInstallDongleServer "Installa il server di chiavi", bInstallDongleServer
); );
endif;
endif; endif;
until nRetv!=NEXT || bInstallData || bInstallPrg || bInstallDongleServer; until nRetv!=NEXT || bInstallData || bInstallPrg || bInstallNetWrk || bInstallDongleServer;
return ; return ;
end; end;
@ -97,43 +125,64 @@ begin
// ricontrolla la presenza di una installazione // ricontrolla la presenza di una installazione
// e determina la posizione della directory "DATI" // e determina la posizione della directory "DATI"
if szAppPath="" then if szConfigPath = "" then
szAppPath= "c:\prassi"; bNuovaInst = _FindExistingInst(szConfigPath);
bNuovaInst = _FindExistingInst(szAppPath); if szConfigPath = "" then
endif; bInstallData=TRUE;
nRetv=AskDestPath( "", "", szAppPath, 0 ); szConfigPath= DEFAULT_LOCALPATH;
if (nRetv=BACK) then if !ExistsDir(szConfigPath) then
return ; CreateDir(szConfigPath);
endif;
endif; endif;
bNuovaInst = ! _CheckExistingInst(szAppPath); endif;
szTmp = szAppPath ^ "PATHPREF.INI";
if ( ! Is( FILE_EXISTS, szTmp ) ) then nRetv=AskDestPath( "", "", szConfigPath, 0 );
szDataPath = szAppPath ^ "DATI\\"; if (nRetv=BACK) then
else return ;
OpenFileMode( FILE_MODE_NORMAL ); endif;
OpenFile( nTmp, szAppPath, "PATHPREF.INI"); bNuovaInst = ! _CheckExistingInst(szConfigPath);
if GetLine( nTmp, szTmp ) = 0 then
StrSub( szTmp2, szTmp, 1, 1 ); szTmp = szConfigPath ^ "Prawin.INI";
if ( szTmp2 = ":" ) then if ( Is( FILE_EXISTS, szTmp ) ) then
szDataPath = szTmp; GetProfString(szTmp, "Main", "Program",szAppPath );
else GetProfString(szTmp, "Main", "Study",szDataPath );
StrSub( szTmp2, szTmp, 0, 1 ); else
if ( szTmp2 = "." ) then szTmp = szConfigPath ^ "PATHPREF.INI";
if ( Is( FILE_EXISTS, szTmp ) ) then
// no prawin.ini but pathpref.ini
OpenFileMode( FILE_MODE_NORMAL );
OpenFile( nTmp, szConfigPath, "PATHPREF.INI");
if GetLine( nTmp, szTmp ) = 0 then
StrSub( szTmp2, szTmp, 1, 1 );
if ( szTmp2 = ":" ) then
szDataPath = szTmp; szDataPath = szTmp;
else else
if ( szTmp2 = "\\" ) then StrSub( szTmp2, szTmp, 0, 1 );
szDataPath = szTmp; if ( szTmp2 = "." ) then
szDataPath = szTmp;
else else
szDataPath = szAppPath ^ szTmp; if ( szTmp2 = "\\" ) then
szDataPath = szTmp;
else
szDataPath = szConfigPath ^ szTmp;
endif;
endif; endif;
endif; endif;
else
MessageBox( "Errore nel file PATHPREF.INI" ,SEVERE);
szDataPath = szConfigPath ^ "DATI\\";
endif; endif;
else CloseFile( nTmp );
MessageBox( "Errore nel file PATHPREF.INI" ,SEVERE); else
szDataPath = szAppPath ^ "DATI\\"; // no pathpref.ini nor prawin.ini
if !bInstallNetWrk then
szDataPath = szConfigPath ^ "DATI\\";
endif; endif;
CloseFile( nTmp );
endif; endif;
endif;
if !bInstallNetWrk then
szAppPath = szConfigPath;
endif;
return ; return ;
end; end;
@ -145,11 +194,11 @@ function _ChiediDestDati(nRetv)
begin begin
// ricontrolla la presenza di una installazione // ricontrolla la presenza di una installazione
// e determina la posizione della directory "DATI" // e determina la posizione della directory "DATI"
if bInstallData || bInstallPrg then if bInstallData || bInstallPrg || bInstallNetWrk then
if bInstallData then if bInstallData then
sMsg = "I dati verranno installati nel seguente direttorio."; sMsg = "Setup installerà l'area dati nel seguente direttorio.";
else else
sMsg = "I dati sono installati nel seguente direttorio."; sMsg = "Setup utilizzerà l'area dati che si trova nel seguente direttorio.";
endif; endif;
sMsg = sMsg + "\nE' possibile cambiare il direttorio digitando il nuovo nome o scegliendo il pulsante <Sfoglia>"; sMsg = sMsg + "\nE' possibile cambiare il direttorio digitando il nuovo nome o scegliendo il pulsante <Sfoglia>";
repeat repeat
@ -195,12 +244,12 @@ begin
bPurchase bPurchase
); );
else else
szMsg= "Si sta aggiornando una precedente installazione. Si desidera aggiornare i moduli gia' acquistati "; szMsg= "Si sta aggiornando una precedente installazione. Setup reinstallerà i programmi di ambiente. ";
szMsg=szMsg + "o acquistarne e abilitarne dei nuovi prima di installarli ?"; szMsg=szMsg + "Se si desidera anche acquistare e abilitare nuovi moduli o aggiornare quelli già acquistati selezionare le caselle sottostanti";
nRet = AskOptions(NONEXCLUSIVE,szMsg, nRet = AskOptions(NONEXCLUSIVE,szMsg,
"&Acquisto e abilitazione nuovi moduli", "&Acquisto e abilitazione nuovi moduli",
bPurchase, bPurchase,
"Installazione o aggiornamento nuovi &moduli", "Installazione o aggiornamento &moduli",
bInstallModules bInstallModules
); );
endif; endif;
@ -210,62 +259,62 @@ end;
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
// **** // ****
// **** // ****
function _TrovaPrgSuRete( ) function _ChiediPrgSuRete(nDirection )
STRING szText[ _MAX_LENGTH ], szModifiedPath[ _MAX_LENGTH ], szTemp[ _MAX_LENGTH ]; STRING szText[ _MAX_LENGTH ], szModifiedPath[ _MAX_LENGTH ], szTemp[ _MAX_LENGTH ];
NUMBER nHandle; NUMBER nHandle;
begin begin
szText = "E' stata scelta l'installazione di una postazione di lavoro."; if !bInstallNetWrk then
szText =szText + "\nInserire il nome del direttorio di rete che contiene l'installazione di EasyCAMPO"; return;
szAppPath = DEFAULT_NETPATH; endif;
szText = "L'installazione di una postazione di lavoro deve basarsi su una precedente installazione dei programmi su disco di rete.";
szText =szText + "\nInserire il percorso completo del direttorio di rete che contiene l'installazione di EuroCAMPO.";
if (szAppPath = "") then
szAppPath = DEFAULT_NETPATH;
endif;
while ( TRUE ) while ( TRUE )
if ( AskPath( szText , szAppPath, szModifiedPath ) = NEXT ) then nDirection = AskPath( szText , szAppPath, szModifiedPath );
if ( nDirection = NEXT ) then
if ( _CheckExistingInst(szModifiedPath) ) then if ( _CheckExistingInst(szModifiedPath) ) then
szAppPath = szModifiedPath; szAppPath = szModifiedPath;
szTmp = szAppPath ^ "PATHPREF.INI"; szTmp = szAppPath ^ "PATHPREF.INI";
if ( ! Is( FILE_EXISTS, szTmp ) ) then if ( ! Is( FILE_EXISTS, szTmp ) ) then
szDataPath = szAppPath ^ "DATI\\"; szModifiedPath = szAppPath ^ "DATI\\";
else else
OpenFileMode( FILE_MODE_NORMAL ); OpenFileMode( FILE_MODE_NORMAL );
OpenFile( nTmp, szAppPath, "PATHPREF.INI"); OpenFile( nTmp, szAppPath, "PATHPREF.INI");
if GetLine( nTmp, szTmp ) = 0 then if GetLine( nTmp, szTmp ) = 0 then
StrSub( szTmp2, szTmp, 1, 1 ); StrSub( szTmp2, szTmp, 1, 1 );
if ( szTmp2 = ":" ) then if ( szTmp2 = ":" ) then
szDataPath = szTmp; szModifiedPath = szTmp;
else else
StrSub( szTmp2, szTmp, 0, 1 ); StrSub( szTmp2, szTmp, 0, 1 );
if ( szTmp2 = "." ) then if ( szTmp2 = "." ) then
szDataPath = szTmp; szModifiedPath = szTmp;
else else
if ( szTmp2 = "\\" ) then if ( szTmp2 = "\\" ) then
szDataPath = szTmp; szModifiedPath = szTmp;
else else
szDataPath = szAppPath ^ szTmp; szModifiedPath = szAppPath ^ szTmp;
endif; endif;
endif; endif;
endif; endif;
else else
_Attenzione( "Errore nel file PATHPREF.INI" ); _Attenzione( "Errore nel file PATHPREF.INI" );
szDataPath = szAppPath ^ "DATI\\"; szModifiedPath = szAppPath ^ "DATI\\";
endif; endif;
CloseFile( nTmp ); CloseFile( nTmp );
endif; endif;
StrToUpper( szAppPath, szAppPath ); StrToUpper( szAppPath, szAppPath );
StrToUpper( szDataPath, szDataPath ); if szDataPath = "" then
StrToUpper(szDataPath ,szModifiedPath);
endif;
bProgrammiServer = TRUE; bProgrammiServer = TRUE;
szTemp = DEFAULT_LOCALPATH ^ "\\PREFIX.TXT"; return;
if ( ! Is( FILE_EXISTS, szTemp ) ) then
CreateDir( DEFAULT_LOCALPATH );
CreateFile( nHandle, DEFAULT_LOCALPATH, "PREFIX.TXT" );
WriteLine( nHandle, "COM" );
CloseFile( nHandle );
endif;
_UpdateRegistry( );
return NEXT;
else else
_Attenzione( "Impossibile trovare i programmi di EasyCAMPO in " + szModifiedPath ); _Attenzione( "Impossibile trovare i programmi di EuroCAMPO in " + szModifiedPath );
endif; endif;
else else
return BACK; return;
endif; endif;
endwhile; endwhile;
end; end;
@ -275,14 +324,13 @@ end;
function _NewNetWorkPlace(nDirection ) function _NewNetWorkPlace(nDirection )
STRING szText[ _MAX_LENGTH ]; STRING szText[ _MAX_LENGTH ];
NUMBER nGoOut, nRet, nResult, nDisk; NUMBER nGoOut, nRet, nResult, nDisk;
BOOL bRet; BOOL bInstWinCG;
begin begin
nDirection = _TrovaPrgSuRete(); bInstWinCG = _Verifica("Installare anche le librerie di CG ? ");
if (nDirection =BACK) then
return ;
endif;
bRet = _Verifica("Installare anche le librerie di CG ? "); SetColor(STATUSBAR,BLUE);
Enable(FEEDBACK_OPERATION);
Enable(STATUS);
FileSetBeginDefine ( "SYS"); FileSetBeginDefine ( "SYS");
SetColor(STATUSBAR,BLUE); SetColor(STATUSBAR,BLUE);
@ -295,30 +343,37 @@ begin
szText = STR_ERR_DECOMPRESS + " la libreria WINSYS."; szText = STR_ERR_DECOMPRESS + " la libreria WINSYS.";
_Errore( szText ); _Errore( szText );
endif; endif;
if (bRet) then if (bInstWinCG) then
if ( CompressGet( "WINSYSCG.Z", "*.*", INCLUDE_SUBDIR ) < 0) then if ( CompressGet( "WINSYSCG.Z", "*.*", INCLUDE_SUBDIR ) < 0) then
szText = STR_ERR_DECOMPRESS + " la libreria WINSYSCG."; szText = STR_ERR_DECOMPRESS + " la libreria WINSYSCG.";
_Errore( szText ); _Errore( szText );
endif; endif;
ChangeDirectory( szAppPath);
szText = szAppPath ^ "\\cgpostIN.EXE";
LaunchAppAndWait( szText , szAppPath, WAIT );
endif; endif;
FileSetEndDefine ( "SYS");
StatusUpdate( ON, 100 ); StatusUpdate( ON, 100 );
FileSetEndDefine ( "SYS");
ChangeDirectory( szAppPath);
repeat repeat
nRet=FileSetPerformEz ("SYS", nDisk ); nRet=FileSetPerformEz ("SYS", nDisk );
until nRet = FS_DONE; until nRet = FS_DONE;
Delay(1); Delay(1);
FileSetEndPerform ( "SYS" ); FileSetEndPerform ( "SYS" );
_UpdateSysFiles(); if (bInstWinCG) then
_SetPathpref(); ChangeDirectory( szConfigPath);
ChangeDirectory( szAppPath); szText = szAppPath ^ "\\cgpostIN.EXE";
_RemoveHDLOCK(); LaunchAppAndWait( szText , szAppPath, WAIT );
endif;
Disable( FEEDBACK_FULL ); Disable( FEEDBACK_FULL );
Disable(STATUS); Disable(STATUS);
_UpdateRegistry( );
_UpdateSysFiles();
_SetPathpref();
ChangeDirectory( szAppPath);
_RemoveUnusedFiles();
return ; return ;
end; end;
@ -377,22 +432,14 @@ begin
// ******** installa dati iniziali ditte // ******** installa dati iniziali ditte
elseif bInstallFirm then elseif bInstallFirm then
szTitle = "Installazione dati comuni e standard su " + szDataPath; szTitle = "Installazione dati comuni e standard su " + szDataPath;
SetStatusWindow( 0, szTitle );
FileSetBeginDefine ( "DATI"); FileSetBeginDefine ( "DATI");
if ( CompressGet( "STD.Z", "*.*", INCLUDE_SUBDIR ) < 0) then if ( CompressGet( "DATIDITT.Z", "*.*", INCLUDE_SUBDIR ) < 0) then
szText = STR_ERR_DECOMPRESS + " il modulo Dati standard."; szText = STR_ERR_DECOMPRESS + " il modulo Dati ditta.";
_Attenzione( szText ); _Attenzione( szText );
endif; endif;
if ( CompressGet( "COM.Z", "*.*", INCLUDE_SUBDIR ) < 0) then
szText = STR_ERR_DECOMPRESS + " il modulo Dati comuni.";
_Attenzione( szText );
endif;
if ( CompressGet( "CM770.Z", "*.*", INCLUDE_SUBDIR ) < 0) then
szText = STR_ERR_DECOMPRESS + " il modulo Dati comuni (M770).";
_Attenzione( szText );
endif;
FileSetEndDefine ( "DATI");
FileSetEndDefine ( "DATI");
SetStatusWindow( 0, szTitle );
StatusUpdate( ON, 100 ); StatusUpdate( ON, 100 );
_PerformSet ( "DATI"); _PerformSet ( "DATI");
endif; endif;
@ -441,7 +488,7 @@ begin
_CopiaINSTALLINI( ); _CopiaINSTALLINI( );
_CopiaRESETHL( ); _CopiaRESETHL( );
_RemoveHDLOCK( ); _RemoveUnusedFiles( );
_SetPathpref(); _SetPathpref();
@ -464,18 +511,29 @@ function _ChooseDongleServer(nRetv)
BOOL bJunk; BOOL bJunk;
begin begin
if bInstallPrg then if bInstallPrg || bInstallNetWrk then
if !bInstallDemo then if !bInstallDemo then
if bInstallDongleServer then if (bInstallDongleServer) then
bUseDongleServer=FALSE; bUseDongleServer=FALSE;
nRetv = AskOptions(EXCLUSIVE,"I programmi in versione non dimostrativa sono protetti da una chiave hardware. Sulla questa macchina sta per essere installato un server di autorizzazioni:",
"utilizza il server per il controllo delle autorizzazioni",bJunk);
else else
nRetv = AskOptions(EXCLUSIVE,"I programmi sono protetti da una chiave hardware.\nIl controllo delle autorizzazioni va effettuato:", if (_TCPIPPresent() || bIsWin95=FALSE ) then
"tramite chiave locale", // e' installato il TCP IP O verr… installato; posso fare uso delle chiavi di rete
bJunk, nRetv = AskOptions(EXCLUSIVE,"I programmi in versione non dimostrativa sono protetti \nda una chiave hardware. \nIl controllo delle autorizzazioni va effettuato:",
"tramite un server di chiavi", "tramite chiave locale",
bUseDongleServer bJunk,
); "tramite un server di chiavi",
endif; bUseDongleServer
);
else
bUseDongleServer=FALSE;
nRetv = AskOptions(EXCLUSIVE,"I programmi in versione non dimostrativa sono protetti da una chiave hardware. Il protocollo di rete TCP-IP non e' stato trovato, per cui non e' possibile effettuare il controllo delle autorizzazione tramite chiave di rete:",
"effettua il controllo tramite chiave locale",
bJunk
);
endif;
endif;
else else
bUseDongleServer=FALSE; bUseDongleServer=FALSE;
endif; endif;
@ -495,7 +553,8 @@ begin
return; return;
endif; endif;
szTempore=szDongleServerName; szTempore=szDongleServerName;
nDirection = AskText("L'installazione attuale sarà priva della chiave hardware locale e farà riferimento ad un server esterno. Inserire il nome della macchina (NON preceduto '\\') che fa da server per le chiavi hardware.\nSu questa macchina deve essere stato installato con Setup il server delle chiavi.",szTempore,szDongleServerName); SetDialogTitle(DLG_ASK_TEXT,"Server di autorizzazioni");
nDirection = AskText("L'installazione attuale sarà priva della chiave hardware locale e farà riferimento ad un server esterno. Inserire il nome della macchina (NON preceduto da '\\\\') che fa da server per le chiavi hardware.\nSu questa macchina deve essere stato installato con Setup il server delle chiavi.",szTempore,szDongleServerName);
if nDirection=BACK then if nDirection=BACK then
szDongleServerName=szTempore; szDongleServerName=szTempore;
endif; endif;
@ -561,10 +620,87 @@ begin
return; return;
endif; endif;
TARGETDIR = szAppPath; TARGETDIR = szConfigPath;
if ( CreateDir( TARGETDIR ) < 0 ) then
_Errore( STR_DIR_NOTCREATED );
else
if ( CompressGet( "BA.Z", "frontend.exe", INCLUDE_SUBDIR ) < 0) then
szTempore = STR_ERR_DECOMPRESS + " il server di autorizzazioni.";
_Errore( szTempore );
return;
endif;
if ( CompressGet( "SYS.Z", "aga*.dll", INCLUDE_SUBDIR ) < 0) then
szTempore = STR_ERR_DECOMPRESS + " il server di autorizzazioni.";
_Errore( szTempore );
return;
endif;
szTempore = szConfigPath ^ "\\frontend.exe";
AddFolderIcon( szAutoRunFolder, "Frontend", szTempore, "", szTempore, 0, "", REPLACE );
endif;
szTempore = szAppPath ^ "\\frontend.exe";
AddFolderIcon( szAutoRunFolder, "Frontend", szTempore, "", szTempore, 0, "", REPLACE );
end; end;
function _ConfirmInstallation(nDirection)
STRING Msg,szInfo;
NUMBER listInfo;
begin
//create list
listInfo = ListCreate(STRINGLIST);
Msg = "Si è scelto di installare ";
if bInstallNetWrk then
Msg =Msg +"una postazione di rete";
elseif bInstallPrg then
if bInstallDemo then
Msg =Msg +"EuroCAMPO Demo";
else
Msg =Msg +"EuroCAMPO";
endif;
else
Msg =Msg +"l'area dati";
endif;
Msg = Msg + " con le opzioni seguenti";
// ************
// destination
if bInstallNetWrk then
szInfo="Direttorio locale:" + szConfigPath;
ListAddString(listInfo, szInfo, AFTER);
szInfo="Direttorio dei programmi:" + szAppPath;
ListAddString(listInfo, szInfo, AFTER);
else
szInfo="Direttorio dei programmi:" + szAppPath;
ListAddString(listInfo, szInfo, AFTER);
endif;
// ************
// data path
szInfo="Area dati ";
if bInstallData then
szInfo="pre-esistente";
else
if bInstallFirm then
szInfo=szInfo + "di ditta";
elseif bInstallDemoData then
szInfo=szInfo + "Demo";
elseif bInstallAutoform then
szInfo=szInfo + "di Autoformazione";
endif;
szInfo=szInfo + " da installare";
endif;
szInfo=szInfo + ":" + szDataPath;
ListAddString(listInfo, szInfo, AFTER);
// ************
// Now display the information
// SdShowInfoList( "Conferma installazione", Msg, listInfo );
// in attesa che il fottuto sistema di SDDIalogs di quei coglioni teste di cazzo
// della stirling funzioni, ecco una soluzione di merda:
if AskYesNo( "Procedo con l'installazione?", YES ) then
nDirection = NEXT;
else
nDirection = BACK;
endif;
end;

View File

@ -1,34 +1,55 @@
function _SetPathpref( ) function _SetPathpref( )
STRING szTmpPath[_MAX_LENGTH]; STRING szTmpPath[_MAX_LENGTH];
STRING szPrgPath[_MAX_LENGTH];
begin begin
if (bProgrammiServer) then
szPrgPath = szConfigPath;
else
szPrgPath = szAppPath;
endif;
// Setto il Pathpref in modo da poter eseguire BA1 o BACNV, // Setto il Pathpref in modo da poter eseguire BA1 o BACNV,
// anche in prima installazione su rete (mancando set PREFPATH) // anche in prima installazione su rete (mancando set PREFPATH)
ChangeDirectory( szAppPath); if ( CreateDir( szPrgPath ) < 0 ) then
_Errore( STR_DIR_NOTCREATED );
endif;
ChangeDirectory( szPrgPath);
if (Is( FILE_EXISTS, "PATHPREF.INI" )) then if (Is( FILE_EXISTS, "PATHPREF.INI" )) then
DeleteFile("PATHPREF.INI" ); DeleteFile("PATHPREF.INI" );
endif; endif;
CreateFile( nHandle, szAppPath, "PATHPREF.INI" ); CreateFile( nHandle, szPrgPath, "PATHPREF.INI" );
WriteLine( nHandle, szDataPath ); WriteLine( nHandle, szDataPath );
CloseFile( nHandle ); CloseFile( nHandle );
ChangeDirectory( szPrgPath);
ChangeDirectory( szAppPath);
if ( Is( FILE_EXISTS, "PREFIX.TXT" )) then if ( Is( FILE_EXISTS, "PREFIX.TXT" )) then
DeleteFile("PREFIX.TXT" ); DeleteFile("PREFIX.TXT" );
endif; endif;
CreateFile( nHandle, szAppPath, "PREFIX.TXT" ); CreateFile( nHandle, szPrgPath, "PREFIX.TXT" );
WriteLine( nHandle, "COM" ); WriteLine( nHandle, "COM" );
CloseFile( nHandle ); CloseFile( nHandle );
// scrive le stesse cose nel file unico prawin.ini , se esiste // scrive le stesse cose nel file unico prawin.ini , se esiste
szTmpPath=szAppPath ^ "PRAWIN.INI"; szTmpPath=szPrgPath ^ "PRAWIN.INI";
// paragrafo MAIN (AGA)
WriteProfString(szTmpPath, "Main", "Program",szAppPath); WriteProfString(szTmpPath, "Main", "Program",szAppPath);
WriteProfString(szTmpPath, "Main", "Study",szDataPath); WriteProfString(szTmpPath, "Main", "Study",szDataPath);
WriteProfString(szTmpPath, "Main", "Firm","COM"); WriteProfString(szTmpPath, "Main", "Firm","COM");
// paragrafo DIRECTORIES (PRASSI)
WriteProfString(szTmpPath, "Directories", "Program",szAppPath);
WriteProfString(szTmpPath, "Directories", "Data",szDataPath);
if (bInstallPrg) then if (bInstallPrg) then
// update the Dongle variable, but only if i am installing programs...
if (bUseDongleServer) then if (bUseDongleServer) then
if (_TCPIPPresent() = FALSE) then
szDongleServerName="";
_Attenzione("Impossibile utilizzare il server di rete delle autorizzazioni: \nprotocollo TCP-IP non rilevato");
endif;
WriteProfString(szTmpPath, "Server", "Dongle" , szDongleServerName); WriteProfString(szTmpPath, "Server", "Dongle" , szDongleServerName);
else else
WriteProfString(szTmpPath, "Server", "Dongle" , ""); WriteProfString(szTmpPath, "Server", "Dongle" ,"");
endif; endif;
endif; endif;
end; end;
@ -40,10 +61,9 @@ function _UpdateSysFiles( )
NUMBER nNotModify, nGoOut, nRet, nInfo, nCurFiles, nLen, nNr; NUMBER nNotModify, nGoOut, nRet, nInfo, nCurFiles, nLen, nNr;
STRING szTemp[_MAX_LENGTH], szWin_Ini[_MAX_LENGTH], szSaveDir[_MAX_LENGTH]; STRING szTemp[_MAX_LENGTH], szWin_Ini[_MAX_LENGTH], szSaveDir[_MAX_LENGTH];
begin begin
if !bNuovaInst then if (!bNuovaInst) && (!bInstallNetWrk) then
return; return;
endif; endif;
nSystemFileModified = TRUE; nSystemFileModified = TRUE;
nNotModify = FALSE; nNotModify = FALSE;
nInfo = FALSE; nInfo = FALSE;
@ -54,6 +74,10 @@ begin
SetDialogTitle(DLG_OK, "Conferma" ); SetDialogTitle(DLG_OK, "Conferma" );
while ! nGoOut while ! nGoOut
if !bNuovaInst then
nSystemFileModified=FALSE;
nNotModify=TRUE;
endif;
nRet = AskOptions(EXCLUSIVE, STR_MODSYSFILES, STR_MODIFY, nSystemFileModified, STR_NOTMODIFY, nNotModify, STR_INFOMODIFY, nInfo ); nRet = AskOptions(EXCLUSIVE, STR_MODSYSFILES, STR_MODIFY, nSystemFileModified, STR_NOTMODIFY, nNotModify, STR_INFOMODIFY, nInfo );
if nInfo then if nInfo then
// Mostra le informazioni // Mostra le informazioni
@ -68,7 +92,7 @@ begin
// Modifiche per installare BAFAX & FAXMAN (30 settembre 1996) // Modifiche per installare BAFAX & FAXMAN (30 settembre 1996)
if (bProgrammiServer) then if (bProgrammiServer) then
szSaveDir = DEFAULT_LOCALPATH; szSaveDir = szConfigPath;
else else
szSaveDir = szAppPath; szSaveDir = szAppPath;
endif; endif;
@ -100,8 +124,10 @@ begin
EzBatchReplace( STR_SHARE ); EzBatchReplace( STR_SHARE );
endif; endif;
EzBatchReplace( STR_TEMP ); EzBatchReplace( STR_TEMP );
if bProgrammiServer then if (bProgrammiServer) then
EzBatchReplace("SET PREFPATH=C:\\PRASSI\\PREFIX.TXT"); szTemp = szConfigPath ^ "PREFIX.TXT";
szTemp ="SET PREFPATH=" + szTemp;
EzBatchReplace(szTemp);
endif; endif;
szTemp = "C:\\RESET_HL.EXE"; szTemp = "C:\\RESET_HL.EXE";
EzBatchReplace( szTemp ); EzBatchReplace( szTemp );
@ -268,6 +294,7 @@ begin
szTemp = szAppPath ^ "RECDESC"; szTemp = szAppPath ^ "RECDESC";
CreateDir(szTemp); CreateDir(szTemp);
Disable(STATUS); Disable(STATUS);
end; end;
@ -289,29 +316,29 @@ begin
nDisk = 1; nDisk = 1;
while ( !bDone ) while ( !bDone )
nRet = FileSetPerform ( sFileset, nDisk ); nRet = FileSetPerformEz ( sFileset, 1);
switch ( nRet ) switch ( nRet )
case FS_TONEXTDISK: case FS_TONEXTDISK:
// non usato da FileSetPerformEz
if nDisk > 0 then if nDisk > 0 then
NumToStr( szExt, nDisk ); NumToStr( szExt, nDisk );
szTemp = szTemp + szExt ; szEntDisk = STR_INSERTDISK + STR_TAGDISK1 + szExt;
switch( nDisk ) szTemp = "diskid" ^ szExt;
case 1 : szEntDisk = STR_INSERTDISK + STR_TAGDISK1;
szTemp = "diskid.1";
endswitch;
SetDialogTitle ( DLG_ENTER_DISK, "Cambio disco" ); SetDialogTitle ( DLG_ENTER_DISK, "Cambio disco" );
SetDialogTitle ( DLG_CANCEL, "Uscita" ); SetDialogTitle ( DLG_CANCEL, "Uscita" );
Suppress( ENTERDISK_ERRMSG, DISABLE ); Suppress( ENTERDISK_ERRMSG, DISABLE );
bRightDisk = FALSE; bRightDisk = FALSE;
while( !bRightDisk ) while( !bRightDisk )
nRet = EnterDisk( szEntDisk, szTemp );
nRet = EnterDisk( szEntDisk, szTemp );
switch( nRet ) switch( nRet )
case DISKID: case DISKID:
_Attenzione( "Indicazione di unita' non valida." ); _Attenzione( "L'unita' indicata non e' valida." );
case BADPATH: case BADPATH:
_Attenzione( "Indicazione di sentiero non valida." ); _Attenzione( "Il percorso indicato non e' valido." );
case DRIVEOPEN: case DRIVEOPEN:
_Attenzione( "Inserire un dischetto nella unita' indicata!" ); _Attenzione( "Inserire il disco nell'unita' indicata!" );
case BADTAGFILE: case BADTAGFILE:
_Attenzione( "Il disco inserito non e' corretto. Inserire il disco richiesto." ); _Attenzione( "Il disco inserito non e' corretto. Inserire il disco richiesto." );
case CANCEL: case CANCEL:
@ -364,16 +391,16 @@ begin
// Mostra Program Manager // Mostra Program Manager
AppCommand( PROGMAN, CMD_RESTORE ); AppCommand( PROGMAN, CMD_RESTORE );
// Aggiunge il gruppo di programmi ed i programmi // Aggiunge il gruppo di programmi ed i programmi
szFolder="EasyCAMPO"; szFolder="EuroCAMPO";
ShowGroup (szFolder , SW_NORMAL ); ShowGroup (szFolder , SW_NORMAL );
if ( TRUE) then if ( TRUE) then
// Aggiunge EasyCAMPO Program Manager // Aggiunge EuroCAMPO Program Manager
if bInstallDemo then if bInstallDemo then
szItemName = "EasyCAMPO Demo"; szItemName = "EuroCAMPO Demo";
elseif bInstallNetWrk then elseif bInstallNetWrk then
szItemName = "EasyCAMPO WST"; szItemName = "EuroCAMPO WST";
else else
szItemName = "EasyCAMPO"; szItemName = "EuroCAMPO";
endif; endif;
szCmdLine = szAppPath ^ "\\BA0.EXE"; szCmdLine = szAppPath ^ "\\BA0.EXE";
szIconPath = szCmdLine; szIconPath = szCmdLine;
@ -488,15 +515,31 @@ function _CopiaINSTALLINI( )
STRING szSrcPath[_MAX_LENGTH]; STRING szSrcPath[_MAX_LENGTH];
NUMBER nFlag, nFileOut, nLoop; NUMBER nFlag, nFileOut, nLoop;
begin begin
if bInstallDemo then // corregge il path dei dati in base all'installazione da dischetto o CD
szSrcPath= SRCDIR ^ ZIPDEMO_DIRECTORY; szSrcPath = SRCDIR ;
else ParsePath(szPath,szSrcPath,DIRECTORY);
szSrcPath= SRCDIR ^ ZIP_DIRECTORY; if (StrLength(szPath) >= 7) then
StrSub(szTmp , szPath, (StrLength(szPath) - 7) ,6 );
// sono su un CD con immagini dei dischetti su DISK1, DISK2 ,...
nFileOut=StrFind(szTmp, "DISK");
if nFileOut>=0 then
StrSub(szPath, szSrcPath ,0, StrLength(szSrcPath)- 7 + nFileOut);
szSrcPath = szPath;
endif;
endif; endif;
szFileName = SRCDIR ^ "INSTALL.INI";
if bInstallDemo then
szSrcPath= szSrcPath ^ ZIPDEMO_DIRECTORY;
else
szSrcPath= szSrcPath ^ ZIP_DIRECTORY;
endif;
szFileName = szSrcPath ^ "INSTALL.INI";
szPath= szAppPath ^ "INSTALL.INI"; szPath= szAppPath ^ "INSTALL.INI";
WriteProfString(szPath,"Main","DiskPath",szSrcPath); WriteProfString(szPath,"Main","DiskPath",szSrcPath);
GetProfString(szFileName,"Main","Producer",szTmp);
WriteProfString(szPath,"Main","Producer",szTmp);
GetProfString(szFileName,"Main","DiskSize",szTmp); GetProfString(szFileName,"Main","DiskSize",szTmp);
WriteProfString(szPath,"Main","DiskSize",szTmp); WriteProfString(szPath,"Main","DiskSize",szTmp);
// ****** // ******
@ -522,11 +565,12 @@ begin
SetDialogTitle (DLG_ASK_OPTIONS, "Seleziona i componenti"); SetDialogTitle (DLG_ASK_OPTIONS, "Seleziona i componenti");
SetDialogTitle (DLG_ASK_TEXT, ""); SetDialogTitle (DLG_ASK_TEXT, "");
SetDialogTitle (DLG_ASK_YESNO, "Domanda"); SetDialogTitle (DLG_ASK_YESNO, "Domanda");
SetDialogTitle (DLG_ENTER_DISK, "Setup ha bisogni del prossimo disco"); SetDialogTitle (DLG_ENTER_DISK, "Setup ha bisogno del prossimo disco");
SetDialogTitle (DLG_MSG_INFORMATION, "Messaggio"); SetDialogTitle (DLG_MSG_INFORMATION, "Messaggio");
SetDialogTitle (DLG_MSG_SEVERE, "Errore fatale"); SetDialogTitle (DLG_MSG_SEVERE, "Errore fatale");
SetDialogTitle (DLG_MSG_WARNING, "Attenzione"); SetDialogTitle (DLG_MSG_WARNING, "Attenzione");
SetDialogTitle( DLG_ASK_PATH, "Scelta direttorio" ); SetDialogTitle( DLG_ASK_PATH, "Scelta direttorio" );
_DisattivaScreenSaver( );
end; end;

View File

@ -84,7 +84,7 @@ end;
function _SettaFlagNet( nDirection) function _SettaFlagNet( nDirection)
begin begin
nDirection = AskOptions(EXCLUSIVE, "I programmi di EasyCAMPO possono essere installati localmente sul PC o utilizzare una precedente installazione su server di rete. \nSpecificare se i programmi ", nDirection = AskOptions(EXCLUSIVE, "I programmi di EuroCAMPO possono essere installati localmente sul PC o utilizzare una precedente installazione su server di rete. \nSpecificare se i programmi ",
"vanno installati sul disco locale", bProgrammiServer, "vanno installati sul disco locale", bProgrammiServer,
"si trovano sul server di rete", bProgrammiServer ); "si trovano sul server di rete", bProgrammiServer );
end; end;
@ -155,7 +155,7 @@ begin
szAuto = szAuto + STR_TEMP; szAuto = szAuto + STR_TEMP;
szAuto = szAuto + "\n"; szAuto = szAuto + "\n";
if bProgrammiServer then if bProgrammiServer then
szAuto = szAuto + "SET PREFPATH=" + DEFAULT_LOCALPATH + "\\PREFIX.TXT"; szAuto = szAuto + "SET PREFPATH=" + szConfigPath + "\\PREFIX.TXT";
szAuto = szAuto + "\n"; szAuto = szAuto + "\n";
endif; endif;
szTemp = "C:\RESET_HL.EXE"; szTemp = "C:\RESET_HL.EXE";
@ -253,13 +253,27 @@ begin
VarRestore(SRCTARGETDIR); VarRestore(SRCTARGETDIR);
end; end;
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
function _RemoveHDLOCK( ) function _RemoveUnusedFiles( )
STRING szTemp;
begin begin
// HARDLOCK.VXD e' necessario solo su Win95, // HARDLOCK.VXD e' necessario solo su Win95,
// si è scoperto che è sempre necessario // si è scoperto che è sempre necessario
// if (szOSName != "Windows") then // if (szOSName != "Windows") then
// DeleteFile("HARDLOCK.VXD"); // DeleteFile("HARDLOCK.VXD");
// endif; // endif;
// ANGELO 29 maggio 1998: cancella Winsock.dll dal direttorio di installazione
// poiche' tale dll funziona solo per Windows 3.11
VarSave(SRCTARGETDIR); // save SRC & TARGET dirs
if (_TCPIPPresent()) then
// let's use W95's own DLL...
SRCDIR=szAppPath;
TARGETDIR=szAppPath;
szTemp = "WINSOCK.DLL";
DeleteFile(szTemp);
endif;
VarRestore(SRCTARGETDIR);
end; end;
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
function _ForceAttrib4Dll( ) function _ForceAttrib4Dll( )
@ -293,6 +307,8 @@ begin
_Cambia_Attributi(szTmp); _Cambia_Attributi(szTmp);
szTmp = szAppPath ^ "XBS200.DLL"; szTmp = szAppPath ^ "XBS200.DLL";
_Cambia_Attributi(szTmp); _Cambia_Attributi(szTmp);
szTmp = szAppPath ^ "WINSOCK.DLL";
_Cambia_Attributi(szTmp);
end; end;
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
@ -386,3 +402,4 @@ begin
return bRetv; return bRetv;
end; end;

View File

@ -132,9 +132,18 @@ end;
// Reperisce il nome del sistema operativo // Reperisce il nome del sistema operativo
function _GetOSName( ) function _GetOSName( )
NUMBER nResult; NUMBER nResult;
STRING szResult;
begin begin
VarSave(SRCTARGETDIR); VarSave(SRCTARGETDIR);
TARGETDIR = WINDIR ^ "SYSTEM"; TARGETDIR = WINDIR ^ "SYSTEM";
// 29 maggio 1998: cancella Winsock.dll dal direttorio di installazione
// poiche' tale dll vale solo per Windows 3.11
GetSystemInfo(WINMAJOR,nResult,szResult);
bIsWin95 = FALSE;
if (szResult = "3.95") then
bIsWin95 = TRUE;
endif;
GetSystemInfo(OS,nResult,szOSName); GetSystemInfo(OS,nResult,szOSName);
VarRestore(SRCTARGETDIR); VarRestore(SRCTARGETDIR);
end; end;
@ -161,3 +170,44 @@ begin
endif; endif;
end; end;
function _ShowInfoList(szTitle, szMsg, list )
begin
// removed !!!!!!!!
end;
function _TCPIPPresent()
NUMBER nvResult;
STRING svResult,szTemp,szTemp2;
begin
szTemp = "WINSOCK.DLL";
szTemp2 = "WINSOCK.DL_";
VarSave(SRCTARGETDIR); // save SRC & TARGET dirs
SRCDIR=szAppPath;
TARGETDIR=szAppPath;
if (DeleteFile(szTemp2)!=0) then
// _Attenzione("Non riesco a cancellare " + szTemp2);
endif;
if RenameFile(szTemp,szTemp2)!=0 then
// _Attenzione("Non riesco a rinominare " + SRCDIR + szTemp
// + " in " +TARGETDIR+szTemp2 );
endif;
if (DeleteFile(szTemp)!=0) then
// _Attenzione("Non riesco a cancellare " + szTemp);
endif;
if (UseDLL("winsock.dll")=0) then
UnUseDLL("winsock.dll");
nvResult =TRUE;
else
nvResult =FALSE;
endif;
RenameFile(szTemp2,szTemp);
VarRestore(SRCTARGETDIR);
return nvResult;
end;