Patch level :

Files correlati     :
Ricompilazione Demo : [ ]
Commento            :
Risolti conflitti


git-svn-id: svn://10.65.10.50/trunk@8413 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 1999-07-21 09:41:56 +00:00
parent 4ab2626121
commit 45b1afe173
7 changed files with 85 additions and 47 deletions

View File

@ -637,7 +637,7 @@ public:
virtual TForm_item* create_item(const TString& typ);
// @cmember Ritorna il numero di campi da stampare
word fields() const
{ return word(_item.items()); }
{ return _item.items(); }
// @cmember Ritorna il numero di campi stampabili (0 se non e' COLUMNWISE)
word columns()
{ tab(0); return _nfld; }
@ -841,7 +841,7 @@ public:
{ return _effective_height; }
// @cmember Imposta l'altezza effettiva del campo
virtual void set_effective_height(int val)
{ _effective_height=short(val); }
{ _effective_height=val; }
// @cmember Formatta la stringa <p s>. Funzione che per default non fa nulla.
// Ridefinita solo per TForm_number e TForm_string.
virtual void apply_format(TString & s) const {}

View File

@ -1452,8 +1452,8 @@ int TIsamtempfile::open(
filename.ext("dbf");
if (err == -60)
{
if (access(filename,0)) // check for existence
fatal_box("Apertura file %s : errore n. %d. File non esistente.",(const char*) filename,err);
if (!filename.exist())
fatal_box("Apertura file %s : errore n. %d. File non esistente.",(const char*)filename,err);
else
fatal_box("Apertura file %s : errore n. %d. File aperto in uso esclusivo da un'altra applicazione.",(const char*)filename,err);
}

View File

@ -21,7 +21,6 @@
#define MOV_REG "REG"
#define MOV_PROTIVA "PROTIVA"
#define MOV_UPROTIVA "UPROTIVA"
#define MOV_MESELIQ "MESELIQ"
#define MOV_CODVAL "CODVAL"
#define MOV_CAMBIO "CAMBIO"
#define MOV_CONTROEURO "CONTROEURO"

View File

@ -3,6 +3,7 @@
#include <os_dep.h>
#include <commdlg.h>
#include <winver.h>
#include <ctype.h>
@ -415,15 +416,17 @@ bool os_get_image_editor_path(TFilename& name)
os_type os_get_type()
{
os_type t = os_Unknown;
OSVERSIONINFO ovi;
GetVersionEx(&ovi);
os_type t;
switch (ovi.dwPlatformId)
if (GetVersionEx(&ovi))
{
case VER_PLATFORM_WIN32s : t = os_Win32s; break;
case VER_PLATFORM_WIN32_NT : t = os_WindowsNT; break;
case VER_PLATFORM_WIN32_WINDOWS: t = os_Windows95; break;
default : t = os_Unknown; break;
switch (ovi.dwPlatformId)
{
case VER_PLATFORM_WIN32s : t = os_Win32s; break;
case VER_PLATFORM_WIN32_NT : t = os_WindowsNT; break;
case VER_PLATFORM_WIN32_WINDOWS: t = os_Windows95; break;
default : t = os_Unknown; break;
}
}
return t;
}
@ -537,6 +540,41 @@ bool os_dongle_server_running()
return a != 0;
}
bool os_test_network_version()
{
if (os_get_type() == os_Windows95)
{
char* VREDIRNAME = "vredir.vxd";
DWORD handle;
DWORD dwSize = GetFileVersionInfoSize(VREDIRNAME,&handle);
if (dwSize)
{
BYTE infoBuffer[512];
GetFileVersionInfo(VREDIRNAME,handle,dwSize,infoBuffer);
long *language;
void * lpBuffer;
UINT Size;
if (VerQueryValue(infoBuffer, "\\VarFileInfo\\Translation", (void **)&language, &Size) && Size!=0)
{
char szName[128];
sprintf(szName, "\\StringFileInfo\\%04x%04x\\FileVersion",LOWORD(*language), HIWORD(*language));
if (VerQueryValue(infoBuffer, szName, &lpBuffer, &Size) && Size!=0)
{
TToken_string v((const char *)lpBuffer,'.');
int subver=atoi(v.get(2));
if (subver >=1111 && subver <=1115)
return error_box("La versione %s del driver di rete '%s' contiene un bug riconosciuto da Microsoft.\nConsultare la documentazione sul sito AGA per eliminare questo inconveniente.",(const char *)lpBuffer, VREDIRNAME);
else
return TRUE;
}
}
}
message_box("Impossibile determinare la versione del driver di rete '%s'",VREDIRNAME);
}
return TRUE;
}
HIDDEN const char* _file_to_find = NULL;
struct TFindWindowInfo
@ -619,4 +657,3 @@ unsigned long os_execute_in_window(const TFilename& path, WINDOW win)
return (unsigned long) w._hwnd;
}

View File

@ -23,10 +23,11 @@ void set_std_level(const long l)
// @rdesc Numero di serie della chiave
int get_serial_number()
{
bool ok = dongle().ok();
TDongle& din = dongle();
bool ok = din.ok();
if (!ok)
ok = dongle().login();
return ok ? int(dongle().number()) : -1;
ok = din.login();
return ok ? int(din.number()) : -1;
}
bool test_assistance_year()

View File

