
10-29-2007
|
|
|
|
L'interfaccia grafica di Vista diventa instabile...
Ciao a tutti,
in questi giorni stavo testando su Vista alcune applicazioni vb6 sviluppate
dalla nostra azienda che solitamente girano su Win2000 e WinXP ed ho
rilevato un serio problema di instabilità dell'interfaccia grafica di Vista.
Dopo aver fatto tutta una serie di modifiche ai programmi che mandano in
crisi l'interfaccia grafica di Vista, pensando che il problema fosse dovuto
all'utilizzo di API per la gestione dell'icona nella traybar, piùttosto che
per la gestione del trace su un listbox, ho scoperto che la causa del
problema era molto più banale di quello che credevo.
A questo punto ho creato un progettino vb6 (sorgenti ed eseguibile nel
file.zip allegato) che dopo neanche un'ora di funzionamento ha confermato la
mia ipotesi:
- la combinazione di aggiornamento della caption del form, fatta una volta
al secondo tramite un timer, e l'inserimento di un messaggio di trace in un
listbox (che mantiene le ultime 100 righe inserite) è la causa che genera
una instabilità tale dell'interfaccia grafica di Vista che non lasciano
altra soluzione che il reset del pc, in quanto non si riesce più a prendere
il controllo del sistema operativo.
La cosa che mi ha lasciato perplesso è stata quella di rilevare che la mia
applicazione continuasse a funzionare correttamente, senza nessun problema
(il progetto di test allegato è banale, ma il programma che ha scatenato
questa ricerca esegue un colloquio via tcp/ip con dei terminali radio ed
effettua delle elaborazioni su database in continuo).
Al momento l'unica soluzione è stata quella di commentare la parte di codice
che effettua l'aggiornamento della caption del form, sostiutendola con una
label all'interno del form stesso.
Peccato che anche l'aggiornamento dell'icona visualizzata nella traybar
genera lo stesso tipo di problema, quindi mi tocca modificare i programmi
per segnalare in un altro modo lo stato di attività del programma (sono
programmi automatici che girano su pc di reparto e che devono segnalare
all'operatore eventuali situazioni di allarme).
Qualcuno di voi ha mai rilevato un problema simile ?
Sapete dirmi se con il prossimo SP1 ci saranno dei miglioramenti nella
gestione della compatibilità dei vecchi programmi che giravano con il motore
GDI rispetto al nuovo motore grafico di Vista ?
Grazie in anticipo per l'aiuto e buona giornata,
Paolo Cosentino
|