首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

求改写一小段代码,该怎么解决

2012-02-20 
求改写一小段代码winio.dll到下面下载http://www.internals.com/utilities/winio.zip全部代码在http://jac

求改写一小段代码
winio.dll到下面下载
http://www.internals.com/utilities/winio.zip
全部代码在http://jackyhwk.139.com/article/699015.html
我只会会写vb或C#代码,对于上面的文章改写了,不成功,只有几行,请哪位高手帮帮忙改成   vb或C#代码

附关键的几行
procedure   SetKey(SCanCode:   byte);
begin
asm
//无论向0x60,还是0x64写东西前都要等状态寄存器OBF变0
@Loop1:
in   al,   $64
and   al,   01b
jnz   @Loop1
//向$64端口写命令
mov   al,   $D2//写键盘输出缓存命令
out   $64,   al

//无论向0x60,还是0x64写东西前都要等状态寄存器OBF变0
@Loop2:
in   al,   $64
and   al,   01b
jnz   @Loop2
//向$60端口写参数
mov   al,   SCanCode
out   $60,   al
end;
end;

模拟非扩展键:
SetKey($1F);//make   codes
Sleep(25);
SetKey($9F);//break   code

模拟扩展键:
SetKey($E0);//因为这是一个扩展键
SetKey($4B);//make   codes
Sleep(25);
SetKey($E0);//因为这是一个扩展键
SetKey($CB);//break   code
模拟鼠标的类似。
载入驱动:InitializeWinIo
卸下驱动:ShutdownWinIo
终于搞定了

Loop:
in   al,   0x64
and   al,   10b
jnz   Loop
大功告成


SetKey(0x09);//左键按下
SetKey(0x00);
SetKey(0x00);
SetKey(0x00);
SetKey(0x08);//左键放开
SetKey(0x00);
SetKey(0x00);
SetKey(0x00);




[解决办法]
·······
[解决办法]
看不明白。。。密切关注

热点排行