다음을 통해 공유


TraceWPP task

WDK(Windows 드라이버 키트)는 MSBuild를 사용하여 드라이버를 빌드할 때 tracewpp.exe 도구를 실행할 수 있도록 TraceWPP 작업을 제공합니다. tracewpp.exe 도구는 WPP 소프트웨어 추적을 구현하는 데 사용됩니다.

WppEnabled는 원본 파일에 대한 추적을 사용하도록 설정하는 ClCompile 항목에 대한 새로운 메타데이터입니다. The Wpp task runs through the entire ClCompile Item Collections and invokes tracewpp.exe for each Item for which the WppEnabled metadata is set to TRUE.

WPP 작업이 CL 태스크와 동일한 형식의 입력 파일(이 경우 .c, .cpp 및 .h 파일)에서 실행되므로 WppEnabled 메타데이터가 ClCompile 항목에 추가되었습니다.

Note You access the Item metadata for tracewpp by using the ClCompile item in project files. MSBuild는 대상 내부적으로 TraceWpp 항목을 사용하여 작업에 전달합니다.

다음 예제에서는 .vcxproj 파일에서 메타데이터를 편집하는 방법을 보여줍니다.

<ItemGroup>
    <ClCompile Include="a.c" />
      <WppEnabled>false</WppEnabled>
    <ClCompile Include="b.c">
        <WppEnabled>true</WppEnabled>
        <WppKernelMode>true</WppKernelMode>
        <WppAdditionalIncludeDirectories>c:\test\</WppAdditionalIncludeDirectories>
    </ClCompile>
    <ClCompile Include="test1.c" />
    <ClCompile Include="test2.c">
        <WppEnabled>true</WppEnabled>
        <WppDllMacro>true</WppDllMacro>
    </ClCompile>
</ItemGroup>

명령줄 호출은 다음과 같습니다.

tracewpp.exe  km /Ic:\test\b.c
tracewpp.exe  dll test2.c

The example above shows that MSBuild invokes tracewpp.exe only on b.c and test2.c because the WppEnabled metadata is set to TRUE for these inputs. 또한 이러한 두 입력에 대한 메타데이터는 서로 다릅니다. 따라서 스위치는 이러한 입력에 대해서도 다릅니다. 즉, 고유한 메타데이터 집합을 사용하여 각 입력을 호출할 수 있습니다.

WPP 작업 매개 변수 Item Metadata Tool Switch
Sources

필수 ITaskItem[] 매개 변수입니다. 원본 파일 목록을 지정합니다.

@(TraceWpp)
AddAlternateNameToMessageGUID

선택적 문자열 매개 변수입니다. 이 추적 공급자에서 온 메시지에 대한 메시지 GUID의 대체 이름을 지정합니다.

%(TraceWpp.WppAddAlternateNameToMessageGUID) -o:String
AdditionalConfigurationFile

선택적 문자열 매개 변수입니다. 추가 구성 파일을 지정합니다. WPP는 defaultwpp.ini기본 파일 외에도 지정된 파일을 사용합니다.

%(TraceWpp.WppAdditionalConfigurationFile) -ini:Path
AdditionalIncludeDirectories

선택적 string[] 매개 변수입니다. WPP에서 포함 파일을 검색하는 디렉터리 목록에 디렉터리를 추가합니다.

%(TraceWpp.WppAdditionalIncludeDirectories) -I
AlternateConfigurationFile

선택적 문자열 매개 변수입니다. 대체 구성 파일을 지정합니다. WPP는 defaultwpp.ini 파일 대신 이 파일을 사용합니다.

%(TraceWpp.WppAlternateConfigurationFile) -defwpp:Path
GenerateUsingTemplateFile

선택적 문자열 매개 변수입니다. WPP가 중괄호 {}사이에 지정된 이름으로 처리하는 모든 원본 파일에 대해 WPP는 지정된 파일 이름 확장명을 가진 다른 파일을 만듭니다.

%(TraceWpp.WppGenerateUsingTemplateFile) -gen{File.tpl}*.ext
MinimalRebuildFromTracking

선택적 부울 매개 변수입니다. If the value is TRUE, WPP performs a tracked incremental build. 그렇지 않으면 WPP가 다시 빌드를 수행합니다.

