易截截图软件、单文件、免安装、纯绿色、仅160KB

VB截获Windows消息的钩子

本文引自。感谢原创!http://useway.blog.51cto.com/736087/176913
VB无所不能之三:VB截获Windows消息的钩子
——作者:钟声
博客地址:http://useway.blog.51cto.com
 
    VB一直被认为是一个可以通过简单的方法,完成Windows界面应用程序的一个语言。对Windows系统方面的编程似乎首先想到的绝对不是VB,而大部分程序员想到的一定是VC。我们今天就介绍一种用VB截获Windows全局消息的方法。
   
    一、Windows全局消息介绍
    我不喜欢用非常晦涩的语言来介绍一个简单的事物,因此,我想在本篇文章中就用通俗的语言来解释这个概念吧。
    什么是Windows全局消息呢?
    例如:鼠标在自定义的窗口中移动的位置,我们可以通过这个Form中的相关方法获取,然而,如果鼠标并没有在自己的Form中移动又该怎么获得其位置呢?
    再例如:键盘的敲击动作,在别的地方敲击键盘,并没有在自己的Form中敲击键盘,怎么才能获得按键的具体键值呢?
    对单片机有了解的朋友都知道,鼠标和键盘的操作都是利用的是“中断”触发事件来完成的,那么当系统“中断”的时候,就会发出消息给操作系统,而这些消息就是Windows全局消息。
 
    二、钩子简介
    钩子是通过英文Hook翻译过来的,所谓的钩子就是在Windows全局消息传递到操作系统之前进行截获,经过处理后再传递给操作系统或者其他钩子的程序。
    想想看,钩子听起来像什么程序?
    对没错,黑客程序,木马程序,都是通过钩子的方法获取鼠标键盘的相应操作信息,还获取密码或其他有用信息的。
    但是,钩子其本身并不是病毒,而是提供给我们程序员一种获取操作系统动作的一个方法,这个方法有时候非常有用,可以非常方便的开发针对操作系统的优质程序。
 
    三、消息种类
 
    1、WH_CALLWNDPROC和WH_CALLWNDPROCRET
    这两种消息是发送到窗口过程的消息,系统在消息发送到接收窗口过程之前调用WH_CALLWNDPROC,并且在窗口过程处理完消息之后调用WH_CALLWNDPRO 。
 
    2、WH_CBT   
    它是激


相关文档:

VB mcisendstring 方法


做个mp3播放器,用realplay和WMP做出来的程序内存占用太大。
如果你仅仅是播放MP3,建议使用API函数mciSendString。
Option Explicit
Private Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal
lpstrReturnString As String, ByVal uReturnLength As Lo ......

骇人听闻,VB遇到这现象,大家小心哇~

YXOnline已经接近尾声,为了处理一些界面的问题,测试一个C++的DLL
一个函数,用deasambling看C++的代码是没有错误的,但是到了VB,请看
b的返回值是True 不管C++和VB相互键约定True和False各对应为什么数值
这里已经是True了
但那时显示True = True 仍旧不执行第一个Msgbox
直接跳到Else
而如果省略b = True 为 If b Then ......

VB 5·1第一天

上午:
VB总结:
下图是用mindmanager制作的VB总结mdb:
常用控件的分类:
 
属性和过程:
方法和过程
事件过程、Function过程和过程:
VB总结大图:
 
分歧如下:
数据包括:数据类型、变量、常量、运算符、表达式等几部分,而流程控制语句应不应该加入其中。
我感觉不应该,用“冰块模子&rdquo ......

VB不使用 API,将 Utf8 转换为 Unicode

Private Function Utf8ToUni(B() As Byte) As String
   '不使用 API,将 Utf8 转换为 Unicode
   Dim BU As Long
  
   On Error Resume Next
   BU = -1: BU = UBound(B)
   If BU = -1 Then Exit Function
   On Error GoTo 0
 &n ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号