Chiusura Console Application su Windows XP

giovedì 27 dicembre 2012 - 11.21
Tag Elenco Tags  .NET 3.5  |  Windows XP  |  Visual Studio 2008

marco.morgia Profilo | Junior Member

Buongiorno a tutti e buone feste passate,

allora vi spiego il mio problema. Ho realizzato un'applicazione console che riceve dati da un convertitore USB seriale ( ovviamente a monte è collegato un'apparecchiatura per la trasmissione di dati ). Il mio problema è che su Windows XP, quando voglio spegnere il computer, la mia applicazione và in crash e sono pbbligato a terminarla manualmente. Su altri SO il problema non si presenta in quanto è lo stesso SO a killare la mia applicazione.

Al momento la soluzione più plausibile è quella di crare un file .bat che interrompa forzatamente la mia console application al momento dello shutdown del sistema.

Vorrei sapere se qualcuno è riuscito a risolvere il problema diversamente.

Grazie

full98 Profilo | Newbie

Ho cercato su internet ed ho scritto qualche riga di codice per intercettare gli eventi di Windows e quindi farlo sapere al programma (cosa più complicata per console)
Ti avviso che non ho testato il codice (non avendo XP sotto mano)

Non credo ci sia molto da spiegare, la classe WindowsMessage intercetta gli eventi di Windows basandosi sull'interfaccia IMessageFilter, quando intercetta l'evento di shoutdown, richiama l'evento SystemShoutdown dove puoi fare tutte le tue operazioni. Nell'esemp ho messo qualche richiamo a programmi di windows, ma nel tuo caso puoi provvedere a chiudere l'applicazione, per una chiusura corretta.

L'unica operazione manuale da fare è includere System.Windows.Form nei riferimenti del progetto.

Spero di esserti stato di aiuto.
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5