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
Se você estiver usando um controle
MyCompany.Samples.LicControl1
licenciado contido emSamples.DLL
um aplicativo chamadoHostApp.exe
, você pode criarHostAppLic.txt
que contém o seguinte.MyCompany.Samples.LicControl1, Samples.DLL
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
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