Shutdown

lunedì 24 maggio 2004 - 10.52

hydra Profilo | Junior Member

Ciao a tutti, eccomi qua con un nuovo problema. La mia applicazione verrà inserita in una rete molto semplice, dove i comandi scambiati con il server sono contenuti su un file di lettura/scrittura. Uno dei comandi che il server può inviarmi e "shutdown". Ora, posso io da codice, una volta riconosciuto questo comando, chiudere la mia applicazione e spegnere il pc? un grazie anticipato a tutti.

Brainkiller Profilo | Guru

Si sicuramente.
Devi usare l'interoperabilità e richiamare la API di Windows ExitWindowsEx che ti permette di fare un logoff dell'utente loggato, di riavviare il PC o addirittura di spegnerlo forzando la chiusura di tutte le applicazioni.

Hai mai usato l'interoperabilità ?

ciao
david

hydra Profilo | Junior Member

A dire la verità è la prima volta che la sento nominare, scusa la mia ignoranza. Allora in pratica fa la stessa cosa del comando shutdown di win? Infatti io pensavo di usare questo tool, ma la soluzione da codice mi sembra molto più elegante.

Brainkiller Profilo | Guru

L'ambiente e l'architettura .NET sono completamente nuovi e condividono poco o niente rispetto all'architettura precedente basata su COM e API. Le API sono delle funzioni base del sistema operativo contenute in diverse DLL chiave (user32.dll, kernel32.dll ecc.)
Con .NET non è necessario usarle perchè si fa riferimento al Framework e alle classi messe a disposizioni. Le classi del Framework però non coprono tutto e quindi è necessario a volte utilizzare delle API del sistema operativo. Per fare questo bisogna ricorrere all'interoperabilità.
Cioè nel Framework esistono delle classi che ti permettono di interfacciarti a queste funzioni API che ti permettono in pratica di fare ciò che vuoi. Una di queste, quella che ho indicato, serve per spegnere il PC.

Entro sera o entro domani dovrei riuscire a buttare giù un Tip con le istruzioni necessarie per fare ciò che vuoi. Se puoi attendere un paio di giorni lo trovi in home page.

ciao
david

hydra Profilo | Junior Member

Certo, non è un problema imminente ma siccome dovrò sicuramente usufruirne attendo il tip. Grazie mille della disponibilità.
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-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5