欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

win32汇编如何编译?已经有工具了

更新时间: 2014-01-05 03:18:01 责任编辑: Author_N1

 

win32汇编怎么编译?已经有工具了
win32汇编怎么编译?

看的是罗云彬的教程
下面这段程序在“RadASM.exe”里面就可以编译成*.obj文件
现在在源文件前面加上


ml /c /coff /Cp /nologo /I"C:\masm32\INCLUDE" "C:\masm32\BIN\WIN.asm"
link /subsystem:windows /LIBPATH:"C:\masm32\lib"  
自己用C:\masm32\BIN\bin目录下的ml.exe就编译不了了,
怎么回事,那里出错了
我是把源文件放到bin目录下面,直接把源文件托到ml.exe图标 ,也编译不了
出现一个黑框马上就消失了,也没有*.obj文件出现
怎么回事?原代码在RadASM.exe里面可以编译了滴,但就是加了上面的两行代码用ml.exe  就编译不了了





----------------------------------------------------程序:

.386
.model flat,stdcall
option casemap:none

include windows.inc
include user32.inc
includelib user32.lib
include kernel32.inc
includelib kernel32.lib

.data
szCaption db 'A MessageBox !',0
szText db 'Hello, World !',0

.code
start:
invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK
invoke ExitProcess,NULL

end start




--参考方法--
加 ml 和link 的那两行?那是编译和链接的命令行,不是源程序的一部分;源程序,只要下面的那部分就可以了。
--参考方法--
最好把bin路径加入PATH。省得每次都要cd xxx
--参考方法--
要注意的是汇编选项要集中写在源文件名的前面,比如下面的两条命令:


你理解错了,是文件“名”前面,不是文件里的最前面。
听那两位浑身是牌子的,不会错。
--参考方法--
ml 和 link 那两个命令就象你用的 radasm,是命令行上用的,在源程序里不需要写。
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 03:18:01
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/20572/
本文WWW.DOC100.NET DOC100.NET版权所有。