Partilhar via


Lc.exe (Compilador de licença)

O compilador de licença lê arquivos de texto que contêm informações de licenciamento e produz um arquivo binário que pode ser incorporado em um executável de common language runtime como um recurso.

Um arquivo de texto .licx é gerado ou atualizado automaticamente pelo Windows Forms Designer sempre que um controle licenciado é adicionado ao formulário. Como parte da compilação, o sistema de projeto transformará o arquivo de texto .licx em um recurso binário .licenses que fornece suporte para licenciamento de controle .NET. O recurso binário será então incorporado na saída do projeto.

A compilação cruzada entre 32 bits e 64 bits não é suportada quando você usa o compilador de licença ao criar seu projeto. Isso ocorre porque o compilador de licença tem que carregar assemblies, e carregar assemblies de 64 bits de um aplicativo de 32 bits não é permitido, e vice-versa. Nesse caso, use o compilador de licença da linha de comando para compilar a licença manualmente e especifique a arquitetura correspondente.

Esta ferramenta é instalada automaticamente com o Visual Studio. Para executar a ferramenta, use o Visual Studio Developer Command Prompt ou o Visual Studio Developer PowerShell.

Na linha de comandos, escreva o seguinte:

Sintaxe

      lc /target:  
targetPE /complist:filename [-outdir:path]  
/i:modules [/nologo] [/v]  
Opção Description
/complist: nome do ficheiro Especifica o nome de um arquivo que contém a lista de componentes licenciados a serem incluídos no arquivo .licenses. Cada componente é referenciado usando seu nome completo com apenas um componente por linha.

Os usuários de linha de comando podem especificar um arquivo separado para cada formulário no projeto. Lc.exe aceita vários arquivos de entrada e produz um único arquivo .licenses.
/h[ELP] Exibe a sintaxe do comando e as opções da ferramenta.
/i: módulo Especifica os módulos que contêm os componentes listados no arquivo /complist . Para especificar mais de um módulo, use vários sinalizadores /i .
/nologo Suprime a exibição do banner de inicialização da Microsoft.
/outdir: caminho Especifica o diretório no qual colocar o arquivo .licenses de saída.
/alvo: targetPE Especifica o executável para o qual o arquivo .licenses está sendo gerado.
/v Especifica o modo detalhado; Exibe informações sobre o progresso da compilação.
@arquivo Especifica o arquivo de resposta (.rsp).
/? Exibe a sintaxe do comando e as opções da ferramenta.

Exemplo

  1. Se você estiver usando um controle MyCompany.Samples.LicControl1 licenciado contido em Samples.DLL um aplicativo chamado HostApp.exe, você pode criar HostAppLic.txt que contém o seguinte.

    MyCompany.Samples.LicControl1, Samples.DLL  
    
  2. Crie o arquivo .licenses chamado HostApp.exe.licenses usando o comando a seguir.

    lc /target:HostApp.exe /complist:hostapplic.txt /i:Samples.DLL /outdir:c:\bindir  
    
  3. Crie HostApp.exe incluindo o arquivo .licenses como um recurso. Se você estivesse criando um aplicativo C#, usaria o seguinte comando para criar seu aplicativo.

    csc /res:HostApp.exe.licenses /out:HostApp.exe *.cs  
    

O comando a seguir é compilado a partir das listas de componentes licenciados especificados myApp.licenses por hostapplic.txt, hostapplic2.txt e hostapplic3.txt. O modulesList argumento especifica os módulos que contêm os componentes licenciados.

lc /target:myApp /complist:hostapplic.txt /complist:hostapplic2.txt /complist: hostapplic3.txt /i:modulesList  

Exemplo de arquivo de resposta

A listagem a seguir mostra um exemplo de um arquivo de resposta, response.rsp. Para obter mais informações sobre arquivos de resposta, consulte Arquivos de resposta.

/target:hostapp.exe  
/complist:hostapplic.txt
/i:WFCPrj.dll
/outdir:"C:\My Folder"  

A linha de comando a seguir usa o response.rsp arquivo.

lc @response.rsp  

Consulte também