Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2014
    Messaggi
    5

    [VB.NET]Spegnere PC da codice mentre è in standby (Win7)

    Ciao a tutti, sto lavorando ad una applicazione che spenga il PC dopo un tempo a scelta. Non ci sono errori veri e propri, ma il problema viene quando l'applicazione tenta di spegnere il computer che è entrato in modalità stand-by (dopo 30 min di inattività). Per arrestarlo so che basta scrivere Shell("shutdown -s -f") (-f per forzare l'arresto) oppure creare un file bat che contenga "shutdown -s -f" ed eseguirlo.
    Questo comando funziona quando il PC è attivo, ma se va in stand-by, il computer non viene arrestato fino a quando l'utente esce manualmente dallo stand-by.
    Esiste un modo per arrestare il sistema (mi sto riferendo a Win7) da codice mentre è in stand-by?

    Grazie per l'aiuto

  2. #2
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Non è più semplice disattivare il stand-by?
    Comunque, vedi qui:
    System Power Management Events (Windows)
    http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx


    Per semplicità, forse ti può aiutare una utility come WakeUpOnStandBy (http://www.dennisbabkin.com/wosb/)

    vedi anche
    http://www.megalab.it/4038/risveglia...alita-stand-by

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2014
    Messaggi
    5
    Quote Originariamente inviata da gibra Visualizza il messaggio
    Non è più semplice disattivare il stand-by?
    In effetti.. haha.
    Ho provato questo: http://forum.xda-developers.com/showthread.php?t=445700
    non mi da errori per fortuna, ma non l'ho ancora testato. Vi farò sapere

    Comunque, non volendo perdere i "benefici" dello stand-by ho deciso di impostare un timer che misura il periodo di inattività e dopo un certo punto spegne lo schermo. Per quanto riguarda lo spegnimento dello schermo nessun problema (vedi: http://www.dreamincode.net/forums/to...-off-your-lcd/), ma non so ancora bene come calcolare il lasso di tempo in cui il PC è inattivo. Se avete qualche idea fatemi sapere.

    Grazie, come sempre, dell'aiuto

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2014
    Messaggi
    5
    Ho provato, ma niente, il sistema va sempre in sospensione(stand-by)
    prova 1: http://forum.xda-developers.com/showthread.php?t=445700
    prova 2: http://forums.codeguru.com/showthrea...going-to-sleep

    Devo aprire una nuova discussione tipo "Disabilitare sospensione(stand-by) automatica Win7"?

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2014
    Messaggi
    5
    Se a qualcuno potrà servire, ho risolto con questo:
    In un modulo:

    Imports System.Runtime.InteropServices
    Imports Microsoft.Win32
    Module ferma_standby
    <FlagsAttribute()> _
    Public Enum EXECUTION_STATE As UInteger
    ES_SYSTEM_REQUIRED = &H1
    ES_DISPLAY_REQUIRED = &H2
    ES_CONTINUOUS = &H80000000UI
    End Enum

    <DllImport("Kernel32.DLL", CharSet:=CharSet.Auto, SetLastError:=True)> _
    Private Function SetThreadExecutionState(ByVal state As EXECUTION_STATE) As EXECUTION_STATE
    End Function

    Public Sub Standby()
    SetThreadExecutionState(EXECUTION_STATE.ES_SYSTEM_ REQUIRED)

    End Sub
    End Module

    Invece nell'evento tick di un timer con periodo < del tempo di standby automatico:

    Call ferma_standby.Standby()

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.