Assembly Visual Studio Express和宏汇编程序包括 我既有VisualStudio Express 2012,也有VC++ C++ Express 2010。我使用他们的两个32位MASM编译器(ml.exe)得到了相同的结果。我不知道,但我怀疑非express用户可能也有同样的问题

Assembly Visual Studio Express和宏汇编程序包括 我既有VisualStudio Express 2012,也有VC++ C++ Express 2010。我使用他们的两个32位MASM编译器(ml.exe)得到了相同的结果。我不知道,但我怀疑非express用户可能也有同样的问题,assembly,visual-studio-express,masm,Assembly,Visual Studio Express,Masm,我正试图用MASM编译一个小程序。显然,我需要包括masm32rt.inc。编译器抱怨它找不到这样的文件,事实上,我的系统上似乎没有这个文件。经过一些搜索,我设法找到了该文件的一个版本,但结果证明它只是我没有的文件中的更多的include-s和includelib-s 我尝试了include\masm32\include\masm32rt.inc,include\masm32\include\windows.inc,include windows.inc,以及include masm32rt.i

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

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


有什么我遗漏的吗?谷歌没有提供太多帮助。大多数教程都假设我有这些文件。但是,大多数教程都是以从中加载MASM的说明开始的。我不能使用我已有的任何MASM编译器吗?

不,ml只是汇编程序。除非您想重新设计控制盘并创建所有包含和导入库,否则您需要安装masm32。它包括所需的包含、导入库、结构、等同等。。。这将使您的生活更加轻松

您试图编译的代码使用MASM32宏和/或MASM32库。这意味着它是为MASM32建造的。MASM32宏和库在Visual Studio中不可用,因为MASM32是一个不同的MASM兼容(在某种程度上)编译器。要成功编译代码,您必须至少拥有所需的include文件。

MASM32使用与VS相同的精确汇编程序(ML)和链接器。它是基于类固醇的MASM。MASM32可以与VS一起使用。MASM32包含宏、原型、结构定义、导入库等,以简化操作。您不必使用它,但您必须为api调用创建原型、导入库、结构和等价物。太糟糕了。尽管我可以使用includes并使用Visual Studio提供的ml.exe编译器编译masm32.com安装提供的示例。它显然是相同的,或者几乎是相同的编译器。那么,问题是,为什么masm32.com的人不把include和samples单独下载,而不是强迫我在root:\masm32:(