VB实现强制关闭360安全卫士

虽然说VB已经渐渐退出我们的日常生活中,逐渐成为过去产物,但是对于编程初学者来说,还是一种非常通俗易懂,便捷的语言,特别是在界面UI设计上不需要编写大量代码,直接可视化操作,非常爽。在此记录一些曾经写过的一些VB代码,希望对自己以及看到这篇文章的人能够有启发

效果未知,谨慎尝试(我试了不行)

Option Explicit
                                                                 
Public Const WM_QUERYENDSESSION = &H11
Public Const GWL_WNDPROC = (-4)
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 nIndex As Long, ByVal dwNewLong As Long) As Long
Public TheProc  As Long

Function WindowProc(ByVal hwnd As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
    If uMsg = WM_QUERYENDSESSION Then
        MsgBox "我不让你关机"
        WindowProc = 0
    Else
        WindowProc = CallWindowProc(TheProc, hwnd, uMsg, wParam, lParam)
    End If
End Function
                                                                    
Option Explicit
                                                                 
Private Sub Form_Load()
    TheProc = SetWindowLong(hwnd, GWL_WNDPROC, AddressOf WindowProc)
End Sub
                                                                        
Private Sub Form_Unload(Cancel As Integer)
    Call SetWindowLong(hwnd, GWL_WNDPROC, TheProc)
End Sub

原创文章,作者:Rosmontics,如若转载,请注明出处:https://rosmontis.com/archives/81

(0)
RosmonticsRosmontics网站管理员
上一篇 2021年10月25日 下午3:39
下一篇 2021年10月25日 下午3:46

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

评论审核已启用。您的评论可能需要一段时间后才能被显示。