_isres.dll _setup.lib : aggiunte le risorse (in italiano) per IS3

*.rul: nuovi script per l'installazione del server di chiavi


git-svn-id: svn://10.65.10.50/trunk@6068 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
augusto 1998-01-30 10:10:10 +00:00
parent 70a04614b4
commit 3e6d3d0bd4
8 changed files with 296 additions and 161 deletions

BIN
support/interni/_isres.dll Executable file

Binary file not shown.

BIN
support/interni/_setup.lib Executable file

Binary file not shown.

View File

@ -16,6 +16,9 @@ declare
STRING szAppPath[ _MAX_LENGTH ]; STRING szAppPath[ _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
STRING szDongleServerName[ _MAX_LENGTH ];
STRING szAutoRunFolder[ _MAX_LENGTH ];
STRING szDisk [_MAX_LENGTH]; STRING szDisk [_MAX_LENGTH];
STRING szBitmapFile [_MAX_LENGTH]; STRING szBitmapFile [_MAX_LENGTH];
STRING szTmp[_MAX_LENGTH]; STRING szTmp[_MAX_LENGTH];
@ -79,8 +82,11 @@ 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:\\PRASSI"
#define DEFAULT_NETPATH "F:\\PRASSI" #define DEFAULT_NETPATH "F:\\PRASSI"
#define SELECTFOLDER_DIALOG 12008
// Prototipo delle funzioni // Prototipo delle funzioni
// main // main
prototype _ProgramPrologue( ); prototype _ProgramPrologue( );
@ -90,19 +96,23 @@ prototype _FindExistingInst(BYREF STRING);// controlla la presenza dell'appli
prototype _CheckExistingInst(STRING);// controlla la presenza dell'applicazione prototype _CheckExistingInst(STRING);// controlla la presenza dell'applicazione
prototype _CheckExistingData(STRING);// controlla la presenza dell'applicazione prototype _CheckExistingData(STRING);// controlla la presenza dell'applicazione
prototype _SelectInstall(); // sceglie cosa installare prototype _SelectInstall(BYREF NUMBER); // sceglie cosa installare
prototype _AddOrOverwrite(); prototype _AddOrOverwrite(BYREF NUMBER);
prototype _SelectComponents(); prototype _SelectComponents(BYREF NUMBER);
prototype _SelectDataType( ); prototype _SelectDataType( BYREF NUMBER);
prototype _ChiediDestinazione(); prototype _ChiediDestinazione(BYREF NUMBER);
prototype _ChiediDestDati(); prototype _ChiediDestDati(BYREF NUMBER);
prototype _InstallazioneMinima(); prototype _InstallazioneMinima(BYREF NUMBER);
prototype _InstallazioneDati(); prototype _InstallazioneDati(BYREF NUMBER);
prototype _Ask4Purchase(); prototype _Ask4Purchase();
prototype _NewNetWorkPlace(); prototype _NewNetWorkPlace(BYREF NUMBER);
prototype _ChooseDongleServer(BYREF NUMBER);
prototype _ChiediDestDongleServer(BYREF NUMBER);
prototype _InstallDongleServer(BYREF NUMBER);
prototype _WhereIsDongleServer(BYREF NUMBER);
// first level // first level
prototype _ExitOnConfirm( ); prototype _ExitOnConfirm( );
prototype _PerformSet(STRING); prototype _PerformSet(STRING);
prototype _TrovaPrgSuRete( ); prototype _TrovaPrgSuRete( );
prototype _DeleteFilesMinima(); prototype _DeleteFilesMinima();
@ -125,7 +135,7 @@ prototype _SetPathpref();
prototype _CopiaPRASSIINI( ); prototype _CopiaPRASSIINI( );
prototype _CopiaINSTALLINI( ); prototype _CopiaINSTALLINI( );
prototype _CopiaRESETHL( ); prototype _CopiaRESETHL( );
prototype _SettaFlagNet(); prototype _SettaFlagNet(BYREF NUMBER);
prototype _PrimaInstallazione( STRING, BYREF NUMBER, BYREF STRING ); prototype _PrimaInstallazione( STRING, BYREF NUMBER, BYREF STRING );
// ************** // **************
// utility // utility
@ -161,7 +171,6 @@ prototype _CheckNet( );
prototype _DeleteFiles( ); prototype _DeleteFiles( );
prototype _FinalChecks( ); prototype _FinalChecks( );
*/ */

View File

@ -11,7 +11,7 @@ declare
STRING szSXTR1,szSXTR2, szDoMnu, szText, szModifiedPath, szBaCnv; STRING szSXTR1,szSXTR2, szDoMnu, szText, szModifiedPath, szBaCnv;
STRING sInstType; STRING sInstType;
BOOL bPurchase, bInstallModules, bInstallAutoform, bInstallEnv, bInstallFirm, bInstallDemo, bInstallDemoData, bInstallNetWrk; BOOL bPurchase, bInstallModules, bInstallAutoform, bInstallEnv, bInstallFirm, bInstallDemo, bInstallDemoData, bInstallNetWrk;
BOOL bInstallData, bInstallPrg, bInstallManual; BOOL bInstallData, bInstallPrg, bInstallManual, bInstallDongleServer, bUseDongleServer;
// Function declarations. // Function declarations.
prototype _SetupScreen(); prototype _SetupScreen();
prototype _CheckRequirements(); prototype _CheckRequirements();
@ -27,10 +27,11 @@ Step_start:
//---------------------------------- defaults //---------------------------------- defaults
bInstallPrg = TRUE; bInstallPrg = TRUE;
bInstallData = FALSE; bInstallData = FALSE;
_ProgramPrologue(); _ProgramPrologue();
#define SPACE_REQUIRED 3000 // Disk space in bytes. #define SPACE_REQUIRED 3000 // Disk space in bytes.
#define APP_NAME "Easy Campo" #define APP_NAME "EasyCAMPO"
#define PROGRAM_FOLDER_NAME "PRASSI" #define PROGRAM_FOLDER_NAME "PRASSI"
#define APPBASE_PATH "\\" #define APPBASE_PATH "\\"
#define COMPANY_NAME "A.G.A. Informatica" #define COMPANY_NAME "A.G.A. Informatica"
@ -55,7 +56,7 @@ Step_welcome:
Step_chooseinst: Step_chooseinst:
// sceglie cosa installare // sceglie cosa installare
nDirection=_SelectInstall(); _SelectInstall(nDirection);
if (nDirection=BACK) then if (nDirection=BACK) then
goto Step_welcome; goto Step_welcome;
endif ; endif ;
@ -66,83 +67,72 @@ Step_chooseinst:
endif; endif;
Step_choosewhere: Step_choosewhere:
nDirection= _ChiediDestinazione(); _ChiediDestinazione(nDirection);
if nDirection=BACK then if nDirection=BACK then
goto Step_chooseinst; goto Step_chooseinst;
endif; endif;
if bInstallDemo then
bInstallPrg = TRUE;
bInstallData = TRUE;
bInstallDemoData=TRUE;
goto Step_choosewhereD;
endif;
Step_choosecomp: Step_choosecomp:
if nDirection=BACK && bInstallDemo then _SelectComponents(nDirection );
goto Step_choosewhere;
endif;
nDirection= _SelectComponents( );
if nDirection=BACK then if nDirection=BACK then
goto Step_choosewhere; goto Step_choosewhere;
endif; endif;
Step_choosewhereD: Step_choosewhereD:
nDirection= _ChiediDestDati(); _ChiediDestDati(nDirection);
if nDirection=BACK then if nDirection=BACK then
goto Step_choosecomp; goto Step_choosecomp;
endif; endif;
Step_choosedata: Step_choosedata:
if bInstallData then _SelectDataType(nDirection);
nDirection= _SelectDataType();
if nDirection=BACK then if nDirection=BACK then
if bInstallDemo then
goto Step_choosewhere;
else
goto Step_choosewhereD; goto Step_choosewhereD;
endif; endif;
Step_chooseDongleServer:
_ChooseDongleServer(nDirection);
if nDirection=BACK then
goto Step_choosedata;
endif; endif;
Step_whereDongleServer:
_ChiediDestDongleServer(nDirection);
_WhereIsDongleServer(nDirection);
if nDirection=BACK then
goto Step_chooseDongleServer;
endif; endif;
Step_fromnet: Step_fromnet:
nDirection = _SettaFlagNet(); _SettaFlagNet(nDirection);
if nDirection=BACK then if nDirection=BACK then
if bInstallDemo then goto Step_whereDongleServer;
goto Step_choosewhere;
elseif !bInstallData then
goto Step_choosewhereD;
else
goto Step_choosedata;
endif;
endif; endif;
Step_newORupdate: Step_newORupdate:
if (bInstallPrg || bNuovaInst) && nDirection=BACK then _AddOrOverwrite(nDirection);
goto Step_fromnet;
endif;
if bInstallPrg then
nDirection=_AddOrOverwrite();
endif;
if nDirection=BACK then if nDirection=BACK then
goto Step_fromnet; goto Step_fromnet;
endif; endif;
Step_installData: Step_installData:
if bInstallData then _InstallazioneDati(nDirection);
nDirection = _InstallazioneDati();
if (nDirection=BACK) then if (nDirection=BACK) then
goto Step_newORupdate; goto Step_newORupdate;
endif; endif;
endif;
Step_installPrg: Step_installPrg:
if bInstallPrg then _InstallazioneMinima(nDirection);
if bInstallEnv || bInstallDemo then
nDirection = _InstallazioneMinima();
if (nDirection=BACK) then if (nDirection=BACK) then
goto Step_newORupdate; goto Step_newORupdate;
endif; endif;
Step_installDongleServer:
if bInstallDongleServer then
_InstallDongleServer(nDirection);
endif; endif;
if (nDirection=BACK) then
goto Step_newORupdate;
endif; endif;
Step_purchase: Step_purchase:
@ -158,8 +148,10 @@ Step_purchase:
_ProgramEpilogue(); _ProgramEpilogue();
exit; exit;
Step_installnet: Step_installnet:
nDirection = _NewNetWorkPlace(); _NewNetWorkPlace(nDirection);
if (nDirection=BACK) then if (nDirection=BACK) then
goto Step_chooseinst; goto Step_chooseinst;
endif; endif;

View File

@ -1,10 +1,10 @@
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
// **** Selezione del tipo di installazione // **** Selezione del tipo di installazione
// **** (programmi o postazione di rete) // **** (programmi o postazione di rete)
function _SelectInstall( ) function _SelectInstall(nRetv )
NUMBER nRetv;
STRING szMsg[512]; STRING szMsg[512];
begin begin
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 + "EasyCampo in versione normale o demo, oppure per installare ";
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";
@ -16,35 +16,52 @@ begin
"Installazione nuova postazione di lavoro in &rete", "Installazione nuova postazione di lavoro in &rete",
bInstallNetWrk bInstallNetWrk
); );
return nRetv;
end; end;
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
// **** Selezione del tipo di installazione // **** Selezione del tipo di installazione
// **** // ****
function _SelectComponents() function _SelectComponents(nRetv)
NUMBER 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
szMsg= "E' possibile installare i programmi (ambiente e moduli) e/o l'area dati. "; if szOSName = "Windows" || bInstallDemo then
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
); );
until nRetv!=NEXT || bInstallData || bInstallPrg; bInstallDongleServer = FALSE;
return nRetv; else
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";
nRetv = AskOptions(NONEXCLUSIVE,szMsg,
"Installa i programmi", bInstallPrg,
"Installa l'area dati", bInstallData ,
"Installa il server di chiavi", bInstallDongleServer
);
endif;
until nRetv!=NEXT || bInstallData || bInstallPrg || bInstallDongleServer;
return ;
end; end;
// **** Selezione del tipo di installazione // **** Selezione del tipo di installazione
// **** // ****
function _SelectDataType( ) function _SelectDataType( nRetv)
NUMBER nRetv;
BOOL bJunk; BOOL bJunk;
STRING szMsg[512]; STRING szMsg[512];
begin begin
if !bInstallData then
return;
endif;
szMsg= "Si e' selezionato di installare gli archivi. \n"; szMsg= "Si e' selezionato di installare gli archivi. \n";
szMsg= szMsg + "L'area dati deve contenere:"; szMsg= szMsg + "L'area dati deve contenere:";
repeat repeat
@ -57,7 +74,7 @@ begin
bInstallAutoform bInstallAutoform
); );
if nRetv=BACK then if nRetv=BACK then
return BACK; return ;
endif; endif;
sInstType = INST_ENVIRONMENT; sInstType = INST_ENVIRONMENT;
if bInstallDemoData then if bInstallDemoData then
@ -67,16 +84,15 @@ begin
endif; endif;
until nRetv=NEXT; until nRetv=NEXT;
return nRetv; return ;
end; end;
//---------------------------------- //----------------------------------
// chiede la directory dell'applicazione e dei dati; // chiede la directory dell'applicazione e dei dati;
// l'installazione dei soli dati ha bisogno di dir_applicaz (per settare pathpref) // l'installazione dei soli dati ha bisogno di dir_applicaz (per settare pathpref)
// l'installazione dei soli programmi ha bisogno di dir_dati (per sapere se esiste un direttorio dati) // l'installazione dei soli programmi ha bisogno di dir_dati (per sapere se esiste un direttorio dati)
function _ChiediDestinazione() function _ChiediDestinazione(nRetv)
BOOL bReenterPath, bConfirmdatapath; BOOL bReenterPath, bConfirmdatapath;
NUMBER 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"
@ -85,8 +101,9 @@ begin
szAppPath= "c:\prassi"; szAppPath= "c:\prassi";
bNuovaInst = _FindExistingInst(szAppPath); bNuovaInst = _FindExistingInst(szAppPath);
endif; endif;
if (AskDestPath( "", "", szAppPath, 0 )=BACK) then nRetv=AskDestPath( "", "", szAppPath, 0 );
return BACK; if (nRetv=BACK) then
return ;
endif; endif;
bNuovaInst = ! _CheckExistingInst(szAppPath); bNuovaInst = ! _CheckExistingInst(szAppPath);
szTmp = szAppPath ^ "PATHPREF.INI"; szTmp = szAppPath ^ "PATHPREF.INI";
@ -117,18 +134,18 @@ begin
endif; endif;
CloseFile( nTmp ); CloseFile( nTmp );
endif; endif;
return nRetv; return ;
end; end;
//---------------------------------- //----------------------------------
function _ChiediDestDati() function _ChiediDestDati(nRetv)
BOOL bConfirmdatapath; BOOL bConfirmdatapath;
STRING szChangedPath[256] STRING szChangedPath[256]
STRING sMsg[256] STRING sMsg[256]
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"
// step 2: data path if bInstallData || bInstallPrg then
if bInstallData then if bInstallData then
sMsg = "I dati verranno installati nel seguente direttorio."; sMsg = "I dati verranno installati nel seguente direttorio.";
else else
@ -137,8 +154,9 @@ begin
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
bConfirmdatapath=TRUE; bConfirmdatapath=TRUE;
if (AskPath(sMsg ,szDataPath, szChangedPath)=BACK) then nRetv=AskPath(sMsg ,szDataPath, szChangedPath);
return BACK; if (nRetv=BACK) then
return ;
endif; endif;
szDataPath=szChangedPath; szDataPath=szChangedPath;
bDatiPresenti = _CheckExistingData(szDataPath); bDatiPresenti = _CheckExistingData(szDataPath);
@ -150,8 +168,8 @@ begin
bConfirmdatapath=FALSE; bConfirmdatapath=FALSE;
endif; endif;
until (bConfirmdatapath); until (bConfirmdatapath);
endif;
return NEXT; return ;
end; end;
@ -160,11 +178,14 @@ end;
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
// **** Installi o aggiungi moduli ? // **** Installi o aggiungi moduli ?
function _AddOrOverwrite() function _AddOrOverwrite(nRet)
STRING szMsg[512]; STRING szMsg[512];
BOOL bJunk; BOOL bJunk;
NUMBER nRet;
begin begin
if !bInstallPrg then
return;
endif;
if bNuovaInst then if bNuovaInst then
szMsg= "Setup procedera' con l'installazione dei programmi di ambiente."; szMsg= "Setup procedera' con l'installazione dei programmi di ambiente.";
szMsg=szMsg + "Si desidera acquistare e abilitare nuovi moduli prima di installarli?"; szMsg=szMsg + "Si desidera acquistare e abilitare nuovi moduli prima di installarli?";
@ -183,7 +204,7 @@ begin
bInstallModules bInstallModules
); );
endif; endif;
return nRet; return ;
end; end;
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
@ -251,13 +272,14 @@ end;
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
// **** installazione postazione di rete // **** installazione postazione di rete
// **** // ****
function _NewNetWorkPlace( ) function _NewNetWorkPlace(nDirection )
STRING szText[ _MAX_LENGTH ]; STRING szText[ _MAX_LENGTH ];
NUMBER nGoOut, nRet, nResult, nDisk; NUMBER nGoOut, nRet, nResult, nDisk;
BOOL bRet; BOOL bRet;
begin begin
if (_TrovaPrgSuRete() =BACK) then nDirection = _TrovaPrgSuRete();
return BACK; if (nDirection =BACK) then
return ;
endif; endif;
bRet = _Verifica("Installare anche le librerie di CG ? "); bRet = _Verifica("Installare anche le librerie di CG ? ");
@ -290,8 +312,6 @@ begin
Delay(1); Delay(1);
FileSetEndPerform ( "SYS" ); FileSetEndPerform ( "SYS" );
_UpdateSysFiles(); _UpdateSysFiles();
_SetPathpref(); _SetPathpref();
ChangeDirectory( szAppPath); ChangeDirectory( szAppPath);
@ -299,12 +319,12 @@ begin
Disable( FEEDBACK_FULL ); Disable( FEEDBACK_FULL );
Disable(STATUS); Disable(STATUS);
return NEXT; return ;
end; end;
//---------------------------------- //----------------------------------
function _InstallazioneDati() function _InstallazioneDati(nDirection)
BOOL bReenterPath, bConfirmdatapath; BOOL bReenterPath, bConfirmdatapath;
STRING szTitle[_MAX_LENGTH]; STRING szTitle[_MAX_LENGTH];
STRING szPath[_MAX_LENGTH]; STRING szPath[_MAX_LENGTH];
@ -312,7 +332,10 @@ function _InstallazioneDati()
NUMBER nTmp; NUMBER nTmp;
begin begin
if !bInstallData then
return;
endif;
nDirection=BACK;
TARGETDIR = szDataPath; // i .z hanno gia' il sottodirettorio nel nome di file TARGETDIR = szDataPath; // i .z hanno gia' il sottodirettorio nel nome di file
if ( CreateDir( TARGETDIR ) < 0 ) then if ( CreateDir( TARGETDIR ) < 0 ) then
_Attenzione( STR_DATA_DIR_NOTCREATED ); _Attenzione( STR_DATA_DIR_NOTCREATED );
@ -325,11 +348,9 @@ begin
SetColor(STATUSBAR,BLUE); SetColor(STATUSBAR,BLUE);
Enable(FEEDBACK_OPERATION); Enable(FEEDBACK_OPERATION);
Enable(STATUS); Enable(STATUS);
SetStatusWindow( 0, "Installazione dati in corso..." );
// ******** installa dati DEMO ? // ******** installa dati DEMO ?
if bInstallDemoData then if bInstallDemoData then
szTitle = "Installazione dati dimostrativi su " + szDataPath; szTitle = "Installazione dati dimostrativi su " + szDataPath;
SetStatusWindow( 0, szTitle );
FileSetBeginDefine ( "DDEMO"); FileSetBeginDefine ( "DDEMO");
if ( CompressGet( "DATIDEMO.Z", "*.*", INCLUDE_SUBDIR ) < 0) then if ( CompressGet( "DATIDEMO.Z", "*.*", INCLUDE_SUBDIR ) < 0) then
szText = STR_ERR_DECOMPRESS + " il modulo Dati dimostrativi."; szText = STR_ERR_DECOMPRESS + " il modulo Dati dimostrativi.";
@ -337,12 +358,12 @@ begin
endif; endif;
FileSetEndDefine ( "DDEMO"); FileSetEndDefine ( "DDEMO");
StatusUpdate( ON, 100 ); StatusUpdate( ON, 100 );
SetStatusWindow( 0, szTitle );
_PerformSet ( "DDEMO"); _PerformSet ( "DDEMO");
// ******** installa dati autoformazione ? // ******** installa dati autoformazione ?
elseif bInstallAutoform then elseif bInstallAutoform then
szTitle = "Installazione dati di autoformazione su " + szDataPath; szTitle = "Installazione dati di autoformazione su " + szDataPath;
SetStatusWindow( 0, szTitle );
FileSetBeginDefine ( "DAUTO"); FileSetBeginDefine ( "DAUTO");
if ( CompressGet( "DATIAUTO.Z", "*.*", INCLUDE_SUBDIR ) < 0) then if ( CompressGet( "DATIAUTO.Z", "*.*", INCLUDE_SUBDIR ) < 0) then
szText = STR_ERR_DECOMPRESS + " il modulo Dati di autoformazione."; szText = STR_ERR_DECOMPRESS + " il modulo Dati di autoformazione.";
@ -350,6 +371,7 @@ begin
endif; endif;
FileSetEndDefine ( "DAUTO"); FileSetEndDefine ( "DAUTO");
StatusUpdate( ON, 100 ); StatusUpdate( ON, 100 );
SetStatusWindow( 0, szTitle );
_PerformSet ( "DAUTO"); _PerformSet ( "DAUTO");
// ******** installa dati iniziali ditte // ******** installa dati iniziali ditte
@ -392,15 +414,17 @@ begin
CreateFile( nTmp, szPath, DATATYPE_FILE); CreateFile( nTmp, szPath, DATATYPE_FILE);
WriteLine(nTmp,sInstType); WriteLine(nTmp,sInstType);
CloseFile( nTmp ); CloseFile( nTmp );
nDirection=NEXT;
end; end;
//---------------------------------- //----------------------------------
function _InstallazioneMinima() function _InstallazioneMinima(nRetv)
BOOL bReenterPath, bConfirmdatapath; BOOL bReenterPath, bConfirmdatapath;
STRING sTmp[32],sPath[64]; STRING sTmp[32],sPath[64];
begin begin
if bInstallPrg then
if bInstallEnv || bInstallDemo then
_ForceAttrib4Dll( ); _ForceAttrib4Dll( );
// Effettua la vera e propria installazione minima // Effettua la vera e propria installazione minima
_DeleteFilesMinima( ); _DeleteFilesMinima( );
@ -421,16 +445,9 @@ begin
_SetPathpref(); _SetPathpref();
// IlMiticoINST.EXE: //( Trice.exe cb0000.exe ): nRetv=NEXT;
// E' stato spostato come post-process della CG endif;
// if bNuovaInst then endif;
// if nInstallCG then
// ChangeDirectory( szAppPath);
// szRunProgram = szAppPath ^ "\\INST.EXE";
// LaunchAppAndWait( szRunProgram , szAppPath, WAIT );
// endif;
// endif;
return NEXT;
end; end;
function _Ask4Purchase() function _Ask4Purchase()
@ -441,3 +458,110 @@ begin
return NEXT; return NEXT;
end; end;
// sceglie il tipo di chiave (locale o server)
function _ChooseDongleServer(nRetv)
BOOL bJunk;
begin
if !bInstallDemo then
if bInstallDongleServer then
bUseDongleServer=FALSE;
else
nRetv = AskOptions(EXCLUSIVE,"I programmi sono protetti da una chiave hardware.\nIl controllo delle autorizzazioni va effettuato:",
"tramite chiave locale",
bJunk,
"tramite un server di chiavi",
bUseDongleServer
);
endif;
else
bUseDongleServer=FALSE;
endif;
return nRetv;
end;
function _WhereIsDongleServer(nDirection)
NUMBER lResult;
NUMBER listID;
NUMBER nRetv;
STRING szTempore[_MAX_LENGTH];
BOOL bJunk;
begin
if !bUseDongleServer then
return;
endif;
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);
if nDirection=BACK then
szDongleServerName=szTempore;
endif;
return ;
end;
function _ChiediDestDongleServer(nDirection)
NUMBER nItems;
NUMBER lResult;
NUMBER listID;
NUMBER nRetv;
STRING szTempore,szStartFolder;
BOOL bJunk;
begin
if !bInstallDongleServer then
return;
endif;
RegDBSetDefaultRoot(HKEY_CURRENT_USER);
if RegDBGetKeyValueEx("\\.Default\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders","Startup",lResult,szAutoRunFolder,nItems) < 0 then
// Registry access failed (16 bit DLL?)
szAutoRunFolder="";
// try to determine the folder by names...
listID = ListCreate(STRINGLIST);
if (GetGroupNameList(listID)<0) then
MessageBox("Can't get the folders list",SEVERE);
endif;
lResult= ListGetFirstString(listID,szTempore);
while (lResult != END_OF_LIST)
lResult = ListGetNextString(listID,szTempore);
if szTempore = "Esecuzione Automatica" then
szAutoRunFolder=szTempore;
endif;
if szTempore = "Startup" then
szAutoRunFolder=szTempore;
endif;
endwhile;
if szAutoRunFolder="" then
_Attenzione("Non riesco a determinare la cartella di Esecuzione Automatica di Windows");
repeat
szStartFolder="";
nDirection=SelectFolder("Cartella di Esecuzione Automatica",szAutoRunFolder,szAutoRunFolder);
if nDirection = BACK then
return;
endif;
if QueryProgGroup(szAutoRunFolder,szStartFolder,nItems) then
_Attenzione("La cartella indicata non fa parte delle cartelle programmi di Windows");
nDirection=BACK;
endif;
until nDirection=NEXT;
endif;
endif;
return ;
end;
function _InstallDongleServer(nDirection)
STRING szTempore;
begin
if !bInstallDongleServer then
return;
endif;
TARGETDIR = szAppPath;
szTempore = szAppPath ^ "\\frontend.exe";
AddFolderIcon( szAutoRunFolder, "Frontend", szTempore, "", szTempore, 0, "", REPLACE );
end;

