用VBS屏蔽键盘和鼠标

标签: , , , , ,

看到标题你是不是不相信呢,说实话,换成以前我也不相信,VBS怎么可能屏蔽键盘和鼠标呢?光靠VBS当然是不可能的啦。但是结合我之前的两篇文章《用C语言屏蔽键盘和鼠标》和《用VBS读写二进制文件》,你会发现通过曲线救国的方法就可以实现了。这应该还算用VBS屏蔽的吧,就像网上很多人在批处理中调用VBS来实现一些批处理无法实现的功能一样。

用C语言写出来的程序还是有点太大了,我用汇编写了一个屏蔽键盘和鼠标的程序,编译好以后才2.5KB,把它的二进制数据放到VBS中不算太大,下载地址在文章末尾。

另外要说一下的是,网上也有所谓的“屏蔽”键盘的VBS程序,使用了快捷方式的快捷键来实现的,只能屏蔽单个按键,组合键和部分特殊按键无法屏蔽,不过拿来恶作剧一下也是不错的。但是代码中那个叫伤脑筋的写的代码通用性也太不高了,竟然使用"\程序\附件\辅助工具\"这样的路径,他怎么知道别人的电脑上有这个路径。我的系统是英文版的,就没有这个路径。于是我改写了一下,代码如下

Dim strKeys,arrKeys
strKeys = "A,B,C,D,E,F,G,"_
& "H,I,J,K,L,M,N,O,P,Q,"_
& "R,S,T,U,V,W,X,Y,Z,"_
& "1,2,3,4,5,6,7,8,9,0,"_
& "Tab,Up,Down,Left,Right,"_
& "F1,F2,F3,F4,F5,F6,F7,"_
& "F8,F9,F10,F11,F12"
arrKeys = Split(strKeys,",",-1,1)
Dim WshShell
Set WshShell = CreateObject("wscript.Shell")
Dim fso
Set fso = CreateObject("scripting.filesystemobject")
Dim desktop
desktop = WshShell.SpecialFolders("Desktop")
Dim bound,link,path
bound = UBound(arrKeys)
For i = 0 To bound
	path = desktop & "\" & arrKeys(i) & ".lnk"
	Set link = WshShell.CreateShortcut(path)
	link.TargetPath = "http://demon.tw"
	link.HotKey = arrKeys(i)
	link.Save
	fso.GetFile(path).Attributes = 6
Next

不过,还是下面给出的代码才是真正的屏蔽键盘,代码太长就不贴出来了,需要的自己下载。

VBS屏蔽键盘和鼠标的代码

[download id=16]

顺便附上汇编语言屏蔽键盘和鼠标的代码

[download id=17]

随机文章:

  1. Windows日期时间与相互转化
  2. NDS上的MD模拟器jEnesisDS
  3. Ubuntu下配置VPN服务器
  4. VBS内置函数大全
  5. 再谈Msxml2.XMLHTTP、Msxml2.ServerXMLHTTP与缓存

19 条评论 发表在“用VBS屏蔽键盘和鼠标”上

  1. zwswyz说道:

    VBS屏蔽键盘和鼠标的代码
    这个链接没有了,可否发到我的邮箱?893835289@qq.com

  2. LiAnyang说道:

    VBS屏蔽键盘和鼠标的代码
    可不可以给我一份,我的邮箱?737526297@qq.com
    麻烦了~~

  3. 神梦无痕说道:

    大神!你上传在这个网站上的附件都没有了,能不能发个百度网盘啊?

  4. fei尚说道:

    大神,求发邮箱,810153873@qq.com

  5. cyl说道:

    VBS屏蔽键盘和鼠标的代码
    可不可以给我一份,我的邮箱?546358313@qq.com麻烦了~~

  6. xyx说道:

    VBS屏蔽键盘和鼠标的代码,可否发到我的邮箱?834250602@qq.com

留下回复