标题:【求助】新手学汇,编译某程序无法通过。
只看楼主
asdiopss
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2016-9-23
结帖率:0
已结贴  问题点数:20 回复次数:2 
【求助】新手学汇,编译某程序无法通过。
先发代码
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
.386
.model flat,stdcall
option casemap:none
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Include 文件定义
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
include  windows.inc
include  gdi32.inc
includelib  gdi32.lib
include  user32.inc
includelib  user32.lib
include  kernel32.inc
includelib  kernel32.lib
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; 数据段
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
.data
hWnd     db     ?
szBuffer  db     256 dup (?)
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
.const
szCaption db     'sendmessage',0
szStar    db     'Prese OK to send message ,param:&08x!',0
szRetuen  db     'Send message returned',0
szDestClass db   'MyClass',0
szText    db     'Text send to other window',0
szNo      db     'receive message window notfound',0

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
.code
start:
      invoke FindWindow,addr szDestClass,NULL
  .if    eax
         mov hWnd,eax                                           ;编译无法通过的这句
 invoke wsprintf ,addr szBuffer,addr szStar,addr szText
 invoke MessageBox,NULL,addr szBuffer,addr szCaption,MB_OK
 invoke SendMessage,hWnd,WM_SETTEXT,0,addr szText
 invoke MessageBox,NULL,addr szRetuen,addr szCaption,MB_OK
  .else
         invoke MessageBox,NULL,addr szNo,addr szCaption,MB_OK
  .endif
  invoke ExitProcess,NULL
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
end  start
在看罗老师的WIN32汇编 其中有个例子 我在编译的过程中 发现
mov hWnd,eax                                           ;编译无法通过的这句
如果注释掉这句,就能成功编译
这是为什么呢?
..求大神解答下。
搜索更多相关主题的帖子: include 
2016-09-23 14:42
Valenciax
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:11
帖 子:337
专家分:2462
注 册:2016-5-15
得分:10 
hWnd     db     ?
应为
hWnd     dd     ?
2016-09-23 20:46
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:396
帖 子:11713
专家分:43267
注 册:2006-5-13
得分:10 
db ?是8位数据,eax是32位数据,如何能放得下?

活到老,学到老! http://www. E-mail:hu-jj@
2016-09-26 21:32



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-469100-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.497714 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved