1994-08-12 10:52:49 +00:00
|
|
|
#define __STDTYPES_CPP
|
|
|
|
|
1997-06-03 13:51:20 +00:00
|
|
|
#include <applicat.h>
|
1998-02-24 10:37:28 +00:00
|
|
|
#include <dongle.h>
|
1994-12-07 11:10:57 +00:00
|
|
|
#include <prefix.h>
|
1994-08-12 10:52:49 +00:00
|
|
|
|
1995-03-22 09:07:04 +00:00
|
|
|
HIDDEN long _stdlevel = 0;
|
|
|
|
|
1996-02-05 19:00:53 +00:00
|
|
|
// @doc INTERNAL
|
1996-01-31 17:19:02 +00:00
|
|
|
|
|
|
|
// @func Ritorna il livello degli archivi
|
1995-03-22 09:07:04 +00:00
|
|
|
long get_std_level()
|
|
|
|
{ return _stdlevel; }
|
1994-08-12 10:52:49 +00:00
|
|
|
|
1997-06-12 15:55:14 +00:00
|
|
|
// @func Setta il livello degli archivi
|
|
|
|
void set_std_level(const long l)
|
|
|
|
{ _stdlevel = l; }
|
|
|
|
|
1996-02-05 19:00:53 +00:00
|
|
|
// @doc INTERNAL
|
|
|
|
|
1996-01-31 17:19:02 +00:00
|
|
|
// @func Ritorna il numero di serie della chiave
|
|
|
|
//
|
|
|
|
// @rdesc Numero di serie della chiave
|
1998-02-13 13:53:42 +00:00
|
|
|
int get_serial_number()
|
|
|
|
{
|
1999-07-21 09:41:56 +00:00
|
|
|
TDongle& din = dongle();
|
|
|
|
bool ok = din.ok();
|
1998-02-13 13:53:42 +00:00
|
|
|
if (!ok)
|
1999-07-21 09:41:56 +00:00
|
|
|
ok = din.login();
|
|
|
|
return ok ? int(din.number()) : -1;
|
1994-12-07 11:10:57 +00:00
|
|
|
}
|
|
|
|
|
1998-01-27 10:25:05 +00:00
|
|
|
bool test_assistance_year()
|
1998-04-30 15:31:34 +00:00
|
|
|
{
|
1998-02-03 17:27:45 +00:00
|
|
|
#ifndef _DEMO_
|
1998-01-27 10:25:05 +00:00
|
|
|
int dongle_year = TDate(TODAY).year();
|
1998-02-03 17:27:45 +00:00
|
|
|
|
1998-02-13 13:53:42 +00:00
|
|
|
if (get_serial_number() > 0)
|
1998-02-03 17:27:45 +00:00
|
|
|
{
|
1998-02-13 13:53:42 +00:00
|
|
|
const int new_year = dongle().year_assist();
|
1999-04-06 15:34:39 +00:00
|
|
|
if (new_year >= 1997 && new_year <= dongle_year)
|
1998-02-03 17:27:45 +00:00
|
|
|
dongle_year = new_year;
|
1998-04-30 15:31:34 +00:00
|
|
|
}
|
|
|
|
|
1998-01-27 10:25:05 +00:00
|
|
|
int app_year, dum1, dum2, dum3;
|
|
|
|
bool ok = TApplication::get_version_info(app_year, dum1, dum2, dum3);
|
1998-04-30 15:31:34 +00:00
|
|
|
if (ok)
|
1998-01-27 10:25:05 +00:00
|
|
|
ok = app_year <= dongle_year;
|
|
|
|
return ok;
|
1998-02-03 17:27:45 +00:00
|
|
|
#else
|
|
|
|
return TRUE;
|
1998-04-30 15:31:34 +00:00
|
|
|
#endif // _DEMO_
|
1998-01-27 10:25:05 +00:00
|
|
|
}
|
|
|
|
|
1996-02-05 19:00:53 +00:00
|
|
|
// @doc INTERNAL
|
|
|
|
|
1996-01-31 17:19:02 +00:00
|
|
|
// @func Inizilizza le variabili globali
|
1994-08-12 10:52:49 +00:00
|
|
|
void init_global_vars()
|
1998-04-30 15:31:34 +00:00
|
|
|
{
|
1995-03-22 09:07:04 +00:00
|
|
|
TPrefix& pref = prefix_init();
|
1994-11-15 11:23:24 +00:00
|
|
|
|
1998-03-30 13:53:39 +00:00
|
|
|
pref.set(""); // Dati standard
|
1995-03-22 09:07:04 +00:00
|
|
|
_stdlevel = pref.filelevel();
|
1998-03-30 13:53:39 +00:00
|
|
|
pref.set("DEF"); // Ditta corrente
|
1994-08-12 10:52:49 +00:00
|
|
|
}
|
1996-02-05 19:00:53 +00:00
|
|
|
// @doc INTERNAL
|
1994-08-12 10:52:49 +00:00
|
|
|
|
1996-01-31 17:19:02 +00:00
|
|
|
// @func Dealloca le variabili globali
|
1994-08-12 10:52:49 +00:00
|
|
|
void free_global_vars()
|
1998-02-13 13:53:42 +00:00
|
|
|
{
|
|
|
|
destroy_dongle();
|
1998-03-30 13:53:39 +00:00
|
|
|
prefix_destroy();
|
1994-08-12 10:52:49 +00:00
|
|
|
}
|
|
|
|
|
1999-04-06 15:34:39 +00:00
|
|
|
|
1995-01-24 08:52:49 +00:00
|
|
|
|
|
|
|
|