אירוע בהעדר פעילות עכבר מקלדת
-
שלום לכולם
כידוע בחלונות יש אפשרות להרדים/לכבות/להפעיל שומר מסך לאחר זמן מה שבו לא בוצעה כל פעילות (עכבר או מקלדת מן הסתם, דהא שאר תהליכים העובדים ברקע אינם משפיעים לכאו', למעט אולי מוזיקה וכדומה דהוה אאוטפוט מובהק) השאלה האם יש דרך להאזין לכך ולתשאל באמצעות קוד את הוינדווס (לא מעוניין לנטר בכוחות עצמי את מצב הפעילות הכללית של עכבר ומקלדת במחשב כולו ) או לא. ואם כן, אני מניח שזה משהו ברמת היוזר כלומר שאם זה שולחן עבודה מרוחק, ברגע שהוא מנותק, הרי זה כמי שאין לו פעילות עכבר מקלדת.כל עזרה תתקבל בברכה.
פורסם במקור בפורום CODE613 ב06/10/2014 21:28 (+03:00)
-
אתה יכול לראות פה.
http://pinvoke.net/default.aspx/user32.GetLastInputInfoיש פונקציה שנותנת לך את הזמן שהיה הפעולה האחרונה.
אתה יכול לבדוק את זה עם טיימר. ולפי זה לדעת כמה זמן עבר.
פורסם במקור בפורום CODE613 ב06/10/2014 21:43 (+03:00)
-
עובד מעולה!!!
הנה קוד שמצאתיPrivate Declare Function GetTickCount Lib "kernel32" () As Long Private Declare Function GetLastInputInfo Lib "user32" (plii As Any) As Long Private Type LastInputInformation cbSize As Long dwTime As Long End Type Public Function GetUsersIdleTime() As Long Dim lii As LastInputInformation lii.cbSize = Len(lii) Call GetLastInputInfo(lii) GetUsersIdleTime = FormatNumber((GetTickCount() - lii.dwTime) / 1000, 2) End Function
פורסם במקור בפורום CODE613 ב06/10/2014 21:50 (+03:00)
-
לא מזמן כתבתי כזה קוד לפרוייקט קטן שהייתי צריך בפייטון. הקוד פה מודד כמה זמן המחשב לא היה בשימוש, ולפי זה אפשר להגדיר בתוכנית מה לעשות ומה לא.
העפתי מהקוד כאן את התמיכה בלינוקס, אז אם חשוב לך שזה גם יעבוד בלינוקס אני יכול לצרף את החלק השני שלו (דורש תמיכה קטנה ב-Gtk).
לינק למה שכתבתי: https://gist.github.com/KingYes/da8b0f1b9f290d7378f4
חג שמח
פורסם במקור בפורום CODE613 ב07/10/2014 07:57 (+03:00)