プリンター ドライバーのインターフェイス ID
重要
最新の印刷プラットフォームは、Windows がプリンターと通信するための推奨手段です。 プリンターデバイス開発におけるWindows 10および11での印刷体験をカスタマイズするために、MicrosoftのIPPインボックスクラスドライバーとPrint Support Apps (PSA)の使用を推奨します。
詳細については、 最新の印刷プラットフォーム および 印刷サポート アプリ設計ガイドを参照してください。
一連の GUID は prcomoem.h で定義されています。 これらの GUID はそれぞれ、プリンター ドライバー (Unidrv と Pscript5) とプラグインの間の通信に使用される COM インターフェイスの 1 つのインターフェイス識別子です。
Windows 2000 および Windows XP では、次の GUID が定義されています。
IID_IPrintOemUIIID_IPrintOemUI2 (Windows XP 以降のバージョンの Windows オペレーティング システムの Pscript5 UI プラグイン) IID_IPrintOemDriverUIIID_IPrintCoreUI2 (Windows XP 以降のバージョンの Windows オペレーティング システムの Pscript5 UI プラグイン) IID_IPrintOemUniIID_IPrintOemUni2 (Windows XP およびそれ以降のバージョンの Windows オペレーティング システムの Unidrv レンダリング プラグイン) IID_IPrintOemUni3 (Windows Vista 以降のバージョンの Windows オペレーティング システム上の Unidrv レンダリング プラグイン) IID_IPrintOemDriverUniIID_IPrintOemPSIID_IPrintOemPS2 (Windows XP 以降のバージョンの Windows オペレーティング システムの Pscript5 レンダー プラグイン) IID_IPrintOemDriverPSIID_IPrintCorePS2 (Windows XP 以降のバージョンの Windows オペレーティング システムの Pscript5 レンダリング プラグイン) 各 GUID は、1 つのインターフェイスの 1 つのバージョンを識別します。 インターフェイスの新しいバージョンが定義されている場合は、新しい GUID が一覧に追加されます。
ユーザー インターフェイス プラグインとレンダリング プラグインは、サポートされているインターフェイスのバージョンを識別する必要があります。 プリンター ドライバー (Unidrv または Pscript5) は、プラグインの IUnknown::QueryInterface メソッド (Windows SDK ドキュメントで説明) を呼び出し、インターフェイス識別子を入力として指定します。 プラグインが指定されたバージョンをサポートしている場合、メソッドはインターフェイスへのポインターと S_OK の戻り値の状態を返す必要があります。 それ以外の場合は、E_NOINTERFACE を返す必要があります。 ドライバーは、最新バージョンのインターフェイス識別子で始まり、メソッドがS_OKを返すか、ドライバーがバージョン識別子の一覧を使い果たすまで、以前のバージョン識別子で QueryInterface を呼び出し続けます。
同様に、Unidrv と Pscript5 は、 IPrintOemDriverUI、 IPrintCoreUI2、 IPrintOemDriverUni、 IPrintOemDriverPS、または IPrintCorePS2 COM インターフェイスに IUnknown::QueryInterface メソッドを提供します。 プラグインは、適切なインターフェイスの QueryInterface メソッドを呼び出して、ドライバーでサポートされているインターフェイスのバージョンを確認し、インターフェイス ポインターを受け取る必要があります。