Referência de linha de comandos de ML e ML64

Monta e liga um ou mais ficheiros fonte em linguagem assembly. As opções de linha de comandos são sensíveis a maiúsculas e minúsculas.

Para mais informações sobre ml64.exe, veja MASM para x64 (ml64.exe).

Sintaxe

ML [options] filename [ [options] filename]

ML64 [options] filename [ [options] filename] ... [/linklink_options]

Parâmetros

options
As opções listadas na tabela seguinte:

Option Action
/AT Permite suporte a modelos de memória minúscula. Ativa mensagens de erro para construções de código que violam os requisitos para .com ficheiros de formatação. Esta opção não é equivalente à .MODELTINY diretiva.
Não disponível em ml64.exe.
/Bl filename Seleciona um ligador alternativo em filename.
/c Só reuniões. Não faz ligações.
/coff Gera um módulo de objeto do tipo common object file format (COFF). Necessário para o desenvolvimento de linguagem assembly Win32.
Não disponível em ml64.exe.
/Cp Preserva o caso de todos os identificadores de utilizador.
/Cu Mapeia todos os identificadores para maiúsculas (por defeito).
Não disponível em ml64.exe.
/Cx Preserva o caso em símbolos públicos e externos.
/D symbol⟦=value Define uma macro de texto com o nome symbolpróprio. Se value estiver em falta, está em branco. Múltiplas fichas separadas por espaços devem ser incluídas entre aspas.
/EP Gera uma lista de fonte pré-processada (enviada para STDOUT). Consulte /Sf.
/ERRORREPORT[ NONE | PROMPT | QUEUE | SEND] Deprecated. O relatório de erros é controlado pelas definições Windows Erro de Reporte (WER).
/F hexnum Define o tamanho da pilha para hexnum bytes (igual a /link /STACK:<number>). O valor deve ser expresso em notação hexadecimal. Deve haver um espaço entre /F e hexnum.
/Fe filename Nomeia o ficheiro executável.
/Flfilename Gera uma lista de código montada. Ver /sf.
/Fmfilename Cria um ficheiro de mapa linker.
/Fo filename Nomeia um ficheiro objeto. Para obter mais informações, veja Observações.
/FPi Gera correções de emuladores para aritmética de ponto flutuante (apenas em linguagem mista).
Não disponível em ml64.exe.
/Frfilename Gera um ficheiro de navegador .sbr de origem.
/FRfilename Gera uma forma estendida de um ficheiro de navegador .sbr de origem.
/Gc Especifica o uso de convenções ao estilo FORTRAN ou Pascal para chamadas e nomes de funções. O mesmo que OPTION LANGUAGE:PASCAL.
Não disponível em ml64.exe.
/Gd Especifica o uso de convenções de estilo C para chamadas e nomes de funções. O mesmo que OPTION LANGUAGE:C.
Não disponível em ml64.exe.
/Gz Especifica o uso de __stdcall convenções para chamadas e nomes de funções. O mesmo que OPTION LANGUAGE:STDCALL.
Não disponível em ml64.exe.
/H number Restringe nomes externos a number caracteres significativos. O padrão é 31 caracteres.
Não disponível em ml64.exe.
/help Apresenta um resumo da sintaxe e opções de linha de comandos de ML.
/I pathname Define o caminho para o ficheiro de inclusão. É permitido um máximo de 10 /I opções.
/nologo Suprime mensagens para montagem bem-sucedida.
/omf Gera um módulo de objeto do tipo formato de ficheiro de módulo de objeto (OMF). /omf implica /c. ML.exe não suporta ligar objetos OMF.
Não disponível em ml64.exe.
/quiet Suprime a mensagem de 'Montagem'. Disponível no Visual Studio 17.6 e versões posteriores.
/Sa Ativa a lista de toda a informação disponível.
/safeseh Marca o ficheiro objeto: ou não contém manipuladores de exceções, ou contém tratadores de exceções que são todos declarados com .SAFESEH.
Não disponível em ml64.exe.
/Sf Adiciona a lista de primeira passagem ao ficheiro da listagem.
/Sl width Define a largura da linha da listagem da fonte, em caracteres por linha, para width. O intervalo é de 60-255 ou 0. O padrão é 0. O mesmo que PAGEwidth.
/Sn Desliga a tabela de símbolos quando um anúncio é produzido.
/Sp length Define o comprimento da página da listagem de fontes, em linhas por página, para length. O intervalo é de 10-255 ou 0. O padrão é 0. O mesmo que PAGElength.
/Ss text Especifica o texto para a listagem de fontes. O mesmo acontece com SUBTITLE o texto.
/St text Especifica o título para a listagem da fonte. O mesmo acontece com TITLE o texto.
/Sx Ativa-se em falsos condicionais na listagem.
/Ta filename Monta o ficheiro fonte cujo nome não termina com a .asm extensão.
/unwindv3 Permite o suporte experimental da diretiva Unwind Versão 3. Quando especificado, as diretivas de desenrolar do V3 devem aparecer antes da sua instrução associada (o inverso do comportamento do V1), é necessária a gravação do epílogo via .BEGINEPILOG/.ENDEPILOG e a macro @UnwindVersion pré-definida devolve .3 Para mais informações, consulte MASM para x64 (ml64.exe).
Disponível apenas em ml64.exe.
/w O mesmo que /W0 /WX.
/W level Define o nível de aviso, onde level = 0, 1, 2 ou 3.
/WX Se forem gerados avisos, devolve um código de erro.
/X Ignora INCLUDE o caminho do ambiente.
/Zd Gera informação de número de linha no ficheiro de objetos.
/Zf Torna todos os símbolos públicos.
/ZH:MD5 Usa o MD5 para o checksum na informação de depuração.
/ZH:SHA_256 Use o SHA256 para soma de verificação na informação de depuração (padrão no Visual Studio 2022 versão 17.0 e posteriores).
/ZH:SHA384 Usa o SHA384 para o checksum na informação de debug. 18.6.0
/ZH:SHA512 Usa o SHA512 para o checksum na informação de depuração. 18.6.0
/Zi Gera informação do CodeView no ficheiro objeto.
/Zm Ativa M510 a opção para máxima compatibilidade com o MASM 5.1.
Não disponível em ml64.exe.
/Zpalignment Empacota estruturas na fronteira de bytes especificada. Podem alignment ser 1, 2, 4, 8 ou 16.
/Zs Faz apenas uma verificação de sintaxe.
/? Apresenta um resumo da sintaxe e opções de linha de comandos de ML.

18.6.0 Esta opção está disponível a partir de Visual Studio versão 18.6.0 de 2026 e MSVC versão 14.51.

filename
O nome do arquivo.

link_options
As opções de link. Para obter mais informações, consulte Opções do vinculador.

Remarks

Algumas opções de linha de comandos para ML e ML64 são sensíveis à colocação. Por exemplo, como ML e ML64 podem aceitar várias /c opções, quaisquer opções correspondentes /Fo devem ser especificadas antes /cde . O seguinte exemplo de linha de comandos ilustra uma especificação de ficheiro objeto para cada especificação de ficheiro assembly:

ml.exe /Fo a1.obj /c a.asm /Fo b1.obj /c b.asm

Variáveis de ambiente

Variable Descrição
INCLUDE Especifica o caminho de pesquisa para ficheiros de inclusão.
ML Especifica as opções padrão da linha de comandos.
TMP Especifica o caminho para ficheiros temporários.

Ver também

Mensagens de erro de ML
Referência do Microsoft Macro Assembler