Задача Ctrpp
Комплект драйверов Windows (WDK) предоставляет задачу Ctrpp, которая позволяет запускать средство ctrpp.exe при сборке драйвера с помощью MSBuild. Сведения об использовании ctrpp.exe см. в разделе CTRPP.
MSBuild использует элемент Ctrpp для отправки параметров задачи Ctrpp в ctrpp.exe. Элемент Ctrpp в файлах проекта обращается к метаданным элемента для ctrpp.exe.
В следующем примере показано, как изменить метаданные в файле .vcxproj.
<ItemGroup>
<Ctrpp Include="a.manifest">
<GenerateHeaderFileForCounter>true</GenerateHeaderFileForCounter>
<HeaderFileNameForCounter>c:\test\abc.h</HeaderFileNameForCounter>
</Ctrpp>
</ItemGroup>
В следующем примере показан вызов командной строки:
ctrpp.exe –ch "c:\test\abc.h" a.manifest
В приведенном выше примере MSBuild вызывает ctrpp.exe в файле a.manifest с параметром –ch , так как для метаданных GenerateHeaderFileForCounter задано значение true. Кроме того, MSBuild использует метаданные HeaderFileNameForCounter для указания аргумента параметра –ch .
Параметр задачи Ctrpp | Метаданные элементов | Переключатель инструментов | Описание |
---|---|---|---|
Источник | @(Ctrpp) | Обязательный параметр ITaskItem. Указывает обрабатываемый манифест счетчика. | |
AddPrefix | %(Ctrpp.AddPrefix) | Префикс -prefix<> | Необязательный строковый параметр. Указывает префикс, добавляемый к создаваемым функциям и переменным. |
Обратная совместимость | %(Ctrpp.BackwardCompatibility) | -backcompat | Необязательный логический параметр. Создает код, совместимый с операционными системами, предшествующими Windows 7. |
EnableLegacy | %(Ctrpp.EnableLegacy) | -Наследие | Необязательный логический параметр. Возвращается к предыдущему файлу ctrpp. Этот параметр приводит к созданию ctrpp четырех выходных файлов: двух файлов заголовков, файла ресурсов и файла исходного кода. Это имитирует поведение, обнаруженное в предыдущих версиях ctrpp. Параметры -o, -ch, -rc и -prefix нельзя использовать в сочетании с -legacy. |
GeneratedCounterFilesPath | %(Ctrpp.GeneratedCounterFilesPath) | -sumPath<path> | Необязательный параметр типа string. Указывает путь к созданию двоичных файлов счетчиков по умолчанию. |
GenerateHeaderFileForCounter | %(Ctrpp.GenerateHeaderFileForCounter) | Если задано значение true, параметр -ch включается. | |
HeaderFileNameForCounter | %(Ctrpp.HeaderFileNameForCounter) | -ch<имя> файла | Необязательный параметр типа string. Создает файл заголовка, содержащий имена и идентификаторы счетчиков. |
GenerateHeaderFileForProvider | %(Ctrpp.GenerateHeaderFileForProvider) | Если задано значение true, параметр -o включается. | |
HeaderFileNameForProvider | %(Ctrpp.HeaderFileNameForProvider) | -o<имя> файла | Необязательный параметр типа string. Создает файл заголовка для поставщика. |
GenerateMemoryRoutines | %(Ctrpp.GenerateMemoryRoutines) | -MemoryRoutines | Необязательный логический параметр. Создает шаблоны для выделения памяти и бесплатных подпрограмм. |
GenerateNotificationCallback | %(Ctrpp.GenerateNotificationCallback) | -NotificationCallback | Необязательный логический параметр. Создает настраиваемый шаблон обратного вызова уведомления. Аналогично атрибуту callback в элементе <provider> . |
GenerateResourceSourceFile | %(Ctrpp.GenerateResourceSourceFile) | Если задано значение true, параметр -rc включается. | |
ResourceFileName | %(Ctrpp.ResourceFileName) | -rc<filename> | Необязательный параметр типа string. Создает исходный файл ресурса. |
GenerateSummaryGlobalFile | %(Ctrpp.GeneratedSummaryGlobalFile) | -summary<path> | Необязательный параметр типа string. Создает двоичный файл счетчика для каждого поставщика, чтобы создать сводный глобальный файл GenSumResource.BIN. |