MASM32配置问题

1. 总述

当你用masm32 SDK出现类似下面的错误情况:

cannot open file :windows.inc

这说明你的汇编器无法找到windows.inc这个头文件, 有3种解决方法

2. 解决方法

a. 使用绝对路径

直接把需要的inc头文件或者lib库文件的绝对路径包含进去, 问题就解决了

.586
.model flat, stdcall
option casemap:none 

; 使用绝对路径
include D:/masm32/include/windows.inc 
include D:/masm32/include/kernel32.inc 
includelib D:/masm32/lib/kernel32.lib
include D:/masm32/include/user32.inc 
includelib D:/masm32/lib/user32.lib 
include D:/masm32/include/gdi32.inc 
includelib D:/masm32/lib/gdi32.lib
include D:/masm32/include/msvcrt.inc 
includelib D:/masm32/lib/msvcrt.lib

b. 添加系统环境变量

这种方法是一劳永逸的方法, 但需要修改环境变量。将include和lib的目录加到环境变量后, 汇编器就会自动寻找环境变量目录下的内容:
添加一个INCLUDE环境变量, 以及LIB环境变量分别如下:
MASM32配置问题_第1张图片
要让汇编代码生成对应的exe可执行文件, 还需要汇编器ml.exe以及链接器link.exe, 这两个东西位于masm32的bin目录下:
MASM32配置问题_第2张图片
为了能够直接在终端运行, 也要将该目录添加到环境变量的PATH下。
MASM32配置问题_第3张图片找到PATH后, 添加进去即可
MASM32配置问题_第4张图片
完成到这里后就可以重启终端, 所有问题都会被解决。

c. 添加bat脚本

实际上这种方式和添加环境变量是一样的, 只是使用了批处理bat来自动化处理。

@echo off
set MASM=D:\masm32
set INCLUDE=%MASM%\include
set LIB=%MASM%\lib
set PATH=%PATH%;%MASM%\bin

由于我是把masm32 SDK装在D盘, 如果你不是装D盘, 那把D:\masm32换成你的安装目录就行了, 需要注意的是, 不要在脚本的后面多空格或者其他的字符, 这样会导致找不到, 因为bat脚本会把那些字符也包含进去。
执行了这个批处理后, 就可以进汇编的汇编链接了。
(完)

你可能感兴趣的:(IA-32,x32控制台汇编,assembly,汇编)