home *** CD-ROM | disk | FTP | other *** search
/ Programming Tool Box / SIMS_2.iso / vb_code1 / get_idl / testdll.frm < prev    next >
Text File  |  1994-04-11  |  5KB  |  151 lines

  1. VERSION 2.00
  2. Begin Form Testdll 
  3.    Caption         =   "Idle Time DLL Test Module"
  4.    ClientHeight    =   2250
  5.    ClientLeft      =   1050
  6.    ClientTop       =   2010
  7.    ClientWidth     =   4845
  8.    Height          =   2655
  9.    Icon            =   TESTDLL.FRX:0000
  10.    Left            =   990
  11.    LinkTopic       =   "Form2"
  12.    ScaleHeight     =   2250
  13.    ScaleWidth      =   4845
  14.    Top             =   1665
  15.    Width           =   4965
  16.    Begin CommandButton buQuit 
  17.       Cancel          =   -1  'True
  18.       Caption         =   "&Quit"
  19.       Height          =   375
  20.       Left            =   2520
  21.       TabIndex        =   5
  22.       Top             =   1560
  23.       Width           =   2175
  24.    End
  25.    Begin CommandButton buUserFlag 
  26.       Caption         =   "Ignore &USER msgs"
  27.       Height          =   375
  28.       Left            =   120
  29.       TabIndex        =   1
  30.       Tag             =   "0"
  31.       Top             =   1560
  32.       Width           =   2175
  33.    End
  34.    Begin Timer Timer1 
  35.       Interval        =   12
  36.       Left            =   4200
  37.       Top             =   480
  38.    End
  39.    Begin Label lbSecs 
  40.       BorderStyle     =   1  'Fixed Single
  41.       Caption         =   "0"
  42.       Height          =   255
  43.       Left            =   2040
  44.       TabIndex        =   4
  45.       Top             =   900
  46.       Width           =   1695
  47.    End
  48.    Begin Label lbSeconds 
  49.       Caption         =   "Seconds Since Last Event"
  50.       Height          =   435
  51.       Left            =   240
  52.       TabIndex        =   3
  53.       Top             =   780
  54.       Width           =   1695
  55.    End
  56.    Begin Label lbLastEvent 
  57.       Caption         =   "Last Event Time"
  58.       Height          =   255
  59.       Left            =   240
  60.       TabIndex        =   2
  61.       Top             =   300
  62.       Width           =   1695
  63.    End
  64.    Begin Label lbTime 
  65.       BorderStyle     =   1  'Fixed Single
  66.       Caption         =   "0"
  67.       Height          =   255
  68.       Left            =   2040
  69.       TabIndex        =   0
  70.       Top             =   300
  71.       Width           =   1695
  72.    End
  73. End
  74. DefInt A-Z
  75. Option Explicit
  76. Declare Function GetIdleTime Lib "HOWLONG.DLL" () As Long
  77. Declare Function ResetIdleOnUser% Lib "HOWLONG.DLL" (ByVal bFlag%)
  78. Declare Function gettickcount Lib "user" () As Long
  79.  
  80. ' Sample module, provided by A. Nicklas Malik
  81. ' (c) 1994, Malik Information Services, All Rights Reserved
  82.  
  83. ' This module (TESTDLL.EXE) illustrates the use of the FREEWARE module,
  84. '             HOWLONG.DLL
  85.  
  86. ' This VB program, and the DLL that it calls are property
  87. ' of Malik Information Services.  A license is granted to any and
  88. ' all users who would like to include any portion of either
  89. ' the VB program or the DLL into their code, under the condition
  90. ' that any such user agrees that Nicklas Malik, Malik Information
  91. ' Services, and any of its employees, affiliates, distributors, or
  92. ' directors, are not liable for any damages, special, incidental,
  93. ' consequential or otherwise, arising out of the use of these programs.
  94.  
  95. ' This program was created using Microsoft Visual Basic, Ver. 3.0 Pro Ed.
  96. ' The accompanying DLL was created using Borland C++ for Windows, Ver 3.1
  97.  
  98. Sub buQuit_Click ()
  99.     ' note: you do not have to do anything special to
  100.     ' unhook the DLL.  It takes care of itself.
  101.     End
  102. End Sub
  103.  
  104. Sub buUserFlag_Click ()
  105.     Static nouserflag As Integer
  106.     Dim rtn%
  107.  
  108.     If nouserflag Then
  109.         rtn% = ResetIdleOnUser(True)
  110.         If rtn% <> 0 Then
  111.             MsgBox "Error! returned value is not zero!" ' debug testing
  112.         End If
  113.         nouserflag = False
  114.         buUserFlag.Caption = "Ignore &USER msgs"
  115.     Else
  116.         rtn% = ResetIdleOnUser(False)
  117.         If rtn% = 0 Then
  118.             MsgBox "Error! returned value is zero!" ' debug testing
  119.         End If
  120.         nouserflag = True
  121.         buUserFlag.Caption = "Accept &USER msgs"
  122.     End If
  123.     
  124. End Sub
  125.  
  126. Sub Form_Load ()
  127.     Dim myhwnd%
  128.     myhwnd% = testdll.hWnd
  129. End Sub
  130.  
  131. Sub Timer1_Timer ()
  132.  
  133.     Dim lastime As Long
  134.     Dim nowtime As Long
  135.     Static soundoff As Integer
  136.     Static soundtime As Long
  137.  
  138.     lastime = GetIdleTime()
  139.     nowtime = gettickcount()
  140.     lbTime.Caption = Str$(lastime)
  141.     lbSecs.Caption = Str$(Int((nowtime - lastime) / 1000#))
  142.     If (lastime > soundtime) Then
  143.         If (nowtime - lastime) > 5000 Then
  144.             Beep
  145.             soundtime = nowtime
  146.         End If
  147.     End If
  148.     
  149. End Sub
  150.  
  151.