社区
汇编语言
帖子详情
为什么输出的是0呢
shijin_wang
2012-02-11 10:22:28
mov ecx,1100
invoke RtlZeroMemory,addr szBuffer,sizeof szBuffer
invoke wsprintf,addr szBuffer,addr szFormat, ecx
invoke MessageBox,0, addr szBuffer,addr AppName,MB_OK
...全文
121
5
打赏
收藏
为什么输出的是0呢
mov ecx,1100 invoke RtlZeroMemory,addr szBuffer,sizeof szBuffer invoke wsprintf,addr szBuffer,addr szFormat, ecx invoke MessageBox,0, addr szBuffer,addr AppName,MB_OK
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
大熊猫侯佩
2012-02-13
打赏
举报
回复
ecx有变化
s11ss
2012-02-12
打赏
举报
回复
估计3L是对的,要记住对于各种调用约定,如stdcall等,都有:
1. 函数内部自由使用eax,ecx和edx.即调用完此函数后,很可能eax,ecx和edx的值都变了,而其他寄存器保持不变!
2. 返回值保存在eax中!
tanxiqiao
2012-02-11
打赏
举报
回复
在调用RtlZeroMemor的时候,RtlZeroMemor使用了ecx寄存器,致使cex寄存器的值变为了0,
invoke RtlZeroMemory,addr szBuffer,sizeof szBuffer
mov ecx,1100
调换一下位置,就没问题了
汇编语言
21,459
社区成员
41,601
社区内容
发帖
与我相关
我的任务
汇编语言
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
复制链接
扫一扫
分享
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章