Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [VB6] - Spegnere monitor

    Esiste un comando per disattivare il monitor (come l'opzione di windows "spegni monitor dopo n minuti"), possibilmente senza l'utilizzo delle API?
    Ciao
    Grazie

  2. #2
    Senza api nn ho trovato niente...

    Cmq anche se il codice utilizza le api è molto semplice

    prima definisci questa api e le 2 costanti
    codice:
    Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
    Private Const WM_SYSCOMMAND = &H112&
    Private Const SC_MONITORPOWER = &HF170&
    e po richiami la funzione con

    codice:
    SendMessage Me.hWnd, WM_SYSCOMMAND, SC_MONITORPOWER, 1&

  3. #3
    Purtroppo non puoi farlo senza ricorrere alle API... VB non può fare tutto :-)
    Se sei agli inizi, ti incoraggio ad usare le API. Sono un'ottimo strumento, non sono troppo complicate da capire e ti
    aiutano spesso in situazioni come questa in cui VB non può fare nulla.

    Se ti ho convinto, dai un'occhiata a questo codice:


    Private Declare Sub Sleep Lib "kernel32.dll" (ByVal dwMilliseconds As Long)
    Private Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByRef lParam As Any) As Long

    Const WM_SYSCOMMAND As Long = &H112
    'Const SC_MONITORPOWER = &HF170 ' per Win 98/ME
    Const SC_MONITORPOWER = &HF170& ' per Win2k/XP


    Private Sub Command1_Click()

    Const TURN_OFF = 2&
    Const STAND_BY = 1& ' mette in standby
    Const TURN_ON = -1&

    SendMessage Me.hwnd, WM_SYSCOMMAND, SC_MONITORPOWER, ByVal TURN_OFF ' spegne

    Sleep 2000 ' attende 2 secondi
    SendMessage Me.hwnd, WM_SYSCOMMAND, SC_MONITORPOWER, ByVal TURN_ON ' accende

    End Sub

  4. #4
    Grazie a tutti e due... mi avete convinto

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.