MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Programa para desligar o monitor

    marcelo marques
    marcelo marques
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 766
    Registrado : 12/04/2016

    [Resolvido]Programa para desligar o monitor Empty [Resolvido]Programa para desligar o monitor

    Mensagem  marcelo marques em 3/10/2020, 13:44

    bom dia a todos estou tentando desenvolver um programinha para desligar o pc na hora programada fiz para "desligar ","Reiniciar",gostaria de saber se tem como desligar somente o "monitor"
    estou utilizando este comando para desligar

    Shell "shutdown -s -t 02", vbHide
    luissiscone
    luissiscone
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 166
    Registrado : 16/02/2011

    [Resolvido]Programa para desligar o monitor Empty Re: [Resolvido]Programa para desligar o monitor

    Mensagem  luissiscone em 7/10/2020, 20:43

    Olá

    Crie um módulo com esta função :

    '32-bit declaration
    Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, _
                                                                           ByVal wMsg As Long, _
                                                                           ByVal wParam As Long, _
                                                                           ByVal lParam As Any) As Long
    '64-bit declaration
    'Private Declare PtrSafe Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As LongPtr, _
    '                                                                                ByVal wMsg As Long, _
    '                                                                                ByVal wParam As LongPtr, _
    '                                                                                lParam As Any) As LongPtr

    '---------------------------------------------------------------------------------------
    ' Procedure : MonitorPower
    ' Author    : Daniel Pineault, CARDA Consultants Inc.
    ' Purpose   : Turn On/Off the monitor
    ' Copyright : The following is release as Attribution-ShareAlike 4.0 International
    ' Req'd Refs: None required
    ' Req'd     : SendMessage API Declaration
    '
    ' Input Variables:
    ' ~~~~~~~~~~~~~~~~
    ' bMontiorOn: True -> Turn monitor on
    '             False -> Turn monitor off
    '
    ' Usage:
    ' ~~~~~~
    ' Call MonitorPower
    '
    ' Revision History:
    ' Rev       Date(yyyy/mm/dd)        Description
    ' **************************************************************************************
    ' 1         2018-12-14              Initial Release (Forum help)
    '---------------------------------------------------------------------------------------
    Public Function MonitorPower(Optional bMontiorOn As Boolean = False)
       Const WM_SYSCOMMAND = &H112
       Const SC_MONITORPOWER = &HF170&
       Const MONITOR_ON = -1&
       Const MONITOR_OFF = 2&

       On Error GoTo Error_Handler

       If bMontiorOn = False Then
           SendMessage Application.hWndAccessApp, WM_SYSCOMMAND, SC_MONITORPOWER, MONITOR_OFF
       Else
           SendMessage Application.hWndAccessApp, WM_SYSCOMMAND, SC_MONITORPOWER, MONITOR_ON
       End If

    Error_Handler_Exit:
       On Error Resume Next
       Exit Function

    Error_Handler:
       MsgBox "The following error has occurred" & vbCrLf & vbCrLf & _
              "Error Number: " & Err.Number & vbCrLf & _
              "Error Source: MonitorPower" & vbCrLf & _
              "Error Description: " & Err.Description & _
              Switch(Erl = 0, "", Erl <> 0, vbCrLf & "Line No: " & Erl) _
              , vbOKOnly + vbCritical, "An Error has Occurred!"
       Resume Error_Handler_Exit
    End Function

    Chame ela no evento ao mover mouse ou qualquer evento que desejar de um form
    No seu caso acho que vai querer criar um temporizador

    Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    Call MonitorPower
    End Sub
    marcelo marques
    marcelo marques
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 766
    Registrado : 12/04/2016

    [Resolvido]Programa para desligar o monitor Empty Re: [Resolvido]Programa para desligar o monitor

    Mensagem  marcelo marques em 8/10/2020, 01:14

    boa noite Luissiscone Muito obrigado pela ajuda porém fiz copiei esta parte abaixo e colei em um modulo mais deu erro de copilação 'Sub ou function nao definida



    Public Function MonitorPower(Optional bMontiorOn As Boolean = False)
      Const WM_SYSCOMMAND = &H112
      Const SC_MONITORPOWER = &HF170&
      Const MONITOR_ON = -1&
      Const MONITOR_OFF = 2&

      On Error GoTo Error_Handler

      If bMontiorOn = False Then
          SendMessage Application.hWndAccessApp, WM_SYSCOMMAND, SC_MONITORPOWER, MONITOR_OFF' erro nesta linha
      Else
          SendMessage Application.hWndAccessApp, WM_SYSCOMMAND, SC_MONITORPOWER, MONITOR_ON
      End If

    Error_Handler_Exit:
      On Error Resume Next
      Exit Function

    Error_Handler:
      MsgBox "The following error has occurred" & vbCrLf & vbCrLf & _
             "Error Number: " & Err.Number & vbCrLf & _
             "Error Source: MonitorPower" & vbCrLf & _
             "Error Description: " & Err.Description & _
             Switch(Erl = 0, "", Erl <> 0, vbCrLf & "Line No: " & Erl) _
             , vbOKOnly + vbCritical, "An Error has Occurred!"
      Resume Error_Handler_Exit
    End Function
    luissiscone
    luissiscone
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 166
    Registrado : 16/02/2011

    [Resolvido]Programa para desligar o monitor Empty Re: [Resolvido]Programa para desligar o monitor

    Mensagem  luissiscone em 8/10/2020, 11:06

    Testa se funciona, aqui funcionou.

    Acredito que faltou as declarações...

    Se seu office for 32

    '32-bit declaration
    Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, _
    ByVal wMsg As Long, _
    ByVal wParam As Long, _
    ByVal lParam As Any) As Long

    Ou se for 64

    '64-bit declaration
    'Private Declare PtrSafe Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As LongPtr, _
    ' ByVal wMsg As Long, _
    ' ByVal wParam As LongPtr, _
    ' lParam As Any) As LongPtr

    Abraço.
    Anexos
    [Resolvido]Programa para desligar o monitor AttachmentDesliga_monitor.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (26 Kb) Baixado 12 vez(es)
    marcelo marques
    marcelo marques
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 766
    Registrado : 12/04/2016

    [Resolvido]Programa para desligar o monitor Empty Re: [Resolvido]Programa para desligar o monitor

    Mensagem  marcelo marques em 11/10/2020, 12:39

    bom dia luissiscone muitíssimo obrigado ficou perfeito tenha um bom fim de semana
    obrigadoooo

      Data/hora atual: 25/11/2020, 01:50