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


Использование GetFeatureAttribute

Внимание

Современная платформа печати — это предпочтительный способ взаимодействия с принтерами Windows. Рекомендуется использовать драйвер класса "Входящие" Microsoft IPP вместе с приложениями поддержки печати (PSA), чтобы настроить возможности печати в Windows 10 и 11 для разработки устройств принтера.

См. в руководстве по проектированию приложений для поддержки печати дополнительные сведения.

Эта функция поддерживается только для функций драйвера принтера PostScript (PPD). Если определенный атрибут недоступен, GetFeatureAttribute возвращает E_INVALIDARG.

В следующей таблице параметр pdwDataType принимает значения перечисленного типа EATTRIBUTE_DATATYPE.

Атрибут компонента Выходные параметры
Отображаемое имя pdwDataType: kADT_UNICODE

pbData: строка перевода имени ключевого слова компонента, завершаемая значением NULL, в юникоде

pcbNeed: число байтов строки Юникода, на которую указывает pbData (включая терминатор NULL)

Этот атрибут функции доступен для любой функции PPD, которую может возвращать EnumFeatures.
DefaultOption pdwDataType: kADT_ASCII

pbData: ASCII-строка с нулевым окончанием, представляющая имя ключевого слова по умолчанию

pcbNeeded: число байтов строки ASCII, на которую указывает pbData (включая нулевой символ).

Этот атрибут функции доступен для любой функции PPD EnumFeatures, которую может вернуть.
OpenUIType pdwDataType: kADT_ASCII

pbData: строка ASCII с пустым завершением, содержащая одну из следующих типов: PickOne, PickMany, Boolean.

pcbNeeded: число байтов строки ASCII, на которую указывает pbData (включая символ окончания строки null).

Этот атрибут функции доступен для любой функции PPD, которую EnumFeatures может вернуть.
OpenGroupType pdwDataType: kADT_ASCII

pbData: для функций, определенных в PPD с парой "OpenGroup: InstallableOptions ... CloseGroup: InstallableOptions", возвращается строка ASCII "InstallableOptions", оканчивающаяся null-символом. Для других функций возвращается пустая строка ASCII (которая имеет только пустой терминатор).

pcbNeeded: число байтов строки ASCII, на которую указывает pbData (включая нулевой терминатор).

Этот атрибут функции доступен для любой функции PPD, которую может возвращать EnumFeatures.
OrderDependencyValue pdwDataType: kADT_LONG

pbData: относительный порядок, заданный ключевым словом OrderDependency или NonUIOrderDependency для этой характеристики. Обратите внимание, что первый параметр этих ключевых слов — это реальное число, которое преобразуется в LONG и возвращается.

pcbNeeded: sizeof(LONG)

Этот атрибут доступен только для функции PPD, которая имеет запись OrderDependency или NonUIOrderDependency в PPD, и запись не включает optionKeyword.
OrderDependencySection pdwDataType: kADT_ASCII

pbData: строка ASCII с пустым завершением, содержащая одно из следующих имен разделов: ExitServer, Prolog, DocumentSetup, PageSetup, JCLSetup или AnySetup.

pcbNeeded: число байтов строки ASCII, на которую указывает pbData (включая нулевой символ).

Этот атрибут доступен только для функции PPD, которая имеет в PPD запись OrderDependency или NonUIOrderDependency, и эта запись не содержит optionKeyword.