Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Public Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Public Const GWL_WNDPROC = (-4)
Public Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Public Const HDM_FIRST = &H1200&
Public Const HDM_GETITEMRECT = HDM_FIRST + 7&
Public glDefWindowProc As Long
Public Function WindowProc(ByVal hwnd As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
On Error Resume Next
Select Case uMsg
Case GETITEMRECT'攔截HDM_GETITEMRECT
WindowProc=0
Case &H200, &H201, &H202, &H203, &H204, &H205, &H206, &H207, &H208, &H209
WindowProc = 0
Case Else
WindowProc = CallWindowProc(glDefWindowProc, hwnd, uMsg, wParam, lParam)
End Select