首页
社区
课程
招聘
问题:显示鼠标的坐标,奇怪的错误?
发表于: 2008-3-6 23:08 3177

问题:显示鼠标的坐标,奇怪的错误?

2008-3-6 23:08
3177
显示鼠标的坐标:获得坐标后调用自定义的函数转换成字符。
鼠标限制在窗口内,不会小于100。
z10 dd 10
sbx dd ?
dz dd 3 dup(?);转换成字符后存储在此。

invoke GetCursorPos,addr sbx
sub dword ptr sbx,100;;;;;;;;;;;;;;;;;;;;;;;;;;;这里注释掉,显示的坐标正确,减100后则会显示错误的坐标。
push dword ptr sbx
push offset dz
call zfzh
……
……
……
zfzh:
mov ebx,DWORD ptr [esp+4]
mov eax,DWORD ptr [esp+8]
mov ecx,9
cmp eax,1000000000
jnc @f
dec ecx
cmp eax,100000000
jnc @f
dec ecx
cmp eax,10000000
jnc @f
dec ecx
cmp eax,1000000
jnc @f
dec ecx
cmp eax,100000
jnc @f
dec ecx
cmp eax,10000
jnc @f
dec ecx
cmp eax,1000
jnc @f
dec ecx
cmp eax,100
jnc @f
dec ecx
cmp eax,10
jnc @f
dec ecx
@@:
xor edx,edx
div DWORD ptr z10
add edx,30h
mov BYTE ptr [ebx+ecx],dl
dec ecx
cmp ecx,0ffffffffh
jnz @B
add esp,12
jmp DWORD ptr [esp-12]

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回