דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. ארכיון code613m
  4. ניתוק משתמש אוטומטי (אקסס)

ניתוק משתמש אוטומטי (אקסס)

מתוזמן נעוץ נעול הועבר ארכיון code613m
3 פוסטים 3 כותבים 279 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • א מנותק
    א מנותק
    אבי
    כתב ב נערך לאחרונה על ידי
    #1

    איך אפשר לזהות שלא השתמשו בתוכנה במשך X דקות?
    חשבתי שבפתיחת הטופס יתחיל טיימר, ובאירוע תזוזת העכבר או הקשה על מקש הטיימר יתאפס, אבל נשמע לי מסובך מידי..

    פורסם במקור בפורום CODE613 ב11/05/2015 19:55 (+03:00)

    תגובה 1 תגובה אחרונה
    0
    • clickoneC מנותק
      clickoneC מנותק
      clickone
      כתב ב נערך לאחרונה על ידי
      #2

      ראה כאן:
      http://code.613m.org/viewtopic.php?f=1&t=349&p=2373#p2375
      ובמיוחד כאן:

      @דוד ל.ט.

      שים לב שייתכן שתרצה שאי פעילות בתוכנה תחשב גם היא ל"ניתוק", יש על זה "דיבורים" ברשת (למשל http://www.codeproject.com/KB/WPF/AutologoffWPF.aspx?msg=3238811)

      רק שים לב:
      לפעמים אין פעילות אבל זה לא אומר שהתוכנה לא בפעילות.
      כלומר:
      נניח שהתוכנה מחייבת כעת כרטיסי אשראי, שולחת מיילים / SMS בתפוצה וכו' ויש לך loop בהרצה של 10000רשומות.
      ללופ הזה לוקח לרוץ נניח 25 דקות.
      בזמן הזה באקסס א"א לעשות כלום - רק ללכת להכין קפה, לנוח קצת, ולהתעצבן, "למה בכלל לא הלכתי לWPF , NodeJS" וכו'.
      עכשיו תאר לך שהגדרת שזמן חוסר הפעילות הוא 15 דקות?
      הלופ יעוף באמצע.

      אז ודאי שאתה יכול לבדוק במסגרת החוסר פעילות אם אין כעת לופ שרץ ואם יש להתייחס לזה כפעילות.
      רק תזכור לשים לב <!-- s:-) --><img src="{SMILIES_PATH}/icon_e_smile.gif" alt=":-)" title="מחייך" /><!-- s:-) -->

      עריכה:
      מה שאתה מחפש נקרא IDLE = זמן חוסר פעילות.
      הנה קוד לדוגמא:

      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
      

      מקור:
      http://www.mrexcel.com/forum/excel-questions/589393-track-system-idle-time-using-visual-basic-applications.html

      לא העמקתי בקוד, אבל נראה לי שהוא מביא מכלל המערכת, ואתה צריך רק מהאקסס הנוכחי.
      מסתבר שיש אפשרות לקבל את הנתון הזה גם לגבי חלון מסויים לפי מזהה החלון. (hWnd)

      פורסם במקור בפורום CODE613 ב11/05/2015 23:00 (+03:00)

      אין טסט כמו פרודקשן.

      המייל שלי urivpn@gmail.com

      תגובה 1 תגובה אחרונה
      0
      • H מנותק
        H מנותק
        hubhcbh
        כתב ב נערך לאחרונה על ידי
        #3

        לשים לב לפעולה בעת פסיקת זמן, וקצב פסיקת שעון צריך לשנות מ0 ל 1000
        צירפתי דוגמה, לפתוח את הטופס ולא לגעת בעכבר ובמקלדת למשך דקה בתוך האקסס, אפשר מזער ולהשתמש בשאר המחשב, הוא מתייחס רק לקובץ הספציפי.

        טיימר.rar

        פורסם במקור בפורום CODE613 ב12/05/2015 01:01 (+03:00)

        תגובה 1 תגובה אחרונה
        1

        בא תתחבר לדף היומי!
        • התחברות

        • אין לך חשבון עדיין? הרשמה

        • התחברו או הירשמו כדי לחפש.
        • פוסט ראשון
          פוסט אחרון
        0
        • דף הבית
        • קטגוריות
        • פוסטים אחרונים
        • משתמשים
        • חיפוש
        • חוקי הפורום