%(TraceWpp.WppMinimalRebuildFromTracking)
NumericBaseForFormatStrings

선택적 int 매개 변수입니다. 형식 문자열의 번호 매기기를 위한 숫자 베이스를 설정합니다.

%(TraceWpp.WppNumericBaseForFormatStrings) -argbase:Number
AddControlGUID

선택적 문자열 매개 변수입니다. 지정된 컨트롤 GUID와 'Error', 'Unusual' 및 'Noise'라는 WPP_DEFINE_BIT 항목을 사용하여 WPP_CONTROL_GUIDS 매크로를 정의합니다.

%(TraceWpp.WppAddControlGUID) -ctl:GUID
AdditionalOptions

선택적 문자열 매개 변수입니다. 명령줄 옵션 목록입니다.

%(TraceWpp.WppAdditionalOptions)
ConfigurationDirectories

선택적 string[] 매개 변수입니다. 구성 및 템플릿 파일의 위치를 지정합니다.

%(TraceWpp.WppConfigurationDirectories) -cfgdir:[Path]
DllMacro

선택적 부울 매개 변수입니다. WPP_DLL 매크로를 정의합니다.

%(TraceWpp.WppDllMacro) -dll
FileExtensions

선택적 string[] 매개 변수입니다. WPP가 소스 파일로 인식하는 파일 형식을 지정합니다. WPP는 다른 파일 이름 확장명을 가진 파일을 무시합니다.

%(TraceWpp.WppFileExtensions) -ext:.ext1 [.ext2]
IgnoreExclamationmarks

선택적 부울 매개 변수입니다. WPP에 'shrieks'라고도 하는 느낌표를 무시하도록 지시합니다(예: %!timestamp!).%.

%(TraceWpp.WppIgnoreExclamationmarks) -noshrieks
KernelMode

선택적 부울 매개 변수입니다. 커널 모드 구성 요소를 추적하는 WPP_KERNEL_MODE 매크로를 정의합니다. 기본적으로 사용자 모드 구성 요소만 추적됩니다.

%(TraceWpp.WppKernelMode) -km
OutputDirectory

선택적 문자열 매개 변수입니다. WPP에서 만드는 출력 파일의 디렉터리를 지정합니다.

%(TraceWpp.WppOutputDirectory) -odir:Path
PreprocessorDefinitions

선택적 string[] 매개 변수입니다. 소스 파일에 대한 전처리 기호를 정의합니다.

%(TraceWpp.WppPreprocessorDefinitions) /D
PreserveExtensions

선택적 string[] 매개 변수입니다. TMH 파일을 만들 때 지정된 파일 이름 확장명을 유지합니다.

%(TraceWpp.WppPreserveExtensions) -preserveext:ext1[,ext2]
ScanConfigurationData

선택적 문자열 매개 변수입니다. 구성 파일이 아닌 파일 및 defaultwpp.ini사용자 지정 데이터 형식과 같은 구성 데이터를 검색합니다.

%(TraceWpp.WppScanConfigurationData) -scan:File
SearchString

선택적 문자열 매개 변수입니다. WPP가 지정된 문자열의 원본 파일을 검색하여 추적을 시작하도록 지시합니다.

%(TraceWpp.WppSearchString) -lookfor:String
ToolPath

선택적 문자열 매개 변수입니다. 도구가 있는 폴더의 전체 경로를 지정할 수 있습니다.

$(WPPToolPath)
TraceFunction

선택적 string[] 매개 변수입니다. 그런 다음 추적 메시지를 생성하는 데 사용할 수 있는 함수를 지정합니다.

%(TraceWpp.WppTraceFunction) -func:FunctionDescription
TrackerLogDirectory

선택적 문자열 매개 변수입니다. tlog를 작성할 추적기용 로그 디렉터리입니다.

%(TraceWpp.WppTrackerLogDirectory)
TrackFileAccess

선택적 부울 매개 변수입니다. true이면 이 작업에 대한 파일 액세스 패턴을 추적합니다.

$(TrackFileAccess)

WPP Preprocessor

WPP 소프트웨어 추적