@ -263,7 +263,7 @@ TString& TString::operator <<(double n)
// Appends an object to the string
// Certified 50%
// The object should be completely storable in _spark
// The object should be completely storable in spark
TString& TString::operator <<(const TObject& obj)
{
TString256 spark;
@ -479,8 +479,8 @@ const TString& TString::left(
// @rdesc Ritorna l'indirizzo della stringa contenente i <p count> caratteri da sinistra
{
_spark.strncpy(_str, count);
return _spark;
spark.strncpy(_str, count);
return spark;
}
// Certified 99%
@ -494,8 +494,8 @@ const TString& TString::right(
{
int from = len()-count;
if (from < 0) from = 0;
_spark = _str + from;
return _spark;
spark = _str + from;
return spark;
}
@ -522,8 +522,8 @@ const TString& TString::mid(
if (from > l) from = l;
if (count < 0 || from+count>l)
count = l-from;
_spark.strncpy(&_str[from], count);
return _spark;
spark.strncpy(&_str[from], count);
return spark;
}
@ -738,9 +738,9 @@ TString& TString::right_just(
{
if (n < 0) n = size();
trim();
_spark = _str;
spark = _str;
fill(c, n);
overwrite(_spark, n-_spark.len());
overwrite(spark, n-spark.len());
return *this;
}
@ -760,10 +760,10 @@ TString& TString::center_just(
{
if (n < 0) n = size();
trim();
_spark = _str;
spark = _str;
fill(c, n);
const int p = (n-_spark.len()) >> 1;
overwrite(_spark, p);
const int p = (n-spark.len()) >> 1;
overwrite(spark, p);
return *this;
}
@ -783,9 +783,9 @@ TString& TString::left_just(
{
if (n < 0) n = size();
trim();
_spark = _str;
spark = _str;
fill(c, n);
overwrite(_spark, 0);
overwrite(spark, 0);
return *this;
}
@ -815,7 +815,7 @@ TString& TString::picture(
return *this;
}
// Certified 90% (_spark size limited)
// Certified 90% (spark size limited)
// @doc EXTERNAL
// @mfunc Manda un output formattato alla stringa oggetto
@ -828,12 +828,12 @@ TString& TString::format(
{
va_list pars;
va_start(pars, fmt);
const int tot = vsprintf(_spark.get_buffer(), fmt, pars);
const int tot = vsprintf(spark.get_buffer(), fmt, pars);
va_end(pars);
CHECK(tot >= 0 && tot < _spark.size(), "Ue'! Quanto scrivi?");
CHECK(tot >= 0 && tot < spark.size(), "Ue'! Quanto scrivi?");
if (tot > size()) resize(tot, FALSE);
strcpy(_str, _spark);
strcpy(_str, spark);
return *this;
}
@ -948,9 +948,9 @@ TString& TString::insert(
{
const int l = strlen(s);
make_room(l);
mid(pos); // Scrivi in _spark la stringa da pos in poi
mid(pos); // Scrivi in spark la stringa da pos in poi
overwrite(s, pos); // Aggiungi s
strcpy(&_str[pos+l], _spark); // Aggiungi _spark
strcpy(&_str[pos+l], spark); // Aggiungi spark
}
return *this;
}
@ -1022,7 +1022,7 @@ TString& TFixed_string::format(
// @comm Funziona come la funzione "sprintf" standard del C e ritorna la
// stringa formattata con i parametri passati.
// <nl>E' piu' efficiente di <mf TString::format> poiche' non usa _spark
// <nl>E' piu' efficiente di <mf TString::format> poiche' non usa spark
{
va_list pars;
va_start(pars, fmt);
@ -1083,8 +1083,8 @@ const char* TFilename::name() const
if (_str[i] == '/' || _str[i] == '\\' || _str[i] == ':')
break;
_spark.strncpy(&_str[i+1], start-i);
return _spark;
spark.strncpy(&_str[i+1], start-i);
return spark;
}
// Certified 95%
@ -1096,8 +1096,8 @@ const char* TFilename::path() const
for (int i = start; i >= 0; i--)
if (_str[i] == '/' || _str[i] == '\\' || _str[i] == ':')
break;
_spark.strncpy(_str, i+1);
return _spark;
spark.strncpy(_str, i+1);
return spark;
}
@ -1454,13 +1454,13 @@ const char* TToken_string::get(
char* p = strchr(s, _separator);
if (p == NULL)
{
_spark = s;
spark = s;
_last = -1;
}
else
{
*p = '\0';
_spark = s;
spark = s;
*p = _separator;
_last = (int)((const char*)p - _str) + 1;
}
@ -1471,7 +1471,7 @@ const char* TToken_string::get(
return NULL;
}
return _spark;
return spark;
}
// Certified 99%
@ -1614,9 +1614,9 @@ bool TToken_string::set_item(const char* v, int n)
int e = find(_separator, i);
if (e < 0) e = len();
_spark = &_str[e]; // Salva items seguenti
cut(i); // Considera solo items precedenti
*this << v << _spark; // Aggiunge item desiderato e seguenti
spark = _str+e; // Salva items seguenti
cut(i); // Considera solo items precedenti
*this << v << spark; // Aggiunge item desiderato e seguenti
return TRUE;
}

View File

@ -10,6 +10,7 @@
#endif
#define SAFE_PIPE_CHR '¦'
// @doc EXTERNAL
// @class Classe per la definizione della stringhe