高度な検索
Developer Connection
Member Login ログイン | ご入会 ADC連絡先

Technical Q&A QA1407
Printer Queue vs. Printer Name

Q:プリンタキューの名前とプリントダイアログに表示されるプリンタ名の違いは何ですか。

A:CUPS が Jaguar(10.2)で Mac OS X に導入されて以来、プリンタを表す 2 つの方法が存在します。外部表示、つまりプリンタ設定ユーティリティとプリントダイアログに表示される文字列はプリンタ名です。内部表現、つまりプリンタ ID は、アプリケーションがキューでプリンタを追跡するのに使用する文字列です。ユーザは同じプリンタに対して複数のプリンタキューを設定できるので、アプリケーションではあいまいさを避けるために、必ずプリンタ ID を使用してキューごとにプリンタを内部参照する必要があります。主要な違いは、プリンタ ID が一意であるのに対し、プリンタ名が必ずしも一意ではないことです。

プリントセッション用にカレントプリンタを設定するのは、アプリケーションがキューごとにプリンタを内部参照する必要がある場合の好例です。PMSessionSetCurrentPrinter は、この処理を正しく完了するためには有効なプリンタ ID を必要とします。

これらの文字列にアクセスするためのルーチンは 2 つあります。

PMPrinterGetID  - プリンタキューを返す

PMPrinterGetName  - ユーザが目にするプリンタ名を返す

有効な PMPrinter を渡すと、どちらも CFString への参照を返します。

ドキュメントの改訂履歴

日付 メモ
2005-01-25 初版

掲載日: 2005-01-25