• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Определить Выход Из Спящего Режима

  • Автор темы Tolias
  • Дата начала
T

Tolias

Как можно определить, что компьютер входит/выходит из спящего режима? Например, известная программа обмена быстрыми сообщениями QIP Infium перед переходом в спящий режим переводит все свои учетные записи в статус "Оффлайн". Как-то она определяет то, что система "пытается" уснуть, но только как?

P.S. Пишу прогу на C#.
 
L

LuMee

Для оконного WinForms-приложения можно переопределить WndProc примерно следующим образом:
Код:
public partial class Form1 : Form
{
const int WM_POWERBROADCAST = 0x218;
const int PBT_APMSUSPEND = 0x0004;
const int PBT_APMRESUMESUSPEND = 0x0007;

public Form1()
{
InitializeComponent();
}

protected override void WndProc(ref Message m)
{
if (m.Msg == WM_POWERBROADCAST)
{
if (m.WParam.ToInt32() == PBT_APMSUSPEND)
{
// Код, который нужно выполнить при засыпании
}
else if (m.WParam.ToInt32() == PBT_APMRESUMESUSPEND)
{
// Код, который нужно выполнить при пробуждении
}
}

base.WndProc(ref m);
}
}
Подробности можно найти
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!