GetSupportedVersions
重要
新式打印平台是 Windows 与打印机通信的首选方式。 建议使用 Microsoft 的 IPP 收件箱类驱动程序以及打印支持应用 (PSA) 来自定义 Windows 10 和 11 中的打印体验,以便进行打印机设备开发。
有关详细信息,请参阅新式打印平台和打印支持应用设计指南。
IPrintTicketProvider::GetSupportedVersions 方法返回打印驱动程序支持的打印架构的主要版本号。 目前,版本 1 是唯一存在的版本,因此该方法必须只返回一个支持的版本。
以下示例代码中显示的实现方式将适用于 Windows Vista 的初始版本,直至新版本的推出。 支持新版本时,此值将发生变化。
STDMETHODIMP
CPrintTicketProvider::
GetSupportedVersions(THIS_ HANDLE hPrinter,
INT *ppVersions[],
INT *pcVersions)
{
if ( (*ppVersions = (INT*)CoTaskMemAlloc(sizeof(INT))) != NULL)
{
(*ppVersions)[0] = 1; // Version 1
*pcVersions = 1; // 1 supported version
return S_OK;
}
else
return E_OUTOFMEMORY;
}