-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
Tenha um projeto selecionado no Gerenciador de Soluções. No menu Projeto, clique em Propriedades.
Clique na guia Aplicativo .
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