VB判断API防下断
2012-08-21 00:02:15
断点,调试器的功能之一,可以让程序中断在需要的地方,从而方便其分析。也可以在一次调试中设置断点,下一次只需让程序自动运行到设置断点位置,便可在上次设置断点的位置中断下来,极大的方便了操作,同时节省了时间。
常用的断点包括:INT3断点、硬件断点、内存断点、消息断点、条件断点等。
简简单单VB防下send断源码如下:
1 Public Declare Function GetProcAddress Lib "kernel32" (ByVal hModule As Long, ByVal lpProcName As String) As Long 2 3 Public Declare Function GetModuleHandle Lib "kernel32" Alias "GetModuleHandleA" (ByVal lpModuleName As String) As Long 4 5 Declare Sub MoveMemory Lib "kernel32" Alias "RtlMoveMemory" (pDest As Any, pSource As Any,ByVal dwLength As Long) 6 Function BPApi() As Long 7 8 9 Dim ApiAddr As Long 10 Dim Head(0) As Long 11 ApiAddr = GetProcAddress(GetModuleHandle("Ws2_32.dll"), "send") 12 MoveMemory Head(0), ByVal ApiAddr, 1 '获取地址内容首字节 13 If Head(0) = 204 Then '判断是否为CC 14 15 Unload Form1 '自动退出程序 16 Else 17 MsgBox "没有发现断点" 18 End If 19 End Function
可以加个ExitProcess判断 , 一旦ExitProcess被HOOK , 也直接可以把程序退出.