home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic Source Code / Visual Basic Source Code.iso / vbsource / sendun1a / subclase.bas < prev    next >
Encoding:
BASIC Source File  |  1999-10-20  |  1.9 KB  |  58 lines

  1. Attribute VB_Name = "CalSubClass"
  2. Option Private Module
  3. Option Explicit
  4.  
  5. Public NextProcs As Long
  6. Public Nodef As Boolean
  7.  
  8. Public Type NMHDRCAL
  9.     hwndFrom As Long
  10.     idfrom As Long
  11.     code As Long
  12. End Type
  13.  
  14. Public stFecha  As String
  15.  
  16. Public Const WM_SIZE = &H5
  17. Public Const WM_NOTIFY = &H4E
  18.  
  19. 'Para poder hacer e-mail desde el programa
  20. Declare Function ShellExecute Lib "shell32.dll" Alias _
  21.     "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, _
  22.         ByVal lpFile As String, ByVal lpParameters As String, ByVal _
  23.             lpDirectory As String, ByVal nShowCmd As Long) As Long
  24.  
  25. Public Declare Sub CopyMemory Lib "KERNEL32" Alias "RtlMoveMemory" (pDest As Any, pSrc As Any, ByVal ByteLen As Long)
  26. Public Declare Function SendMessage Lib "user32" Alias "SendMessageW" (ByVal hWnd As Long, ByVal uMgs As Long, ByVal wParam As Long, lParam As Any) As Long
  27. Public Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long) As Long
  28. Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Any) As Long
  29. Public Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal wndrpcPrev As Long, ByVal hWnd As Long, ByVal uMsg As Long, ByVal wParam As Long, lParam As Any) As Long
  30.  
  31. Public Const GWL_USERDATA = (-21)
  32. Public Const GWL_WNDPROC = -4
  33. Private Sub main()
  34.  
  35.     frmData.Show
  36.     
  37.     
  38. End Sub
  39. Public Function WindowProc(ByVal hWnd As Long, ByVal uMsg As Long, _
  40.     ByVal wParam As Long, ByVal lParam As Long) As Long
  41.     
  42.     On Error Resume Next
  43.   
  44.     Select Case hWnd
  45.         Case SysCal.hWnd
  46.             SysCal.ProcMsg hWnd, uMsg, wParam, lParam, 0& ', 0&
  47.     End Select
  48.     
  49.     If Nodef = True Then
  50.         WindowProc = CallWindowProc(NextProcs, hWnd, uMsg, wParam, ByVal lParam)
  51.     Else
  52.         Nodef = False
  53.         Nodef = True
  54.     End If
  55.     
  56. End Function
  57.  
  58.