刚开始学汇编语言,在debug下敲了几次代码不想写了,朋友推荐了rad,不料构建时报错了,当时没在意,换了masmplus使用,没想到一步运行的时候还是错,错误代码如下:
LINK : error LNK2001: unresolved external symbol _WinMainCRTStartup
loopAndbx.exe : fatal error LNK1120: 1 unresolved externals
原因:windows XP是32位系统,asm源文件却用到了16位的寄存器,链接的时候会出错。
解决办法:masmPlus,【配置】--【系统配置】--【编译/脚本】,勾选单独文件默认使用DOS模式(第二链接器),编译单独asm文件的时候就不会出问题了,但是注意,是16位的时候。如果32位的汇编,不要勾这个了。
原文地址:http://www.xcopys.com/archives/360,转载请注明出处。