PCCar.ru - Ваш автомобильный компьютер

PCCar.ru - Ваш автомобильный компьютер (http://pccar.ru/index.php)
-   Centrafuse (http://pccar.ru/forumdisplay.php?f=31)
-   -   Как плугином отследить Hibernate ? (http://pccar.ru/showthread.php?t=13591)

Texno2k 16.11.2010 16:11

Как плугином отследить Hibernate ?
 
Как плугином отследить Hibernate ?
Или Sleep.

Hamster 16.11.2010 16:37

До чего же вы новички любите коряво вопросы задавать...
Settings->General->Startup/Shutdown commands

Gorynch 16.11.2010 18:36

Off: да, мы такие ;) хлебом не корми, дай вопросами закидать )

Hamster 16.11.2010 19:17

Цитата:

Сообщение от Gorynch (Сообщение 161925)
Off: да, мы такие ;) хлебом не корми, дай вопросами закидать )

Не, Горыныч, ты на новичка не катишь уже :) :) :)

Texno2k 16.11.2010 19:35

может и коряво, не спорю.
но интересует програмно и именно в плагине отследить усыпление. всякие программы типа Hibernate Trigger это конечно хорошо, но самописному плагину от него не тепло не холодно :(

Hamster 16.11.2010 19:45

Ну, ежели ты сам написал плагин, значит и SDK на центрефугу есть?
Там должно быть. Если вдруг SDK нема - тут можно скачать для 3.1.

Texno2k 16.11.2010 20:56

Спасибо что к гуглу не послали :)
При помощи сдк можно послать в standby, а вот отловить это событие не получается.

Hamster 16.11.2010 23:20

Цитата:

Сообщение от Texno2k (Сообщение 161940)
Спасибо что к гуглу не послали :)
При помощи сдк можно послать в standby, а вот отловить это событие не получается.

Погодь, раз сама ЦФ может отследить, то как таких возможностей нет в SDK? Я конечно давно не программер, но это ж не логично...

Gorynch 16.11.2010 23:42

Кмк, тут надо отлавливать событие винды, соот-но в sdk центрифуги такого параметра может и не быть ..
Так что копать нужно винду, я когда то искал про это под дельфи, но как то позабыл чем у меня это закончилось. Если чего найду - выложу

admin 16.11.2010 23:44

В Delphi делается вот так
PHP код:

procedure TForm1.WMPowerBroadcast(var MyMessageTMessage);
begin
   
if MyMessage.WParam PBT_APMSUSPEND  then .............

end

Подробности здесь

Texno2k 18.11.2010 15:36

Спасибо за наводку.

Подробности здесь[/QUOTE]

встроил в плугин class PowerMessageFilter : IMessageFilter
с перехватом сообщений от Win32.WM_POWERBROADCAST, но появилась другая проблема: при усыплении первое сообщение которое приходит это PBT_APMSUSPEND(а должно быть PBT_APMQUERYSUSPEND) соответственно и приходит оно на 5 секунд позже, чем все тоже самое успевает отработать HibernateTrigger.
Как победить? ибо сообщение PBT_APMSUSPEND это когда комп практически спит и ничего отработать не успевает :(


Часовой пояс GMT +4, время: 20:02.

Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot