看到题目,就有人说了,masm32和RadASM搭配多好,绝配,你使virtual studio,纯是烧包。
不错,vs在C语言上有语法高亮和自动填充,但是汇编就没有了。
RadASM在汇编有同样功能,多好。
但是有人就喜欢使用vs,那就用呗,提醒下,vs的windows控件很爽啊。
好了,书说正传。一切从简。
不知道什么是masm32?,呵呵,我也不知道,你别问我。google去。
具体操作步骤:
1.安装masm32,安装的时候一般都会要求你安装到某个盘符根目录下,满足它。
2.安装vs2010,没有什么具体要求。
3.配置vs2010为C++编译环境。
4.运行vs2010,生成空工程。
5.选择生成自定义项:在你填写的工程名上点击右键,选择生成自定义,然后选择masm项,确定。
6.选择lib库:在你填写的工程名上点击右键,选择属性,打开工程属性页,点击配置属性树形列表,点击连接器项,在右边属性的额外库属性中添加额外库,就是你所安装的masm32程序的lib 文件夹目录。这一步非常重要,必须在添加源文件之前设置,否则在后续的项目属性设置对话框中将看不到MASM的设置选项。
7.添加文件,选择cpp,但是名字用.asm,啥原因?自己想!另外一定要先搞这步,不然后面的微软宏汇编项找不着。
8.选择include:在你填写的工程名上点击右键,选择属性,打开工程属性页,点击配置属性树形列表,点击下面的微软宏汇编项,在其中的include path中填入你安装masm32程序的include文件夹目录。
9.最后,子系统选项:这个我就不管了,是console就选console,是windows就选windows,要是你用汇编写了一个windows程序,非要用console,那你程序后面出现个很讨厌的黑色命令框,你可别怨我,概不负责。提示:在属性页,系统选项下。
10.最最后,写代码啊,编译啊,执行啊。
11.没有了。
12.这个可以有,但是真的没有了。
13.我告诉你了,没有了
Demo:
.386
.model flat, stdcall
option casemap: none
include windows.inc
include kernel32.inc
include user32.inc
includelib kernel32.lib
includelib user32.lib
.data
szCaption db "Hello", 0
szText db "Hello World!", 0
.code
main PROC
INVOKE MessageBox, NULL, addr szText, addr szCaption, MB_OK
INVOKE ExitProcess, 0
main ENDP
END main