View File

@ -24,6 +24,9 @@ begin
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");
if (bUseDongleServer) then
WriteProfString(szTmpPath, "Server", "Dongle" , szDongleServerName);
endif;
end; end;
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
@ -89,7 +92,7 @@ begin
ConfigSetFileName( szTemp ); ConfigSetFileName( szTemp );
szWin_Ini = szSaveDir ^ "WIN.PRA"; szWin_Ini = szSaveDir ^ "WIN.PRA";
endif; endif;
if (szOSName != "3.95") then if (szOSName = "Windows") then
EzBatchReplace( STR_SHARE ); EzBatchReplace( STR_SHARE );
endif; endif;
EzBatchReplace( STR_TEMP ); EzBatchReplace( STR_TEMP );
@ -215,7 +218,6 @@ begin
Enable(FEEDBACK_OPERATION); Enable(FEEDBACK_OPERATION);
Enable(STATUS); Enable(STATUS);
SetStatusWindow( 0, "Installazione programmi di ambiente in corso..." );
FileSetBeginDefine ( "WIN"); FileSetBeginDefine ( "WIN");
TARGETDIR = WINDIR ^ "SYSTEM"; TARGETDIR = WINDIR ^ "SYSTEM";
@ -253,8 +255,11 @@ begin
StrToUpper( szAppPath, szAppPath ); StrToUpper( szAppPath, szAppPath );
szStatusText = "Installazione su " + szAppPath; szStatusText = "Installazione su " + szAppPath;
StatusUpdate( ON, 50 ); StatusUpdate( ON, 50 );
SetStatusWindow( 0, "Installazione librerie e programmi di ambiente ..." );
_PerformSet ( "WIN"); _PerformSet ( "WIN");
StatusUpdate( ON, 100 ); StatusUpdate( ON, 100 );
SetStatusWindow( 50, "Installazione programmi di base .." );
_PerformSet ( "BA"); _PerformSet ( "BA");
szTemp = szAppPath ^ "RECDESC"; szTemp = szAppPath ^ "RECDESC";
@ -359,7 +364,11 @@ begin
ShowGroup (szFolder , SW_NORMAL ); ShowGroup (szFolder , SW_NORMAL );
if ( TRUE) then if ( TRUE) then
// Aggiunge EasyCAMPO Program Manager // Aggiunge EasyCAMPO Program Manager
if bInstallDemo then
szItemName = "EasyDEMO";
else
szItemName = "EasyCAMPO"; szItemName = "EasyCAMPO";
endif;
szCmdLine = szAppPath ^ "\\BA0.EXE"; szCmdLine = szAppPath ^ "\\BA0.EXE";
szIconPath = szCmdLine; szIconPath = szCmdLine;
AddFolderIcon( szFolder, szItemName, szCmdLine, "", szIconPath, 0, "", REPLACE ); AddFolderIcon( szFolder, szItemName, szCmdLine, "", szIconPath, 0, "", REPLACE );

