使用 GetGlobalAttribute

重要

新式打印平台是 Windows 与打印机通信的首选方式。 建议使用 Microsoft 的 IPP 收件箱类驱动程序以及打印支持应用 (PSA) 来自定义 Windows 10 和 11 中的打印体验,以便进行打印机设备开发。

有关详细信息,请参阅新式打印平台打印支持应用设计指南

所有全局属性名称均与 PostScript 打印机说明文件格式规范 v4.3 中定义的关键字名称相同。 有关其语义,请参阅此规范。 (此资源或许不提供某些语言版本,或在某些国家或地区可能不可用。)

在下表中,pdwDataType 会采用 EATTRIBUTE_DATATYPE 枚举类型的值。

全局属性 输出参数
CenterRegistered pdwDataType:kADT_BOOL

pbDataTRUEFALSE

pcbNeeded:sizeof(BOOL)
ColorDevice pdwDataType:kADT_BOOL

pbDataTRUEFALSE

pcbNeeded:sizeof(BOOL)
扩展 pdwDataType:kADT_ASCII

pbData:一个 ASCII 字符串(MULTI_SZ 格式),其中包含打印机支持的 extensionOption 的已注册值。

pcbNeeded:pbData 指向的 ASCII 字符串的字节计数(包括最后一个 null 字符)。

“FileSystem: True”被视为 Extensions 具有“FileSystem”选项。 “FileSystem: False”被视为 Extensions 没有“FileSystem”选项。
FileVersion pdwDataType:kADT_DWORD

pbData:一个 DWORD,其高序位字包含主版本号,其低序位字则包含次要版本号。

pcbNeeded:sizeof(DWORD)
FreeVM pdwDataType:kADT_DWORD

pbData:FreeVM 的值

pcbNeeded:sizeof(DWORD)
LandscapeOrientation pdwDataType:kADT_ASCII

pbData:“Plus90”或“Minus90”的以 NULL 结尾的 ASCII 字符串。

pcbNeeded:pbData 指向的 ASCII 字符串的字节计数(包括最后一个 null 字符)。

仅当 PPD 包含“LandscapeOrientation: Minus90”时,才会返回“Minus90”。 在所有其他情况下,均会返回“Plus90”。
LanguageEncoding pdwDataType:kADT_ASCII

pbData:以 NULL 结尾的 ASCII 字符串,其中包含以下 encodingOption 值之一:

“ISOLatin1”

“Unicode”

“JIS83-RKSJ”

"None"

pcbNeeded:pbData 指向的 ASCII 字符串的字节计数(包括最后一个 null 字符)。

“WindowsANSI”被视为与“ISOLatin1”具有相同含义。 不支持其他 encodingOption 值。

如果缺少 LanguageEncoding,则会将 LanguageVersion 用于推断返回值。
LanguageLevel pdwDataType:kADT_DWORD

pbData:打印机支持的 PostScript 语言级别

pcbNeeded:sizeof(DWORD)
NickName pdwDataType:kADT_UNICODE

pbData:如果存在 ShortNickName,则为 PPD 的 ShortNickName 值的以 NULL 结尾的 Unicode 字符串;如果 ShortNickName 不存在,则为 NickName 值。

pcbNeeded:pbData 指向的 Unicode 字符串的字节计数(包括最后一个 null 字符)
PPD-Adobe pdwDataType:kADT_DWORD

pbData:一个 DWORD,其高序位字包含主版本号,其低序位字则包含次要版本号。

pcbNeeded:sizeof(DWORD)
PrintPSErrors pdwDataType:kADT_BOOL

pbDataTRUEFALSE

pcbNeeded:sizeof(BOOL)

如果 PrintPSErrors 不存在,则假定为 TRUE
Product pdwDataType:kADT_BINARY

pbData:Product 值

pcbNeeded:输出二进制数据的字节计数

仅返回第一个 Product 条目。
协议 pdwDataType:kADT_ASCII

pbData:一个 ASCII 字符串(MULTI_SZ 格式),其中包含打印机支持的 protocolOption 的已注册值。

pcbNeeded:pbData 指向的 ASCII 字符串的字节计数(包括最后一个 null 字符)
PSVersion pdwDataType:kADT_BINARY

pbData:PSVersion 值

pcbNeeded:输出二进制数据的字节计数

仅返回第一个 PSVersion 条目。
SuggestedJobTimeout pdwDataType:kADT_DWORD

pbData:SuggestedJobTimeout 值。 如果 PPD 中不存在此参数,则默认返回 0。

pcbNeeded:sizeof(DWORD)
SuggestedWaitTimeout pdwDataType:kADT_DWORD

pbData:SuggestedWaitTimeout 值。 如果 PPD 中不存在此参数,则默认返回 300。

pcbNeeded:sizeof(DWORD)
吞吐量 pdwDataType:kADT_DWORD

pbData:Throughput 值。 如果 PPD 中不存在此参数,则默认返回 0。

pcbNeeded:sizeof(DWORD)
TTRasterizer pdwDataType:kADT_ASCII

pbData:以 NULL 结尾的 ASCII 字符串,其中包含以下 rasterizerOption 值之一:

"None"

“Accept68K”

“Type42”

“TrueImage”

pcbNeeded:pbData 指向的 ASCII 字符串的字节计数(包括最后一个 null 字符)。

如果缺少 *TTRasterizer 条目,则返回“None”。