// File di include con le dichiarazioni per DECLARE.RUL declare #define TITLE_FONTSIZE_USE 64 // Dichiarazione di variabili NUMBER nInstallBA; NUMBER nFileSpaceBA; BOOL bInstPresente, bNuovaInst, bDatiPresenti; BOOL bIsNet; BOOL bProgrammiServer; BOOL bCannotExecute; NUMBER nSystemFileModified; STRING szAppPath[ _MAX_LENGTH ]; // szAppPath e' la directory dove la applicazione verra' installata STRING szAppRefPath[ _MAX_LENGTH ]; // szAppRefPath e' la directory dei programmi di una installazione di rete // che fa da riferimento per la sincronizzazione di tutte le postazioni di rete con installazione dei prg in locale STRING szConfigPath[ _MAX_LENGTH ]; // szConfigPath e' la directory dei files di configurazione per la postazione di lavoro in rete con installazione // dei prg su disco di rete (e' dove risiede il campo.ini utilizzato) STRING szDataPath[ _MAX_LENGTH ]; // szDataPath e' la directory dove risiederanno i dati STRING szDongleServerName[ _MAX_LENGTH ]; // nome della macchina server delle chiavi STRING szAutoRunFolder[ _MAX_LENGTH ]; STRING szDisk [_MAX_LENGTH]; STRING szBitmapFile [_MAX_LENGTH]; STRING szTmp[_MAX_LENGTH]; STRING szTmp2[_MAX_LENGTH]; STRING szRunProgram[_MAX_LENGTH]; NUMBER nTmp; NUMBER nInstallDiskSpace; NUMBER nDataDiskSpace; // szGroupName e' il nome del gruppo STRING szGroupName[ _MAX_LENGTH]; STRING szOSName; BOOL bSCREENSAVER; BOOL bIsWin95; #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_INVALID_PATH "Il percorso indicato non e' valido.\nIndicare un altro percorso.\n" #define STR_TEXT1 "I programmi verranno installati nella directory :" #define STR_TEXTSER1 "I programmi sono installati nella directory :" #define STR_DATATEXT1 "I dati verranno installati nella directory :" #define STR_ENT_DISK "Inserire il disco " #define STR_TAGDISK1 "BA" #define STR_DIR_READONLY "Impossibile scrivere nella directory scelta per i programmi." #define STR_DIR_NOTCREATED "Impossibile creare la directory specificata per i programmi." #define STR_NOTENUFROOM "Lo spazio su disco e' insufficiente per l'installazione dei programmi." #define STR_DATA_DIR_READONLY "Impossibile scrivere nella directory scelta per i dati." #define STR_DATA_DIR_NOTCREATED "Impossibile creare la directory specificata per i dati." #define STR_DATA_NOTENUFROOM "Lo spazio su disco e' insufficiente per l'installazione dei dati." #define STR_ERR_DECOMPRESS "E' stato riscontrato un errore cercando di decomprimere " #define STR_INSERTDISK "Inserire il disco etichettato :\n" #define STR_NOTENUFEXMEM "Memoria estesa insufficiente.\nNon e' possibile installare l'applicazione su macchine con meno di 32 Mb di memoria.\n" #define STR_NOTHINGTOINSTALL "Non e' stato selezionato alcun modulo." #define STR_NOTFIRST1 "Esiste una versione precedente nella directory %s. Confermando l'installazione nella directory indicata, la versione precedente sara' aggiornata. " #define STR_NOTFIRST2 "Si desidera cambiare directory e mantenere inalterata tale versione ?" #define STR_UPDATESPACE "Lo spazio potrebbe non essere sufficiente per effettuare l'aggiornamento del programma. Continuare ?" #define STR_DATA_UPDATESPACE "Lo spazio potrebbe non essere sufficiente per effettuare l'aggiornamento dei dati. Continuare ?" #define STR_NET "Si desidera utilizzare il programma in rete ?" #define STR_FILE_MODIFIED "Il file di sistema CONFIG.SYS e' stato modificato. Copia di backup di tale file e' stata creata nella directory %s e chiamata CONFIG.PRA" #define STR_FILE_NOTMODIFIED "Il file CONFIG.PRA e' stato creato nella directory %s." #define STR_SHARE "SHARE /F:5100 /L:500" #define STR_TEMP "SET TEMP=C:\\TMP" #define STR_MODSYSFILES "Il file CONFIG.SYS deve essere modificato." #define STR_MODIFY "Modifica automatica" #define STR_NOTMODIFY "Modifica manuale. Seguire l'esempio del file CONFIG.PRA" #define STR_INFOMODIFY "Visualizzazione delle modifiche." #define NUM_FILES_IN_CONFIG 200 #define INST_ENVIRONMENT "DITTA" #define INST_DEMO "DEMO" #define INST_AUTOFORM "AUTOFORM" #define INST_WORKPLACE "WORKPLACE" #define ZIP_DIRECTORY "ZIP" #define ZIPDEMO_DIRECTORY "ZIP" #define DEFAULT_LOCALPATH "C:\\Atwin32" #define DEFAULT_NETPATH "F:\\Atwin32" #define SELECTFOLDER_DIALOG 12008 // Prototipo delle funzioni // main prototype _ProgramPrologue( ); prototype _ProgramEpilogue( ); prototype _Benvenuto( ); prototype _CheckExistingInst(STRING);// controlla la presenza dell'applicazione prototype _CheckExistingData(STRING);// controlla la presenza dell'applicazione prototype _SelectSetupType(BYREF NUMBER); prototype _SelectSetupMode(BYREF NUMBER); prototype _SelectProgramDestination(BYREF NUMBER); prototype _SelectWhatToInstall(BYREF NUMBER); prototype _SelectNetConfig(BYREF NUMBER ); prototype _SelectDataDestination(BYREF NUMBER); prototype _SelectDataType( BYREF NUMBER); prototype _SelectDongleServer(BYREF NUMBER); prototype _FindAutoStartFolder(BYREF NUMBER); prototype _SelectDongleServerDestination(BYREF NUMBER); prototype _ConfirmInstallation(BYREF NUMBER ); prototype _InstallData(BYREF NUMBER); prototype _InstallInitialFiles(BYREF NUMBER); prototype _InstallServerAutoStart(BYREF NUMBER); prototype _ResetDongleServer(BYREF STRING); prototype _RestoreDongleServer(STRING); // first level prototype _ExitOnConfirm( ); prototype _PerformSet(STRING); prototype _DeleteFilesMinima(); prototype _InstallFilesMinima(); prototype _UpdateStartMenu( ); prototype _ChooseReinstall(BYREF NUMBER); prototype _IsNetworkDrive(STRING, BYREF BOOL); // 2nd level prototype _CanOverwrite( ); prototype _FilesDiSistema( ); prototype _CambiaDirectory( ); prototype _CreateDLG( STRING, INT, LONG ); prototype _FineInstallazione( ); prototype _SetCampoIni(); prototype _CopiaADMININI( ); prototype _CopiaINSTALLINI( ); // ************** // utility prototype _ShowExitDialog( NUMBER ); prototype _ForceAttrib4Dll( ); prototype _PreviewBatch( ); prototype _CercaFileOvunque( STRING ,BYREF STRING ); // ************** // utility prototype _Verifica( STRING ); prototype _Errore( STRING ); prototype _Attenzione( STRING ); prototype _Informazione( STRING ); prototype _DeSlash( STRING, BYREF STRING ); prototype _TCPIPPresent( ); prototype _GetOSName( ); prototype _GetTmpDir(BYREF STRING ); prototype _DisattivaScreenSaver( ); prototype _RiattivaScreenSaver( ); prototype _Cambia_Attributi(STRING); prototype _Check_Disk(STRING, STRING); prototype _MostraModelessDialog( ); prototype _SettaModelessDialog( STRING ); prototype _NascondiModelessDialog( ); prototype _RichiediMemoria( NUMBER ); prototype _NToStringKB( NUMBER, BYREF STRING );