我用WINIO在VB下模拟鼠标左键点击,具体代码如下:
Private Sub XR()
Dim Result As Boolean
Result = SetPortVal(Val("&H64"), Val("&HD3"), 1)
If (Result = False) Then
MsgBox "Whoops ! There is a problem with SetPortByte.", vbOKOnly + vbCritical, "VBDumpPort32"
Unload FrmVBDumpPort32
End If
Sleep 100
Result = SetPortVal(Val("&H64"), Val("&Hf4"), 1)
If (Result = False) Then
MsgBox "Whoops ! There is a problem with SetPortByte.", vbOKOnly + vbCritical, "VBDumpPort32"
Unload FrmVBDumpPort32
End If
Result = SetPortVal(Val("&H60"), Val("&H09"), 1)
If (Result = False) Then
MsgBox "Whoops ! There is a problem with SetPortByte.", vbOKOnly + vbCritical, "VBDumpPort32"
Unload FrmVBDumpPort32
End If
Result = SetPortVal(Val("&H60"), Val("&H00"), 1)
If (Result = False) Then
MsgBox "Whoops ! There is a problem with SetPortByte.", vbOKOnly + vbCritical, "VBDumpPort32"
Unload FrmVBDumpPort32
End If
Result = SetPortVal(Val("&H60"), Val("&H00"), 1)
If (Result = False) Then
MsgBox "Whoops ! There is a problem with SetPortByte.", vbOKOnly + vbCritical, "VBDumpPort32"
Unload FrmVBDumpPort32
End If
Result = SetPortVal(Val("&H60"), Val("&H08"), 1)
If (Result = False) Then
MsgBox "Whoops ! There is a problem with SetPortByte.", vbOKOnly + vbCritical, "VBDumpPort32"
Unload FrmVBDumpPort32
End If
Result = SetPortVal(Val("&H60"), Val("&H00"), 1)
If (Result = False) Then
MsgBox "Whoops ! There is a problem with SetPortByte.", vbOKOnly + vbCritical, "VBDumpPort32"
Unload FrmVBDumpPort32
End If
Result = SetPortVal(Val("&H60"), Val("&H00"), 1)
If (Result = False) Then
MsgBox "Whoops ! There is a problem with SetPortByte.", vbOKOnly + vbCritical, "VBDumpPort32"
Unload FrmVBDumpPort32
End If
End Sub
在PS2鼠标协议中的要给命令:F4,才能写入,看着论坛上说的要等__
"//无论向0x60,还是0x64写东西前都要等状态寄存器OBF变0"
这个OBF寄存器不懂是什么呵,用VB怎么才能检测到这样寄存器是"0"呢?
我用上面的代码并不是每次都不成,有时也能模拟出单击的效果,但很不稳定,
有时会造成重起,我的是XP系统,对VB也是一知半解的,是不是WINIO在XP下本来
就不稳定还是我的代码不正确?我觉得偶尔能成功,应该是OBF正好是:0了,我的代
码才能写入吧.
期待高手指点,忠心感谢>>>>>>
[课程]Linux pwn 探索篇!