首页 > 代码库 > 第一个win32汇编程序开发步骤

第一个win32汇编程序开发步骤

1.下载并安装MASM,下载nmake.exe工具,把namake.exe放到MASM安装目录的bin下。

 

2.编写一个用于设置环境变量的批处理文件var.bat(放到masm根目录即可) 文件的内容如下: 

@echo off 

rem 请根据Masm32 软件包的安装目录修改下面的Masm32Dir 环境变量!

set masm32Dir=D:\masm32 

set include=%masm32Dir%\Include;%include% 

set lib=%masm32Dir%\lib;%lib% 

set path=%masm32Dir%\Bin;%masm32Dir%;%PATH% 

set masm32Dir= 

echo on

 

3.每打开一个新的命令行控制台,就要执行一次var.bat(否则控制台会找不到masm,link,nmake等命令),省力的做法是把环境变量添加到用户变量,或系统变量中去。

 

4.用编辑器写一个.asm文件,在命令提示符下切换到相应目录,用MASM编译和链接一个Win32汇编源程序常用的命令是:

ml /c /coff xx.asm 

link /subsystem:windows xx.obj yy.lib zz.res (普通PE文件)

link /subsystem:console xx.obj yy.lib zz.res (控制台文件)

link /subsystem:windows /dll /def:aa.def xx.obj yy.lib zz.res (DLL文件)

 

4.显然使用Link比较复杂,我们可以事先写好一个makefile,然后通过用nmake工具链接。

makefile写法如下:

EXE = Test.exe #指定输出文件
OBJS = Test.obj #需要的目标文件
RES = Test.res #需要的资源文件

LINK_FLAG = /subsystem:windows #连接选项
ML_FLAG = /c /coff #编译选项

$(EXE): $(OBJS) $(RES)
Link $(LINK_FLAG) $(OBJS) $(RES)

.asm.obj:
ml $(ML_FLAG) $<
.rc.res:
rc $<

clean:
del *.obj
del *.res

然后切换到相应文件目录下使用nmake就可以了。

 

5.总结起来步骤为:

自己写程序代码 -->修改makefile --> 命令提示符下运行var.bat --> masm编译 -->nmake

则.exe文件生成。