读书人

汇编程序连接过程异常

发布时间: 2012-02-13 17:20:26 作者: rapoo

汇编程序连接过程错误
下边的程序,汇编通过,可"Build All"时,产生如下的错误:
c.obj : error LNK2001: unresolved external symbol _ExitProcess@0
c.obj : error LNK2001: unresolved external symbol _Crlf@0
c.obj : error LNK2001: unresolved external symbol _WriteString@0

请问如何解决这个问题?源代码如下:
INCLUDE E:\masm32\include\Irvine32.inc

.data
aName BYTE "abcdefghijklnm",0
nameSize=($-aName)-1

.code
main PROC

mov ecx,nameSize
mov esi,0
L1: movzx eax,aName[esi]
push eax
inc esi
loop L1

mov ecx,nameSize
mov esi,0
L2: pop eax
mov aName[esi],al
inc esi
loop L2

mov edx,offset aName
call WriteString
call Crlf
exit
main ENDP
END main


[解决办法]
虽然我不用masm但也可以猜到,这是因为你缺少了包含文件。如果是在nasm中,自己声明一下那三个符号,然后找一下定义了它们的lib库连接的时候加上就可以了。
[解决办法]
你这个问题的原因是因为缺少必要的lib库。找找它们在哪个库里加上就好。masm有includelib宏吧,所以我不太肯定那个库是不是写在了某个.inc中。
[解决办法]
检查路径

读书人网 >汇编语言

热点推荐