Lc.exe (Kompilator licencji)
Kompilator licencji czyta pliki tekstowe zawierające informacje o licencjonowaniu i tworzy plik binarny, który może zostać osadzony jako zasób w pliku wykonywalnym środowiska uruchomieniowego języka wspólnego.
Plik tekstowy licx jest automatycznie generowany lub aktualizowany przez Projektanta programu Windows Forms zawsze, gdy licencjonowany formant jest dodawany do formularza. W ramach kompilacji system projektu przekształci plik tekstowy licx w zasób binarny licenses, który dostarcza obsługę licencjonowania formantów platformy .NET. Następnie ten zasób binarny zostanie osadzony w danych wyjściowych projektu.
Krzyżowa kompilacja wersji 32-bitowych i 64-bitowych jest nieobsługiwana, gdy podczas kompilowania projektu jest używany Kompilator licencji. Jest to spowodowane tym, że Kompilator licencji musi ładować zestawy, a ładowanie 64-bitowych zestawów z aplikacji 32-bitowej (i odwrotnie) jest niedozwolone. W takim przypadku należy użyć Kompilatora licencji z wiersza polecenia, aby skompilować licencję ręcznie i określić odpowiednią architekturę.
To narzędzie jest instalowane automatycznie z programem Visual Studio. Aby uruchomić narzędzie, użyj wiersza polecenia dla deweloperów programu Visual Studio lub programu Visual Studio Developer PowerShell.
W wierszu polecenia wpisz:
Składnia
lc /target:
targetPE /complist:filename [-outdir:path]
/i:modules [/nologo] [/v]
Opcja | Opis |
---|---|
/complist: nazwa pliku | Określa nazwę pliku zawierającego listę licencjonowanych składników, która ma zostać umieszczona w pliku licenses. W odwołaniu do każdego składnika musi być używana jego pełna nazwa, a w wierszu może znajdować się tylko jeden składnik. Użytkownicy wiersza polecenia mogą określić osobny plik dla każdego formularza w projekcie. Program LC.exe akceptuje wiele plików wejściowych i tworzy jeden plik licenses. |
/h[elp] | Wyświetla składnię polecenia i opcje narzędzia. |
/i: module | Określa moduły zawierające składniki wymienione w pliku /complist . Aby określić więcej niż jeden moduł, użyj wielu flag /i . |
/nologo | Pomija wyświetlanie transparentu startowego firmy Microsoft. |
/outdir: ścieżka | Określa katalog, w którym ma zostać umieszczony wyjściowy plik licenses. |
/target: targetPE | Określa plik wykonywalny, dla którego jest generowany plik licenses. |
/v | Określa tryb pełny; wyświetla informacje o postępie kompilacji. |
@plik | Określa plik odpowiedzi (rsp). |
/? | Wyświetla składnię polecenia i opcje narzędzia. |
Przykład
Jeśli używasz licencjonowanej kontrolki
MyCompany.Samples.LicControl1
zawartej wSamples.DLL
aplikacji o nazwieHostApp.exe
, możesz utworzyćHostAppLic.txt
, która zawiera następujące elementy.MyCompany.Samples.LicControl1, Samples.DLL
Utwórz plik licencji o nazwie
HostApp.exe.licenses
przy użyciu następującego polecenia.lc /target:HostApp.exe /complist:hostapplic.txt /i:Samples.DLL /outdir:c:\bindir
Skompiluj
HostApp.exe
plik licencji jako zasób. W przypadku kompilowania aplikacji w języku C# należy użyć następującego polecenia, aby skompilować aplikację.csc /res:HostApp.exe.licenses /out:HostApp.exe *.cs
Następujące polecenie kompiluje się myApp.licenses
z list licencjonowanych składników określonych przez hostapplic.txt
, hostapplic2.txt
i hostapplic3.txt
. Argument modulesList
określa moduły zawierające licencjonowane składniki.
lc /target:myApp /complist:hostapplic.txt /complist:hostapplic2.txt /complist: hostapplic3.txt /i:modulesList
Przykład pliku odpowiedzi
Na poniższej liście przedstawiono przykład pliku odpowiedzi . response.rsp
Aby uzyskać więcej informacji na temat plików odpowiedzi, zobacz Pliki odpowiedzi.
/target:hostapp.exe
/complist:hostapplic.txt
/i:WFCPrj.dll
/outdir:"C:\My Folder"
Poniższy wiersz polecenia używa response.rsp
pliku .
lc @response.rsp