注册 登录
编程论坛 新人交流区

源代码出错求助!!

jokin 发布于 2007-10-25 21:21, 251 次点击

本人今天弄的一个程序,可是代码出了点问题,大哥大姐帮忙解决一下??

源程序在附件里面


Declare Function CallWindowProc Lib "user32" Alias "callwindowproca" (ByVal lpPrevwndfunc As Long, ByVal hwnd As Long, ByVal msg As Long, ByVal wparam As Long, ByVal lparam As Long) As Long

Declare Function setwindowlong Lib "user32" Alias "setwindowlongA" (ByVal hwnd As Long, ByVal nlndex As Long, ByVal dwnewlong As Long) As Long

Public Const GWL_WNDPROC = -4

Global lpprevwndproc As Long
Global gHW As Long
Const WM_QUERYENDSESSION = &H11

Public Sub Hook()
lpprevwndproc = setwindowlong(gHW, GWL_WNDPROC, AddressOfwindowproc)
End Sub

Public Sub unhook()
Dim temp As Long
temp = setwindowlong(gHW, GWL_WNDPROC, lpprevwndproc)
End Sub

Function windwoproc(ByVal hw As Long, ByVal umsg As Long, ByVal wparam As Long, ByVal lparam As Long) As Long

Select Case umsg
Case WM_QUERYENDSESSION
frmdislogOFF.msginfo.AddItem "捕获到结束当前会话消息" & IIf(frmdislogOFF.chkenable.Value = vbChecked, "允许!", "禁止!")
windowproc = IIf(frmdislogOFF.chkenable.Value = vbChecked, 1, 0)
Exit Function
Case Else

windowproc = CallWindowProc(lpprevwndproc, hw, umsg, wparam, iparam)
End Select
End Function

只有本站会员才能查看附件,请 登录

[此贴子已经被作者于2007-10-25 21:24:47编辑过]

6 回复
#2
as660366552007-10-25 21:31
打死都看不明白!!!!!!!!!!!!!!!!
#3
jokin2007-10-25 21:48


高手帮忙啊。。
#4
linsd20012007-10-25 22:12
回复:(jokin)源代码出错求助!!

Function windwoproc(ByVal hw As Long, ByVal umsg As Long, ByVal wparam As Long, ByVal lparam As Long) As Long

Select Case umsg
Case WM_QUERYENDSESSION
frmdislogOFF.msginfo.AddItem "捕获到结束当前会话消息" & IIf(frmdislogOFF.chkenable.Value = vbChecked, "允许!", "禁止!")
windowproc = IIf(frmdislogOFF.chkenable.Value = vbChecked, 1, 0)
Exit Function
Case Else

windowproc = CallWindowProc(lpprevwndproc, hw, umsg, wparam, iparam)
End Select
End Function


是不是红字所标的地方出了错呢

#5
nuciewth2007-10-25 22:13
我也看不懂,我顶一下.
#6
JFan2007-10-25 22:34

我晕.这么长.
看不懂.

#7
jokin2007-10-27 18:27
回复:(linsd2001)回复:(jokin)源代码出错求助!...



我不清楚。麻烦您帮我看看可以吗?。

1