다음을 통해 공유


LC 작업

.licx 파일에서 .license 파일을 생성하는 LC.exe를 래핑합니다. LC.exe에 대한 자세한 내용은 Lc.exe(라이선스 컴파일러)를 참조하세요.

매개 변수

다음 표에서는 LC 작업의 매개 변수에 대해 설명합니다.

매개 변수 Description
LicenseTarget 필수 ITaskItem 매개 변수입니다.

.licenses 파일이 생성되는 대상 실행 파일을 지정합니다.
NoLogo 선택적 Boolean 매개 변수입니다.

Microsoft 시작 배너를 표시하지 않습니다.
OutputDirectory 선택적 String 매개 변수입니다.

출력 .licenses 파일을 포함할 디렉터리를 지정합니다.
OutputLicense 선택적 ITaskItem 출력 매개 변수입니다.

.licenses 파일의 이름을 지정합니다. 이름을 지정하지 않는 경우 .licx 파일의 이름이 사용되고 .licenses 파일이 .licx 파일을 포함하는 디렉터리에 배치됩니다.
ReferencedAssemblies 선택적 ITaskItem[] 매개 변수입니다.

.license 파일을 생성할 때 로드할 참조된 구성 요소를 지정합니다.
SdkToolsPath 선택적 String 매개 변수입니다.

resgen.exe와 같은 SDK 도구에 대한 경로를 지정합니다.
Sources 필수 ITaskItem[] 매개 변수입니다.

.licenses 파일에 포함할 라이선스가 있는 구성 요소가 포함된 항목을 지정합니다. 자세한 내용은 Lc.exe(라이선스 컴파일러)의 /complist 스위치에 대한 설명서를 참조하세요.

ToolTaskExtension 매개 변수

이 작업은 Task 클래스에서 상속되는 ToolTask 클래스에서 상속되는 ToolTaskExtension 클래스에서 상속됩니다. 이 상속 체인은 매개 변수에서 파생되는 작업에 해당 매개 변수 몇 개를 추가합니다.

다음 표에서는 기본 클래스의 매개 변수에 대해 설명합니다.

매개 변수 Description
EchoOff 선택적 bool 매개 변수입니다.

true로 설정된 경우 이 작업은 명령줄이 stdout으로 복사되지 않도록 /Qcmd.exe 명령줄로 전달합니다.
EnvironmentVariables 선택적 String 배열 매개 변수입니다.

세미콜론으로 구분된 환경 변수 정의의 배열입니다. 각 정의는 환경 변수 이름 및 값을 등호로 구분하여 지정해야 합니다. 이 변수는 생성된 실행 파일에 전달되면서 일반 환경 블록에 추가되거나 일부 일반 환경 블록을 재정의합니다. 예들 들어 Variable1=Value1;Variable2=Value2입니다.
ExitCode 선택적 Int32 읽기 전용 출력 매개 변수입니다.

실행한 명령에서 제공하는 종료 코드를 지정합니다. 작업에서 오류를 기록했지만 프로세스가 종료 코드 0(성공)을 반환한 경우 이는 -1로 설정됩니다.
LogStandardErrorAsError 선택적 bool 매개 변수입니다.

true인 경우 표준 오류 스트림에서 받은 모든 메시지가 오류로 기록됩니다.
StandardErrorImportance 선택적 String 매개 변수입니다.

표준 오류 스트림의 텍스트를 기록하는 중요도입니다.
StandardOutputImportance 선택적 String 매개 변수입니다.

표준 출력 스트림의 텍스트를 기록할 때 적용할 중요도입니다.
Timeout 선택적 Int32 매개 변수입니다.

작업 실행 파일이 얼마 후에 종료될 지를 밀리초 단위로 지정합니다. 기본값은 시간 제한이 없음을 나타내는 Int.MaxValue입니다. 제한 시간(밀리초)입니다.
ToolExe 선택적 string 매개 변수입니다.

프로젝트에서 작업의 ToolName을 재정의하기 위해 이를 구현할 수 있습니다. 작업에서는 ToolName을 유지하기 위해 이를 재정의할 수 있습니다.
ToolPath 선택적 string 매개 변수입니다.

작업에서 내부 실행 파일을 로드할 위치를 지정합니다. 이 매개 변수를 지정하지 않으면 작업에서는 MSBuild를 실행하고 있는 프레임워크 버전에 해당하는 SDK 설치 경로가 사용됩니다.
UseCommandProcessor 선택적 bool 매개 변수입니다.

true로 설정된 경우 이 작업은 명령줄에 대한 배치 파일을 만들고 명령을 직접 실행하는 대신 명령 처리기를 사용하여 실행합니다.
YieldDuringToolExecution 선택적 bool 매개 변수입니다.

true로 설정된 경우 작업이 실행 중이면 이 작업이 노드를 발생시킵니다.

예시

다음 예제에서는 LC 작업을 사용하여 라이선스를 컴파일합니다.

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<!-- Item declarations, etc -->

    <Target Name="CompileLicenses">
        <LC
            Sources="@(LicxFile)"
            LicenseTarget="$(TargetFileName)"
            OutputDirectory="$(IntermediateOutputPath)"
            OutputLicenses="$(IntermediateOutputPath)$(TargetFileName).licenses"
            ReferencedAssemblies="@(ReferencePath);@(ReferenceDependencyPaths)">

            <Output
                TaskParameter="OutputLicenses"
                ItemName="CompiledLicenseFile"/>
        </LC>
    </Target>
</Project>

참고 항목