Why do I have to set a source `.asm` file’s `Properties > General > Item Type` to ` Microsoft Macro Assembler` …?

Solution for Why do I have to set a source `.asm` file’s `Properties > General > Item Type` to ` Microsoft Macro Assembler` …?
is Given Below:

Why do I have to set a source .asm file’s Properties > General > Item Type to Microsoft Macro Assembler, even though I had already selected for the project node, the option Build dependencies > Build Customization > masm.

It may depend on which version of Visual Studio you are using, but I recall what seemed like a one time option to auto-select masm for .asm file with one of the versions. After dealing with multiple versions of Visual Studio and having issues with some versions, I manually set the properties for each .asm file to use a custom build tool (also turn off does not participate in build as commented by John Kalane), which is working for all the versions I have (VS2005, VS2010, VS2015, VS2019).

32 bit debug build, for release build /Zi is not needed:

command line: ml /c /Zi /Fo$(OutDir)example.obj example.asm
outputs: $(OutDir)example.obj

64 bit debug build, for release build /Zi is not needed:

command line: ml64 /c /Zi /Fo$(OutDir)example.obj example.asm
outputs: $(OutDir)example.obj