View File

@ -81,9 +81,10 @@ begin
end; end;
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
function _SettaFlagNet( ) function _SettaFlagNet( nDirection)
begin begin
return AskOptions(EXCLUSIVE, "L'installazione sul PC puo' essere indipendente o basarsi su una installazione su server di rete. \n I programmi di EasyCAMPO ",
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 ",
"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;
@ -147,7 +148,7 @@ begin
szAuto = ""; szAuto = "";
szConf = ""; szConf = "";
szWinIni = ""; szWinIni = "";
if (szOSName != "3.95") then if (szOSName = "Windows") then
szAuto = szAuto + STR_SHARE; szAuto = szAuto + STR_SHARE;
szAuto = szAuto + "\n"; szAuto = szAuto + "\n";
endif; endif;
@ -256,7 +257,7 @@ function _RemoveHDLOCK( )
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 != "3.95") then // if (szOSName != "Windows") then
// DeleteFile("HARDLOCK.VXD"); // DeleteFile("HARDLOCK.VXD");
// endif; // endif;
end; end;

View File

@ -135,7 +135,7 @@ function _GetOSName( )
begin begin
VarSave(SRCTARGETDIR); VarSave(SRCTARGETDIR);
TARGETDIR = WINDIR ^ "SYSTEM"; TARGETDIR = WINDIR ^ "SYSTEM";
GetSystemInfo(WINMAJOR,nResult,szOSName); GetSystemInfo(OS,nResult,szOSName);
VarRestore(SRCTARGETDIR); VarRestore(SRCTARGETDIR);
end; end;