Como posso fazer com que meu display seja desativado por demanda?

3

Neste momento, meu win 10 PC está configurado para desligar a tela após 30 minutos de inatividade. Eu estou querendo saber se eu posso ter essa mesma função sob demanda. Geralmente, uso meu computador à noite antes de dormir e quero desativar a exibição do meu teclado sem fio . Eu sei que este teclado tem um botão de suspensão, mas às vezes eu não quero colocar meu computador para dormir devido a downloads ou outros processos ainda em execução. Então, eu estou querendo saber se há alguma maneira eu posso ter algum arquivo .bat, ou outro método de apenas desligar a tela sem ter que se levantar e pressionar o botão no meu monitor. Seria incrível se eu pudesse conectá-lo a um botão no meu teclado, assim como o sono é.

Obrigado!

    
por intA 17.08.2016 / 01:17

3 respostas

2

Existe este script autohoykey que você pode experimentar

    
por 17.08.2016 / 01:40
1

Com base em esta resposta do Windows 7 que vincula a esta página de script e verificando esta página da biblioteca MSDN , que os códigos utilizados estão corretos pode executar o script powershell abaixo para desligar a tela. Eu corri no meu laptop Windows 10 e funcionou bem. Mover o mouse após a execução do script ativa a tela como normalmente faz quando a tela é desligada do recurso de economia de energia.

O atraso de 2 segundos antes de desligar a tela é para que você tenha tempo de soltar o mouse / teclado antes que o Windows inicie a verificação de movimento para voltar a ligar a tela.

Usando este script, você não precisa de nenhuma ferramenta de terceiros ou precisa mexer nas configurações existentes.

# Turn display off by calling WindowsAPI.

# SendMessage(HWND_BROADCAST,WM_SYSCOMMAND, SC_MONITORPOWER, POWER_OFF)
# HWND_BROADCAST  0xffff
# WM_SYSCOMMAND   0x0112
# SC_MONITORPOWER 0xf170
# POWER_OFF       0x0002

Add-Type -TypeDefinition '
using System;
using System.Runtime.InteropServices;

namespace Utilities {
   public static class Display
   {
      [DllImport("user32.dll", CharSet = CharSet.Auto)]
      private static extern IntPtr SendMessage(
         IntPtr hWnd,
         UInt32 Msg,
         IntPtr wParam,
         IntPtr lParam
      );

      public static void PowerOff ()
      {
         SendMessage(
            (IntPtr)0xffff, // HWND_BROADCAST
            0x0112,         // WM_SYSCOMMAND
            (IntPtr)0xf170, // SC_MONITORPOWER
            (IntPtr)0x0002  // POWER_OFF
         );
      }
   }
}
'
start-sleep 2
[Utilities.Display]::PowerOff()
    
por 17.08.2016 / 17:30
1

Gostaria de saber se posso ter essa mesma função sob demanda.

Use nircmd em nirsoft ( se for suportado pelo seu monitor):

nircmd monitor off

monitor [action]

Changes the state of the display monitor. The [action] parameter may contain the following values:

  • off: Turn off the monitor
  • on: Turn on the monitor
  • low: Set the monitor to low power state.

This command only works in systems that support this feature. If you have a problem that NirCmd remains in memory when using this command, you may try to use async_off, async_on and async_low actions instead of on/off/low actions.

Fonte Referência de Comando NirCmd - monitor

Aviso de isenção

Eu não sou afiliado com nirsoft de qualquer forma, eu sou apenas um usuário final de seu software.

    
por 17.08.2016 / 16:28