다음을 통해 공유


SGen 작업

지정된 어셈블리의 형식에 대한 XML serialization 어셈블리를 만듭니다. 이 작업은 XML Serializer 생성기 도구(Sgen.exe)를 래핑합니다. 자세한 내용은 XML Serializer 생성기 도구(Sgen.exe)를 참조하세요.

매개 변수

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

매개 변수 Description
BuildAssemblyName 필수 String 매개 변수입니다.

serialization 코드를 생성할 어셈블리입니다.
BuildAssemblyPath 필수 String 매개 변수입니다.

serialization 코드를 생성할 어셈블리 경로입니다.
DelaySign 선택적 Boolean 매개 변수입니다.

어셈블리에 공개 키만 저장하려 경우 true를 지정합니다. 완전히 서명된 어셈블리를 만들려는 경우 false를 지정합니다.

이 매개 변수는 KeyFile 또는 KeyContainer 매개 변수와 함께 사용하지 않는 한 효과가 없습니다.
KeyContainer 선택적 String 매개 변수입니다.

키 쌍을 보관하는 컨테이너를 지정합니다. 어셈블리 매니페스트에 공개 키를 삽입하여 어셈블리에 서명합니다. 그런 다음 이 작업은 프라이빗 키를 사용하여 최종 어셈블리에 서명합니다.
KeyFile 선택적 String 매개 변수입니다.

어셈블리 서명에 사용할 키 쌍 또는 공개 키를 지정합니다. 컴파일러는 퍼블릭 키를 어셈블리 매니페스트에 삽입한 다음 프라이빗 키를 사용하여 최종 어셈블리에 서명합니다.
Platform 선택적 String 매개 변수입니다.

출력 어셈블리를 생성하는 데 사용되는 컴파일러 플랫폼을 가져오거나 설정합니다. 이 매개 변수는 x86, x64 또는 anycpu 값을 가질 수 있습니다. 기본값은 anycpu입니다.
References 선택적 String[] 매개 변수입니다.

XML serialization이 필요한 형식에서 참조하는 어셈블리를 지정합니다.
SdkToolsPath 선택적 String 매개 변수입니다.

resgen.exe와 같은 SDK 도구에 대한 경로를 지정합니다.
SerializationAssembly 선택적 ITaskItem[] 출력 매개 변수입니다.

생성된 serialization 어셈블리를 포함합니다.
SerializationAssemblyName 선택적 String 매개 변수입니다.

생성된 serialization 어셈블리의 이름을 지정합니다.
ShouldGenerateSerializer 필수 Boolean 매개 변수입니다.

true이면 SGen 작업은 serialization 어셈블리를 생성해야 합니다.
Timeout 선택적 Int32 매개 변수입니다.

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

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

serialization 코드를 생성하기 위한 특정 형식의 목록을 가져오거나 설정합니다. SGen은 해당 형식에 대해서만 serialization 코드를 생성합니다.
UseProxyTypes 필수 Boolean 매개 변수입니다.

true이면 SGen 작업은 XML Web services 프록시 형식에 대해서만 serialization 코드를 생성합니다.

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로 설정된 경우 작업이 실행 중이면 이 작업이 노드를 발생시킵니다.

참고 항목