Buongiorno
pubblico questo resoconto per spiegare il motivo che ha causato il famigerato errore
ERRORE DI RUN-TIME "3343"
UNRECOGNIZED DATA-BASE FORMAT' C:\Documents and Settings\user1\Dati applicazioni\sogemait3_data\enti_controllo.mdb'
e la soluzione adottata in un caso specifico che ho avuto modo di analizzare direttamente.
Il manutentore che ha ricevuto questo messaggio, ha un sistema operativo win XP (sp3) e lavora tranquillamente con Sogemait 3.5.9...
Dopo aver installato l'aggiornamento alla versione 3.6.0 ha ricevuto sistematicamente la segnalazione di errore 3343 in particolare sul file enti_controllo.mdb...
Fino alla versione 3.5.9 Sogemait viene installato in C:\Programmi\SO.GE.MA.I.T.3 e lavora nella sua stesse cartella di installazione.
A partire dalla versione 3.6.0 la cartella di installazione resta la medesima C:\Programmi\SO.GE.MA.I.T.3 ma il programma lavora nella cartella sogemait3_data relativa all'account utente ad es. C:\Documents and Settings\user1\Dati applicazioni\sogemait3_data.
Questo passaggio avviene in maniera trasparente all'utente al primo avvio della versione 3.6.0: tecnicamente la 3.6.0 esegue un controllo di esistenza della cartella sogemait3_data nel percorso dell'utente connesso C:\Documents and Settings\user1\Dati applicazioni\ e se tale cartella non esiste, viene creata e in essa vengono copiati tutti i file di lavoro di Sogemait.
Cosa ha fatto il manutentore ?
Dopo numerose indagini che è stato possibile effettuare direttamente sul PC del manutentore, escludendo ad es. l'antivirus, si è capito che:
Il manutentore ha utilizzato per l'ultima volta il Sogemait 3.5.9 (prima di aggiornare alla 3.6.0) ma non ha chiuso correttamente il programma a causa di un blocco completo del PC che ha richiesto lo spegnimento.
Successivamente non ha più lanciato in esecuzione Sogemait 3.5.9 in quanto ha scaricato ed installato l'aggiornamento alla 3.6.0 con la conseguenza nota....
Cosa è successo nel sistema ?
Evidentemente a causa del blocco del PC e della chiusura non corretta del Sogemait 3.5.9, il file enti_controllo.mdb è rimasto aperto (comunque non chiuso correttamente); quindi, dopo l'aggiornamento e l'esecuzione di Sogemait 3.6.0, tale file non più leggibile è stato copiato nella nuova cartella utente di lavoro di Sogemait con il conseguente errore.
Come si è corretto l'errore?
- E stata cancellata interamente la cartella utente di lavoro: C:\Documents and Settings\user1\Dati applicazioni\sogemait3_data;
La cartella C:\Documents and Settings\user1\Dati applicazioni\ è una cartella di sistema e pertanto non risulta visibile all'utente; per accedervi è necessario spuntare la voce 'Visualizza cartelle e file nascosti' e deselezionare la voce 'Nascondi i file protetti e di sistema' presenti nel menu' di explorer 'Strumenti'--> 'Opzioni cartella' --> 'Visualizzazione'
- E' stato ripristinato l'eseguibile di Sogemait 3.5.9 ( le copie di backup servono !) nella cartella C:\Programmi\SO.GE.MA.I.T.3 e lanciato in esecuzione per permettere la chiusura corretta dei file;
- E' stato nuovamente aggiornato Sogemait alla versione 3.6.0 e quindi lanciato in esecuzione correttamente.
Conclusione
Questo caso è da considerarsi
caso specifico e quindi non rappresenta la soluzione definitiva ai problemi segnalati in questo argomento di discussione relativamente all'errore di runtime 3343.
In ogni caso, ritengo che, portare a conoscenza degli utenti, i meccanismi di funzionamento delle varie release di Sogemait, possa contribuire a capire le cause di eventuali errori e malfunzionamenti che non sono replicabili in condizioni di normalità di utilizzo e a studiarne le possibilità di risoluzione.
Grazie per la collaborazione e Buon lavoro a tutti