Как включить / выключить монитор (ы)? - PullRequest
7 голосов
/ 04 сентября 2011

Я хотел иметь возможность включать / выключать мои мониторы с помощью сценария Delphi , с Windows XP до 7 .

Я искал в разделе Delphi в stackoverflow и не нашел ответа.

Я также нашел много примеров, которые больше не работают в Windows 7 (только с XP).

1 Ответ

10 голосов
/ 04 сентября 2011

Я успешно проверил это в Windows XP и Windows 7:

const
  MONITOR_ON      = -1;
  MONITOR_OFF     =  2;
  MONITOR_STANDBY =  1;

Чтобы выключить монитор:

  SendMessage(Application.Handle, WM_SYSCOMMAND, SC_MONITORPOWER, MONITOR_OFF);

Чтобы включить монитор:

  SendMessage(Application.Handle, WM_SYSCOMMAND, SC_MONITORPOWER, MONITOR_ON);
...