鱼C论坛

 找回密码
 立即注册
查看: 2446|回复: 1

[技术交流] Win32的编译链接[o(∩_∩)o]

[复制链接]
发表于 2012-5-17 11:09:57 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
@echo off
#rem把程序名字改掉就可以了 不需要加后缀名
set _NAME=程序名字
 
rem 设置环境变量~~
set Masm32Dir=E:\Masm32
set include=%Masm32Dir%\Include;%include%
set lib=%Masm32Dir%\lib;%lib%
set path=%Masm32Dir%\Bin;%Masm32Dir%;%PATH%
set Masm32Dir=
 
rem 开始编译连接哈
ml /c /coff /Cp %_NAME%.asm
link /subsystem:windows %_NAME%.obj
del %_NAME%.obj
 
rem 再暂停下下...
pause
echo on
上面一段是var.bat的改装
看到使用 MASM06的时候 本来想nmake编译链接 可是突然一堆错误 你们也看下哈
1.OBJ : warning LNK4033: converting object format from OMF to COFF
1.OBJ : error LNK2001: unresolved external symbol _MessageBoxA@16
1.OBJ : error LNK2001: unresolved external symbol _ExitProcess@4
LINK : error LNK2001: unresolved external symbol _WinMainCRTStartup
1.exe : fatal error LNK1120: 3 unresolved externals
NMAKE : fatal error U1077: 'Link' : return code '0x460'
Stop.
我表示很无语 如果是自己单独 ml  再 link  到是可以 但是奇怪的这个是为啥..不解哈.
不过我突然想到批处理 就蒙了一下代码 也用set 虽然不知道var可以不可以 我没学过批处理哈.大家看下还有没要改的
不过感觉这个只要写下名字 不需要加后缀名感觉这个更方便哈.反正也可以 还不需要cmd 转 e 转masm\source再var.bat ...好多步骤大家也可以试试 我刚可是试过哈 如果名字里面有 空格的话也可以哈.很神奇的感觉.大家可以试试.

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-5-17 11:15:04 | 显示全部楼层
顶啊~~~~~~~~~~~~~~~~~~~~~~~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-20 04:53

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表