Ciao a tutti, sto cercando di preparare un minitool che mi permetta di fare lo screening delle macchine in rete (ne esistono già tanti lo so, ma così posso gestirmi un mio database specifico e integrare in seguito funzioni ad hoc ).

Cmq in questa avventura per ora sono riuscito a fare accendere un pc, ora vorrei:

- riuscire a spegnerlo
- verificare che sia acceso

Per ora non ho indizi, ma voi sicuramente saprete come fare ...

update ---

Scavando scavando ho provato una procedura che dovrebbe funzionare. Usa il comando shutdown.exe verso un pc remoto

codice:
// crea il processo
            Process shutP = new Process();
            // imposta lo startup
            // argomenti e riferimento al client
            shutP.StartInfo.Arguments = "-s -f -t 00 -m \\" + client;
            
            // no finestra separata
            shutP.StartInfo.CreateNoWindow = false;
            //shutP.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
            
            // applicazione
            shutP.StartInfo.FileName = "c:\\windows\\system32\\shutdown.exe";
            
            // avvia il processo
            shutP.Start();

            // attende 10 secondi e verifica che il processo sia uscito altrimenti lo spegne
            shutP.WaitForExit(10000);
            if (!shutP.HasExited)
                shutP.Kill();
            shutP.Close();
Sebbene il comando provato da console funzioni e spenga il pc selezionato, la procedura riportata non funziona runtime.
Ho anche provato a lanciare un altro eseguibile, come il paint .net e va alla grande.
Debuggando il processo noto che ritorna un ExitCode 53 che nn so che significhi. Avete idee?

Grazie e rigrazie