Partilhar via


-target (Visual Basic)

Especifica o formato de saída do compilador.

Sintaxe

-target:{exe | library | module | winexe | appcontainerexe | winmdobj}

Observações

A tabela a seguir resume o efeito da -target opção.

Opção Comportamento
-target:exe Faz com que o compilador crie um aplicativo de console executável.

Esta é a opção padrão quando nenhuma -target opção é especificada. O arquivo executável é criado com uma extensão .exe.

A menos que especificado de outra forma com a -out opção, o nome do arquivo de saída leva o nome do arquivo de entrada que contém o Sub Main procedimento.

Apenas um Sub Main procedimento é necessário nos arquivos de código-fonte que são compilados em um arquivo .exe. Use a -main opção do compilador para especificar qual classe contém o Sub Main procedimento.
-target:library Faz com que o compilador crie uma biblioteca de vínculo dinâmico (DLL).

O arquivo de biblioteca de vínculo dinâmico é criado com uma extensão .dll.

A menos que especificado de outra forma com a -out opção, o nome do arquivo de saída leva o nome do primeiro arquivo de entrada.

Ao criar uma DLL, um Sub Main procedimento não é necessário.
-target:module Faz com que o compilador gere um módulo que pode ser adicionado a um assembly.

O arquivo de saída é criado com uma extensão de .netmodule.

O Common Language Runtime do .NET não pode carregar um arquivo que não tenha um assembly. No entanto, você pode incorporar esse arquivo no manifesto de assembly de um assembly usando -reference.

Quando o código em um módulo faz referência a tipos internos em outro módulo, ambos os módulos devem ser incorporados em um manifesto de montagem usando -reference.

A opção -addmodule importa metadados de um módulo.
-target:winexe Faz com que o compilador crie um aplicativo executável baseado no Windows.

O arquivo executável é criado com uma extensão .exe. Um aplicativo baseado no Windows é aquele que fornece uma interface do usuário da biblioteca de classes do .NET Framework ou com as APIs do Windows.

A menos que especificado de outra forma com a -out opção, o nome do arquivo de saída leva o nome do arquivo de entrada que contém o Sub Main procedimento.

Apenas um Sub Main procedimento é necessário nos arquivos de código-fonte que são compilados em um arquivo .exe. Nos casos em que seu código tem mais de uma classe que tem um Sub Main procedimento, use a -main opção do compilador para especificar qual classe contém o Sub Main procedimento
-target:appcontainerexe Faz com que o compilador crie um aplicativo executável baseado no Windows que deve ser executado em um contêiner de aplicativo. Esta definição foi concebida para ser utilizada para aplicações da Loja Windows 8.x.

A configuração appcontainerexe define um pouco no campo Características do arquivo executável portátil. Esse bit indica que o aplicativo deve ser executado em um contêiner de aplicativo. Quando esse bit é definido, ocorre um erro se o CreateProcess método tentar iniciar o aplicativo fora de um contêiner de aplicativo. Além dessa configuração de bits, -target:appcontainerexe é equivalente a -target:winexe.

O arquivo executável é criado com uma extensão .exe.

A menos que você especifique o contrário usando a -out opção, o nome do arquivo de saída leva o nome do arquivo de entrada que contém o Sub Main procedimento.

Apenas um Sub Main procedimento é necessário nos arquivos de código-fonte que são compilados em um arquivo .exe. Se o código contiver mais de uma classe que tenha um Sub Main procedimento, use a -main opção do compilador para especificar qual classe contém o Sub Main procedimento
-target:winmdobj Faz com que o compilador crie um arquivo intermediário que você pode converter em um arquivo binário (.winmd) do Tempo de Execução do Windows. O arquivo .winmd pode ser consumido por programas JavaScript e C++, além de programas de linguagem gerenciada.

O arquivo intermediário é criado com uma extensão .winmdobj.

A menos que você especifique o contrário usando a -out opção, o nome do arquivo de saída leva o nome do primeiro arquivo de entrada. Não é necessário um Sub Main procedimento.

O arquivo .winmdobj foi projetado para ser usado como entrada para a WinMDExp ferramenta de exportação para produzir um arquivo de metadados do Windows (WinMD). O arquivo WinMD tem uma extensão .winmd e contém o código da biblioteca original e as definições do WinMD que JavaScript, C++ e o Tempo de Execução do Windows usam.

A menos que você especifique -target:module, -target faz com que um manifesto de assembly do .NET Framework seja adicionado a um arquivo de saída.

Cada instância do Vbc.exe produz, no máximo, um arquivo de saída. Se você especificar uma opção de compilador como -out ou -target mais de uma vez, a última opção que o compilador processa será colocada em vigor. Informações sobre todos os arquivos em uma compilação são adicionadas ao manifesto. Todos os arquivos de saída, exceto aqueles criados com -target:module contêm metadados de assembly no manifesto. Use Ildasm.exe (IL Disassembler) para exibir os metadados em um arquivo de saída.

A forma abreviada de -target é -t.

Para definir -target no IDE do Visual Studio

  1. Tenha um projeto selecionado no Gerenciador de Soluções. No menu Projeto, clique em Propriedades.

  2. Clique na guia Aplicativo .

  3. Modifique o valor na caixa Tipo de aplicativo.

Exemplo

O código a seguir compila in.vb, criando in.dll:

vbc -target:library in.vb

Consulte também