home *** CD-ROM | disk | FTP | other *** search
/ Programming Tool Box / SIMS_2.iso / code / system / callback / frmnotif.frm (.txt) < prev    next >
Encoding:
Visual Basic Form  |  1995-02-27  |  5.4 KB  |  168 lines

  1. VERSION 2.00
  2. Begin Form frmNotify 
  3.    BackColor       =   &H00C0C0C0&
  4.    Caption         =   "NotifyRegister"
  5.    ClientHeight    =   5628
  6.    ClientLeft      =   2052
  7.    ClientTop       =   660
  8.    ClientWidth     =   3240
  9.    Height          =   6048
  10.    Left            =   2004
  11.    LinkTopic       =   "Form1"
  12.    ScaleHeight     =   5628
  13.    ScaleWidth      =   3240
  14.    Top             =   288
  15.    Width           =   3336
  16.    Begin SSCommand cmdClose 
  17.       Caption         =   "Schlie
  18.       Height          =   372
  19.       Left            =   1920
  20.       TabIndex        =   9
  21.       Top             =   5220
  22.       Width           =   1272
  23.    End
  24.    Begin Frame fraComment 
  25.       BackColor       =   &H00C0C0C0&
  26.       Height          =   2772
  27.       Left            =   60
  28.       TabIndex        =   6
  29.       Top             =   2400
  30.       Width           =   3132
  31.       Begin Label Label3 
  32.          Alignment       =   2  'Center
  33.          BackColor       =   &H00000000&
  34.          Caption         =   " Kommentar:"
  35.          ForeColor       =   &H00FFFFFF&
  36.          Height          =   252
  37.          Left            =   0
  38.          TabIndex        =   8
  39.          Top             =   60
  40.          Width           =   3132
  41.       End
  42.       Begin Label Label2 
  43.          BackStyle       =   0  'Transparent
  44.          Caption         =   "Hier k
  45. nnen Sie sehen, wann Segmente oder DLL geladen bzw. wieder freigegeben werden. Auch alle impliziten Taskwechsel lassen sich beobachten. Leider ist es nicht m
  46. glich, die dem Callback 
  47. bergebenen daten von VB aus zu nutzen, da dieser Callback eigentlich eine Art Interrupt ist."
  48.          FontBold        =   0   'False
  49.          FontItalic      =   0   'False
  50.          FontName        =   "MS Sans Serif"
  51.          FontSize        =   9.6
  52.          FontStrikethru  =   0   'False
  53.          FontUnderline   =   0   'False
  54.          Height          =   2412
  55.          Left            =   60
  56.          TabIndex        =   7
  57.          Top             =   300
  58.          Width           =   3012
  59.       End
  60.    End
  61.    Begin Frame Frame1 
  62.       BackColor       =   &H00C0C0C0&
  63.       ForeColor       =   &H00000000&
  64.       Height          =   2292
  65.       Left            =   60
  66.       TabIndex        =   0
  67.       Top             =   60
  68.       Width           =   3132
  69.       Begin ListBox lstNotify 
  70.          Height          =   1560
  71.          Left            =   60
  72.          TabIndex        =   5
  73.          Top             =   300
  74.          Width           =   3012
  75.       End
  76.       Begin SSOption optRegister 
  77.          Caption         =   "Normal"
  78.          Height          =   252
  79.          Index           =   0
  80.          Left            =   60
  81.          TabIndex        =   4
  82.          Top             =   1980
  83.          Value           =   -1  'True
  84.          Width           =   912
  85.       End
  86.       Begin SSOption optRegister 
  87.          Caption         =   "TaskSwitch"
  88.          Height          =   252
  89.          Index           =   1
  90.          Left            =   1020
  91.          TabIndex        =   3
  92.          TabStop         =   0   'False
  93.          Top             =   1980
  94.          Width           =   1272
  95.       End
  96.       Begin SSOption optRegister 
  97.          Caption         =   "RIP"
  98.          Height          =   252
  99.          Index           =   2
  100.          Left            =   2400
  101.          TabIndex        =   2
  102.          TabStop         =   0   'False
  103.          Top             =   1980
  104.          Width           =   612
  105.       End
  106.       Begin Label Label1 
  107.          Alignment       =   2  'Center
  108.          BackColor       =   &H00000000&
  109.          Caption         =   "Notify Register"
  110.          ForeColor       =   &H00FFFFFF&
  111.          Height          =   252
  112.          Left            =   0
  113.          TabIndex        =   1
  114.          Top             =   0
  115.          Width           =   3132
  116.       End
  117.    End
  118.    Begin CBVBX CBVBX1 
  119.       CBType          =   15  ' 15 - NotifyRegisterProc
  120.       Left            =   0
  121.       Top             =   0
  122.    End
  123. Option Explicit
  124. Sub CBVBX1_NotifyRegisterProc (wID As Integer, dwdata As Long)
  125.   Select Case wID
  126.     Case NFY_UNKNOWN
  127.       lstNotify.AddItem "Unknown"
  128.     Case NFY_LOADSEG
  129.       lstNotify.AddItem "LoadSeg"
  130.     Case NFY_FREESEG
  131.       lstNotify.AddItem "FreeSeg"
  132.     Case NFY_STARTDLL
  133.       lstNotify.AddItem "StartDLL "
  134.     Case NFY_STARTTASK:
  135.       lstNotify.AddItem "StartTask"
  136.     Case NFY_EXITTASK:
  137.       lstNotify.AddItem "ExitTask"
  138.     Case NFY_DELMODULE
  139.       lstNotify.AddItem "DelModule "
  140.     Case NFY_RIP
  141.       lstNotify.AddItem "RIP "
  142.     Case NFY_TASKIN:
  143.       lstNotify.AddItem "TaskIn"
  144.     Case NFY_TASKOUT:
  145.       lstNotify.AddItem "TaskOut"
  146.   End Select
  147.   lstNotify.ListIndex = lstNotify.NewIndex
  148.   If lstNotify.ListCount = 100 Then lstNotify.RemoveItem 0
  149. End Sub
  150. Sub cmdClose_Click ()
  151.   Unload Me
  152. End Sub
  153. Sub Form_Load ()
  154.   Dim dummy
  155.   dummy = NotifyRegister(GetCurrentTask(), CBVBX1.CBAdress, NF_NORMAL)
  156.   CBVBX1.NotifyTask = GetCurrentTask()
  157. End Sub
  158. Sub optRegister_Click (Index As Integer, Value As Integer)
  159.   Dim dummy
  160.   CBVBX1.NotifyTask = &H80000000 'Alten Handler entfernen
  161.   Select Case Index
  162.     Case 0:  dummy = NotifyRegister(GetCurrentTask(), CBVBX1.CBAdress, NF_NORMAL)
  163.     Case 1:  dummy = NotifyRegister(GetCurrentTask(), CBVBX1.CBAdress, NF_TASKSWITCH)
  164.     Case 2:  dummy = NotifyRegister(GetCurrentTask(), CBVBX1.CBAdress, NF_RIP)
  165.   End Select
  166.   CBVBX1.NotifyTask = GetCurrentTask()
  167. End Sub
  168.