Visual Studio Express和Macro Assembler包括

时间:2012-10-26 13:15:49

标签: assembly visual-studio-express masm

我同时拥有Visual Studio Express 2012和Vicual C ++ Express 2010.我的32位MASM编译器(ml.exe)都得到了相同的结果。 我不知道,但我怀疑非快递用户可能会遇到同样的问题。

我正在尝试使用MASM编译一个小程序。显然我需要加入masm32rt.inc。编译器抱怨它找不到这样的文件,事实上我似乎没有在我的系统上。经过一些搜索,我设法找到了该文件的一个版本,但事实证明只有include - s和includelib - 我没有的文件。

我尝试了include \masm32\include\masm32rt.incinclude \masm32\include\windows.incinclude windows.incinclude masm32rt.inc。我尝试使用visual studio express命令提示符编译它们2010年和2012年> ml test.asm。我试着搜索那些文件,我的电脑上没有它们。我确实有一些(大约30个).inc文件,如macamd64.incmm.inc,但它们似乎都不包含我需要的东西:Windows函数和常量的声明。

有什么我想念的吗?谷歌没有提供太多帮助。大多数教程都假设我有这些文件。但是,大多数教程再次开始从masm32.com下载MASM的指令。我不能使用我已经拥有的任何MASM编译器吗?

2 个答案:

答案 0 :(得分:1)

不,ml只是汇编程序。除非你想重新发明轮子并创建所有包含和导入库,否则你需要安装masm32。它包括所需的包括,导入库,结构,等等......它将使您的生活更轻松

答案 1 :(得分:-2)

您尝试编译的代码使用 MASM32 宏和/或 MASM32 库。这意味着它是为 MASM32 构建的。 MASM32 中的 MASM32 宏和库不可用,因为 MASM32 是不同的 MASM 兼容的(对于范围)编译器。您必须至少拥有所需的包含文件才能成功编译该代码。