1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| class LockEventFilter : public QAbstractNativeEventFilter
{
public:
virtual bool nativeEventFilter(const QByteArray &eventType, void *message, long *result)
Q_DECL_OVERRIDE
{
if (eventType == "windows_generic_MSG" || eventType == "windows_dispatcher_MSG" ) {
MSG *msg = static_cast<MSG*>(message);
//qDebug() << msg->time;
if(msg->message == WM_WTSSESSION_CHANGE){
if(msg->wParam == WTS_SESSION_LOCK){
qDebug() << "Lock";
return true;
}
else{
qDebug() << "unLock";
return true;
}
}
}
return false;
}
}; |
Partager