Поделиться через


Задача Stampinf

Комплект драйверов Для Windows (WDK) предоставляет задачу StampInf, которая позволяет запускать средство stampinf.exe при сборке драйвера с помощью MSBuild. Сведения о средстве stampinf.exe см. в разделе Stampinf.

Элемент Inf отправляет параметры для задачи StampInf. Доступ к метаданным элемента для stampinf осуществляется с помощью элемента Inf в файлах проекта.

В следующем примере показано, как изменить метаданные в файле .vcxproj.

<ItemGroup>
    <Inf Include="a.inf">
      <SpecifyArchitecture>true</SpecifyArchitecture>
      <Architecture>x86</Architecture>
    </Inf>
    <Inf Include="b.inf">
      <SpecifyArchitecture>false</SpecifyArchitecture>
      <Architecture>amd64</Architecture>
    </Inf>
</ItemGroup>

В следующем примере показан вызов командной строки:

stampinf.exe –a "x86" a.inf
stampinf.exe b.inf

В приведенном выше примере MSBuild вызывает stampinf.exe в файлах a.inf и b.inf, но с разными наборами параметров. В случае с b.inf, даже если указаны метаданные архитектуры , метаданные SpecifyArchitecture устанавливаются в значение false. Поэтому параметр –a не включен в командной строке. Если для этих метаданных задано значение TRUE, в командной строке будет включен параметр -a amd64 . Таким образом, можно просто переключить эти метаданные, не изменяя сами метаданные архитектуры.

Параметр задачи StampInf Метаданные элементов Переключатель инструментов
Источник

Обязательный параметр ITaskItem. Указывает список исходных файлов.

%(Inf.OutputPath)%(Inf.FileName).inf -f[источник]
SpecifyArchitecture

Это позволит включить параметр -a, если задано значение true.

%(Inf.SpecifyArchitecture)
Архитектура

Необязательный строковый параметр. Задает архитектуру целевой платформы.

%(Inf.Architecture) -a[architecture]
CatalogFile

Необязательный параметр типа string. Указывает директиву файла каталога в разделе версии INF.

%(Inf.CatalogFileName) -c<catalogFile>
SpecifyDriverVerDirectiveDate

Это позволит включить параметр –d, если задано значение true.

%(Inf.SpecifyDriverVerDirectiveDate)
DriverVerDirectiveDate

Необязательная строка

%(Inf.DateStamp) -D[date|]
DriverVerDirectiveSection

Необязательный параметр типа string. Указывает раздел INF, в который должна быть помещена директива INF DriverVer.

%(Inf.DriverVersionSectionName) -s
SpecifyDriverVerDirectiveVersion

Это позволит включить параметр –v, если задано значение true.

%(Inf.SpecifyDriverDirectiveVersion)
DriverVerDirectiveVersion

Необязательный параметр типа string. Указывает номер версии в директиве драйвера.

%(Inf.TimeStamp) -v[time|]
KmdfVersion

Необязательный параметр типа string. Указывает версию KMDF, от которую зависит этот драйвер.

%(Inf.KmdfVersionNumber) Версия>-k<
MinimalRebuildFromTracking

Необязательный логический параметр. Если значение равно true, выполняется отслеживаемая добавочная сборка. В противном случае выполняется перестроение.

%(Inf.MinimalRebuildFromTracking)
ToolPath

Необязательный строковый параметр. Позволяет указать полный путь к папке, в которой находится средство.

$(StampInfToolPath)
TrackerLogDirectory

Необязательный параметр типа string. Указывает каталог журналов для записи журналов средства отслеживания.

%(Inf.StampInfTrackerLogDirectory)
TrackFileAccess

Необязательный логический параметр. Если значение равно true, отслеживает шаблоны доступа к файлам для этой задачи.

$(TrackFileAccess)
UmdfVersion

Необязательный строковый параметр. Указывает версию UMDF, от которую зависит этот драйвер.

%(Inf.UmdfVersionNumber) Версия>-u<
Детализации

Необязательный логический параметр. Обеспечивает детализацию выходных данных Stampinf.

%(Inf.EnableVerbose) -n