JP4991820B2 - 拡張可能な画像処理装置ドライバを備えたクライアント装置及びその実施方法 - Google Patents

拡張可能な画像処理装置ドライバを備えたクライアント装置及びその実施方法 Download PDF

Info

Publication number
JP4991820B2
JP4991820B2 JP2009234923A JP2009234923A JP4991820B2 JP 4991820 B2 JP4991820 B2 JP 4991820B2 JP 2009234923 A JP2009234923 A JP 2009234923A JP 2009234923 A JP2009234923 A JP 2009234923A JP 4991820 B2 JP4991820 B2 JP 4991820B2
Authority
JP
Japan
Prior art keywords
image processing
plug
device driver
repository
driver core
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2009234923A
Other languages
English (en)
Other versions
JP2010098732A (ja
Inventor
ロドネイ ファーリッシュ アンドリュー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Publication of JP2010098732A publication Critical patent/JP2010098732A/ja
Application granted granted Critical
Publication of JP4991820B2 publication Critical patent/JP4991820B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Facsimiles In General (AREA)
  • Stored Programmes (AREA)

Description

本発明は、画像処理装置ドライバを備えたクライアント装置及びこのような装置ドライバを実施する方法に関し、より詳細には、様々な画像処理の要件を満たすように自動的に拡張可能な画像処理装置ドライバを備えたクライアント装置及びこのような装置ドライバを実際に機能させる方法に関する。
従来、メーカーから販売される画像処理装置(例えば、印刷装置)の機種は、その機種特有の画像処理装置ドライバ(以下、単に装置ドライバともいう)と共に使用するように最適化されている。異なる画像処理装置の機種用に最適化された装置ドライバを使用して、別の画像処理装置を動作させようとすると、通常は全くうまくいかないか、予期せぬ結果をもたらしたり、又は画像処理装置の限定された機能しか動作させなかったりする。
機種特有の画像処理装置ドライバは、従来のコンピュータ環境においていくつかの問題を呈している。第1に、このような環境において異なる画像処理装置の機種が動作する場合、複数の装置ドライバを個別に管理(例えば、インストール、アップグレード、置き換え)する必要があった。第2に、そのような環境において一時的に動作する携帯型のクライアント装置は、どの装置ドライバが要求されるのか、またどのようにしてそれらを取得するのかを承知していなかった。第3に、そのような環境で動作するクライアント装置は、ワークフローの統合の機能などのオンデマンドの機能にアクセスすることが難しかった。
これに対して、例えば、特許文献1には、MFP、PC、サーバーがネットワークを介して接続されており、PCがMFP内の機能とプリンタドライバの機能との整合性を検出し、検出結果に応じてMFP又はサーバーからプラグインをダウンロードし、インストールを行うようにした技術が記載されている。
また、最近では、これらの問題のいくつかに対処するようなより柔軟性のある画像処理装置ドライバが販売されている。例えば、ヒューレット・パッカード社及びゼロックス社は多数の印刷装置用の事前に構成された「パーソナリティ」をサポートするユニバーサルプリンタドライバ(UPD)を提供している。このようなUPDを呼び出すと、UPDはターゲット印刷装置に機種や構成の情報の問い合わせを行い、その機種や構成に合ったパーソナリティを識別し、識別されたパーソナリティに基づいた機能セットをサポートするように自動的な適合をする。
特開2006−260356号公報
しかしながら、このようなUPDは、機種と構成が事前構成されたパーソナリティの1つと対応しない場合、機能のセットに自動的に適合することはできない。さらに、パーソナリティは事前構成されることから、UPDは構成の後にリリースされるパーソナリティへの更新を含むように自動的に適合することはできず、またオンデマンドの機能、例えばワークフローの統合の機能をサポートするように自動的に適合することはできない。また、このようなUPDは一時的なライセンス機能、例えば加入制又は従量課金制のためのいずれの機構も、サポートしていない。
本発明は、上述のような実情に鑑みてなされたもので、基本的な特徴として、様々な画像処理要件を満たすように自動的に拡張可能な画像処理装置ドライバを備えたクライアント装置及びそのような装置ドライバを実際に機能させる方法を提供するものである。
より具体的には、画像処理ジョブが開始されると、拡張可能な装置ドライバはターゲット画像処理装置に問い合わせをし、機能セットを識別する。その後、装置ドライバはローカルでサポートされる機能セット内の機能を識別する。装置ドライバはまた1以上の遠隔サーバー装置へ問い合わせを行い、ローカルでサポートされていない機能セット内の機能を装置ドライバでサポートすることを可能とする1以上のプラグインを識別する。その後、装置ドライバは、ユーザーから権限を得て(例えば、ライセンス条件への合意)プラグインをダウンロードし、記憶をする。装置ドライバはまた、1以上の遠隔のサーバーに問い合わせを行い、装置ドライバコア及び以前にダウンロード及び記憶済みのプラグインに対する更新を識別、ダウンロード及び記憶する。
本発明は、画像処理装置および該画像処理装置の更新ドライバを管理するサーバー装置と接続して画像処理システムを構成するクライアント装置であって、前記クライアント装置は、少なくとも装置ドライバコアと、ローカルプラグインリポジトリを記憶した拡張可能な画像処理装置ドライバを有し、ジョブ処理において、前記装置ドライバコアは前記画像処理装置からジョブ処理に必要な機能セットを取得すると共に、それらの全ての機能が装置ドライバコアおよび前記ローカルプラグインリポジトリによってサポートされているか否か判定し、不足する場合は前記サーバーから入手可能な不足プラグインの入手条件を取得して表示し、不足プラグインが入できない場合または入手しない場合、前記装置ドライバコアおよびローカルプラグインリポジトリによってサポートされている機能の範囲でジョブ処理を実行することを特徴とする。
いくつかの実施形態において、前記サーバー装置はインターネットを介して問い合わされる。
いくつかの実施形態において、前記サーバー装置はセルラーネットワークを介して問い合わされる。
本発明によれば、様々な画像処理要件を満たすように自動的に拡張可能な画像処理装置ドライバを備えたクライアント装置及びそのような装置ドライバを実際に機能させる方法を提供することができる。
本発明の上記及びその他の態様は、以下に簡単に説明する図面と併せて、以下の詳細な説明により、さらに深く理解されるであろう。本発明は添付の特許請求の範囲により定義されることはもちろんである。
いくつかの実施形態における本発明が動作する通信システムを示す図である。 いくつかの実施形態における本発明が動作するクライアント装置を示す図である。 いくつかの実施形態における本発明が動作するソフトウェアの要素を示す図である。 本発明のいくつかの実施形態において、プラグインを含むように拡張可能な画像処理装置ドライバを自動的に適合させる方法を説明するためのフロー図である。 本発明のいくつかの実施形態において、レンダリングのための画像処理制御ユーザーインターフェース記述を選択する方法を説明するためのフロー図である。 本発明のいくつかの実施形態において、更新プラグインを含むように拡張可能な画像処理装置ドライバを自動的に適合させる方法を説明するためのフロー図である。
図1はいくつかの実施形態における本発明が動作する通信システムを示す図である。通信システムは、クライアント装置110を備え、通信ネットワーク140を介して画像処理装置120とサーバー装置130に通信可能に接続される。
クライアント装置110は、ネットワーク可能なコンピューティング機器である。画像処理装置120から機能セットを発見し、発見した機能セットをサポートするように拡張可能な画像処理装置ドライバを自動的に適合させ、画像処理ジョブを準備し管理するなど、様々なタスクを行うプロセッサで実行可能なソフトウェアを有する。クライアント装置110は、例を挙げると、デスクトップ型のパーソナルコンピュータ(PC)、携帯型PC、携帯情報端末(PDA)、大型汎用コンピュータ、小型コンピュータ、携帯電話機、デジタルテレビ受信機、又はインターネット家電であってもよい。
画像処理装置120は、単機能の画像処理装置であっても、複合機(MFP)であってもよい。画像処理装置120は、発見要求に応じ、サポートされる機能セット及び画像処理ジョブを実行する電気機械部に準じて画像処理ジョブを管理するプロセッサで実行可能なソフトウェアを有する。画像処理装置120がサポートする画像処理機能には、例を挙げると、印刷、複写、スキャン、ファイリング、ファックス、媒体複製、出版、表示、フォーマット変換、編集、及び音声/映像の記録/再生などが含まれていてもよい。印刷機能の場合、サポートされる機能セットには、例を挙げると、1以上のプリンタ言語、ホストエミュレーション機能、課金機能、ライセンス機能、支払い機能、特別機能及び/又はワークフロー統合機能などが含まれていてもよい。
サーバー装置130は、拡張可能な画像処理装置ドライバプラグインを管理するクライアント装置110から離れたウェブのサーバーである。サーバー装置130は、クライアント装置110によってなされる入手可能なプラグインに関する情報についての問い合わせに応じ、プラグインをクライアント装置110の適切な箇所へとダウンロードする。サーバー装置130は、画像処理装置120のメーカーによって操作されても、クライアント装置110の持ち主、あるいは第三者によって操作されてもよい。
通信ネットワーク140は、データネットワーク装置及びリンクを備え、クライアント装置110、画像処理装置120及びサーバー装置130を相互に接続する。そのリンクは、有線であっても、無線あるいはその組合せであってもよい。例を挙げると、通信ネットワーク140は、インターネット又はセルラーネットワークを介して、クライアント装置110とサーバー装置130を相互に接続するための電気電子学会(IEEE)802.3(有線イーサネット(登録商標))、IEEE802.11(無線LAN)、IEEE802.16(WiMAX)、広域、セルラー及び/又はアドホックネットワーク装置及びリンクを1つ以上有してもよい。
通信ネットワーク140は、ネットワーク装置とリンクを同様にまとめて有してもよいし、RS−232(COM)、ユニバーサルシリアルバス(USB)、IEEE1284規格(パラレルポート)、IEEE1394規格(ファイヤーワイヤ)、ブルートゥース、近距離無線通信(NFC)、赤外線通信規格(IrDa)リンクなどの専用のリンクを有して、クライアント装置110と画像処理装置120を相互に接続してもよい。
例示された実施形態においては、1つのクライアント装置110、1つの画像処理装置120及び1つのサーバー装置130が存在する場合が示されているが、他の実施形態においては、1以上のこのような種類の装置が複数存在してもよいと理解される。例えば、いくつかの実施形態においては、複数のサーバー装置が存在し、そのそれぞれが異なる画像処理装置メーカーによって作られた、画像処理装置のための拡張可能な画像処理装置ドライバのプラグインを、サポートしてもよい。
図2はクライアント装置110をより詳細に示す図で、クライアント装置110はユーザーインターフェース210、通信インターフェース220及びメモリ240を備え、これらのすべてがプロセッサ230と通信可能に接続されている。ユーザーインターフェース210は、キーボード、キーパッド、タッチスクリーン及び/又は音声命令モジュールなど、人間のユーザーからの入力を受け付けるための入力機構と、液晶ディスプレイ(LCD)、発光ダイオード(LED)ディスプレイ、ブラウン管(CRT)及び/又はスピーカーなど、ユーザーに出力を表示するための出力機構とを有する。
通信インターフェース220は、クライアント装置110と画像処理装置120及びサーバー装置130とを通信ネットワーク140を介して通信可能に接続する1以上のデータ通信ポートを有する。数多い例の1つとしては、通信インターフェース220が、無線LANポートを備え、これによりクライアント装置110がインターネット接続を確立して、サーバー装置130と通信してもよく、また、USBポートを備えて、これによりクライアント装置110が、画像処理装置120と直接通信してもよい。
メモリ240は、1以上のランダムアクセスメモリ(RAM)と1以上のリードオンリーメモリ(ROM)とを備える。
プロセッサ230は、メモリ240にインストールされたソフトウェアを実行して、画像処理装置120のための機能セットを発見したり、拡張可能な画像処理装置ドライバを自動的に発見された機能セットをサポートするように適合させたり、画像処理ジョブを準備し管理するなどの操作をクライアント装置110で行う。
図3は、メモリ240に記憶されるソフトウェア要素を示す図であり、クライアントアプリケーション310、オペレーティングシステム320、及び拡張可能な画像処理装置ドライバ330が含まれる。拡張可能な画像処理装置ドライバ330は、装置ドライバコア340、ローカルプラグインリポジトリ350及び構成ファイル360を有する。クライアントアプリケーション310により、ユーザーは、ユーザーインターフェース210を介して、デジタル文書を作成、編集、保存、開いて閲覧することが可能になり、それぞれのデジタル文書の画像処理ジョブを開始することが可能となる。
ユーザーが画像処理ジョブを開始し、ターゲット画像処理装置を選択すると、クライアントアプリケーション310は、アプリケーション用にフォーマットされたデジタル文書を、オペレーティングシステム320が理解する装置に非依存なグラフィック・プリミティブに変換する。オペレーティングシステム320はそのグラフィック・プリミティブを拡張可能な画像処理装置ドライバ330へ送る。拡張可能な画像処理装置ドライバ330は、そのグラフィック・プリミティブを、画像処理ジョブのターゲット画像処理装置がサポートする画像処理フォーマットに変換する。このような変換は、ターゲット画像処理装置がサポートする画像処理フォーマットを、装置ドライバコア340が元々サポートしている場合は、装置ドライバコア340が行ってもよい。ターゲット画像処理装置がサポートする画像処理フォーマットを、装置ドライバコア340が元々サポートしていない場合は、装置ドライバコア340が適切なプラグインをローカルプラグインリポジトリ350から呼び出して、変換を進めてもよい。
具体例を挙げると、クライアントアプリケーション310がマイクロソフトワード(登録商標)で、ユーザーがワードの文書を画像処理装置120で印刷したい場合、クライアントアプリケーション310は、ワード文書をオペレーティングシステム320が理解する装置に非依存のグラフィック・プリミティブ[例えば、グラフィカルディスプレイインターフェース(GDI)、XML文書規格(XPS)プリミティブ]に変換し、オペレーティングシステム320は、そのプリミティブを拡張可能な画像処理装置ドライバ330に送る。拡張可能な画像処理装置ドライバ330は、そのプリミティブを画像処理装置120がサポートするプリンタ言語[例えば、プリンタ制御言語(PCL)、ポストスクリプト、タグ付き画像ファイル形式(TIFF)、ポータブルドキュメント形式(PDF)]に変換する。そのプリンタ言語を装置ドライバコア340が元々サポートしている場合は、プリミティブからプリンタ言語への変換は、ローカルプラグインリポジトリ350を用いないで、装置ドライバコア340によって成し遂げられてもよい。しかしながら、そのプリンタ言語を装置ドライバコア340が元々サポートしていない場合は、装置ドライバコア340は変換を支援するためのプラグインをリポジトリ350から呼び出す。
拡張可能な画像処理装置ドライバ330は、画像処理装置120に提出する画像処理ジョブを準備するための別の処理を行う。例を挙げると、追加する処理としては、ホストエミュレーション処理、課金処理、ライセンス処理、支払い処理、特別機能処理及び/又はワークフローの統合処理などが含まれてもよい。追加する処理を装置ドライバコア340が元々サポートしているならば、ローカルプラグインリポジトリ350を用いることなく、装置ドライバコア340がそのような追加する処理を行ってもよい。しかしながら、追加処理を装置ドライバコア340が元々サポートしていないならば、装置ドライバコア340は、処理を支援するためのプラグインをローカルプラグインリポジトリ350から呼び出す。
ローカルプラグインリポジトリ350は、プリンタ言語のプラグイン(例えば、PCL、ポストスクリプト、TIFF、PDF、ラスタ形式のプラグイン)、ホストエミュレーションのプラグイン[例えば、N−アップ、ブックレット、Z折り、ラスタ画像処理(RIP)、中間調処理、色空間変換、画像強調のためのプラグイン]、課金、ライセンス及び支払いのプラグイン(例えば、公共印刷、部門印刷、コンテンツロイヤルティ、特別用紙料金のプラグイン)、命令のプラグイン(例えば、ターゲット画像処理装置専用の命令コード)、及び/又は特別機能/ワークフローの統合プラグイン(例えば、文書の索引付け/ファイリング、一斉印刷、ベーツスタンプ、バーコード、オーバーレイ、監査、校訂、文書作成のプラグイン)など様々な種類のプラグインをその中に有して装置ドライバコア340を支援する。プラグインは、例えばダイナミックリンクライブラリ(DLL)のダイナミックリンク、プロセス間通信(IPC)を用いての実行(例えば、COMが実行可能)、命令パイプライン、オープンアプリケーションプログラミングインターフェース(API)呼び出し又はウェブサービス呼び出しなど、様々な手段を用いて、一時的に装置ドライバコア340に統合してもよい。
ローカルプラグインリポジトリ350は、クライアント装置110のメモリ240の中に表示されているが、いくつかの実施形態においては、ローカルプラグインリポジトリのすべて又は一部が、外部ハードドライブ又はUSBサムドライブなど、ローカルにクライアント装置110にアクセスできる外部記憶装置に配備されてもよい。
ローカルプラグインリポジトリ350は、また、装置ドライバコア340が元々サポートしている機能を更新するか、そうでなければ向上させるプラグインを備えていてもよい。ローカルプラグインリポジトリ350が、動作するそのような更新プラグインを有しているときは、構成ファイル360は変更され、元々サポートされている機能のためのDLLに代えて更新プラグインを使用するよう指示する。このように、構成ファイル360が起動時に読み出されると、装置ドライバコア340はDLLではなく、更新プラグインをロードする。
画像処理ジョブの準備が完了したら、プラグインの支援があるなしにかかわらず、拡張可能な画像処理装置ドライバ330はプロセッサ230の制御により、画像処理ジョブを通信インターフェース220を介して画像処理装置120へ送り、画像処理装置120は画像処理ジョブを行う(例えば、デジタル文書の「ハードコピー」を出力する)。
画像処理ジョブ処理の一部として、クライアント装置110は、画像処理装置120から機能セットを発見し、発見した機能セットをサポートするように自動的に適合する。
図4は本発明のいくつかの実施形態において、発見を行い、プラグインを用いて拡張可能な画像処理装置ドライバ330を自動的に適合させる方法を説明するためのフロー図である。
クライアント装置110のユーザーが、ユーザーインターフェース210を介して画像処理ジョブを開始し、画像処理装置120を対象装置(ターゲット)として識別すると、装置ドライバコア340は画像処理装置120に対して、装置発見情報を問い合わせる(410)。いくつかの実施形態においては、装置ドライバコア340は、プロセッサ230の制御により、画像処理装置120についてのメーカー、機種、構成、性能及び/又は他の装置発見情報を要請する発見要求(それにより画像処理装置120についての総合的な機能セットが識別できる)を生成して、通信インターフェース220を介して送信する。別の実施形態では、発見要求が、ホストエミュレーション機能など、ワークフローの統合や特別機能のための装置発見情報を要請し、それにより、画像処理装置120の機能セットの一部が識別できる。一例としては、統合ワークフローによりデジタル文書をラスタデータに変換し、所定の透かしとタイムスタンプを挿入し、変更されたラスタデータを所定のファイリング記憶要素にファイルしてもよい。発見要求に応じて、装置ドライバコア340は画像処理装置120から、要求された装置発見情報を含む発見応答を受け取る。この発見要求及び応答を行うために、簡易ネットワーク管理プロトコル(SNMP)、ウェブサービス(WDPrint)やプリンタジョブ言語(PJL)など、様々なプロトコルを使用してもよい。
装置ドライバコア340は、この発見応答に基づいて、機能セットのすべての機能がローカルにサポートされているかどうかを判定する(420)。いくつかの実施形態においては、装置ドライバコア340が、発見応答中の装置発見情報を機能セットに分解して、その機能セットと、拡張可能な装置ドライバ330がローカルにサポートしている機能、即ち装置ドライバコア340が元々サポートしているか、あるいはローカルプラグインリポジトリ350に記憶されている1以上のプラグインの支援によってサポートしている機能とを比較する。すべての機能がローカルにサポートされている場合は、追加プラグインを遠隔で検索する必要はなく、装置ドライバコア340に元々ある画像処理制御ユーザーインターフェース記述(UID)がユーザーインターフェース210上でレンダリングされる。ユーザーは、その後、ユーザーインターフェース210上で画像処理設定を選択し、画像処理ジョブを画像処理装置120に提出してもよい(430)。
しかしながら、ステップ420において、すべての機能がローカルでサポートされていない場合は、装置ドライバコア340は、ローカルサポートでの不足を救済できる遠隔のプラグインが入手可能かどうかを判定する(440)。いくつかの実施形態においては、装置ドライバコア340は、ローカルサポートの不足を救済できるウェブがホストするプラグインやそのようなプラグインのためのライセンス条件について、インターネットを介してサーバー装置130に問い合わせ、それに応答して、サーバー装置130は問い合わせ応答を発する。勿論、必要ならば、装置ドライバコア340が2以上のサーバー装置に問い合わせてもよい。プラグインの問い合わせと応答は、ハイパーテキスト転送プロトコル/ハイパーテキストマークアップ言語(HTTP/HTML)、拡張可能なマークアップ言語によるSOAP(SOAP/XML)、又は伝送制御プロトコル/インターネットプロトコル(TCP/IP)による専有プロトコルなど、様々なプロトコルを介して行うことができる。あるいは、ファイル転送プロトコル(FTP)や直接インターネットメッセージのカプセル化(DIME)などの転送プロトコルを使用してもよい。
プラグインとそれに関連するライセンス条件は、サーバー装置130に記憶され、画像処理装置120のメーカーや機種の識別子、機能識別子、及び/又はジョブ・チケット[例えば、PJL、XML文書規格(XPS)印刷チケット、WS印刷チケット]などの様々な検索パラメータを用いて、及び、ファイル名に符号化されたキーワードを用いたプラグインのメタタグ付け、ファイル、ヘッダー、又はシャドウファイルに追加される補足データ、及び/又はデータベースの検索などの様々な検索技術を用いて、取り出され得る。プラグインのためのライセンス条件としては、料金成分および利用成分が含まれてもよい。料金成分は、ユーザーに対する費用を指定してもよく、また利用成分は、利用制限を指定してもよい。料金成分としては、例えば、1回限り料金、定期的な料金、又は利用ごとの料金を指定してもよいし、利用成分としては、例えば、無期限、特定期間、あるいは所定の利用回数を指定してもよい。
ステップ440において、ローカルサポートの不足を救済する遠隔プラグインが入手不可能な場合は、装置ドライバコア340は、機能セットが少なくなっても画像処理を進められるような主要な機能が、ローカルにサポートされているかどうかを判定する(450)。主要な機能がローカルでサポートされていない場合は、画像処理ジョブは禁止される(470)。主要な機能がローカルでサポートされている場合は、ユーザーは、ユーザーインターフェース210を介して、限られた機能セットで画像処理を進めたいかどうかを尋ねられる(460)。ユーザーがユーザー入力によって進めたくないことを指示すると、画像処理ジョブは禁止される(470)。ユーザーがユーザー入力を介して、進めたい旨を指示すると、装置ドライバコア340に元々ある画像処理制御UIDがユーザーインターフェース210でレンダリングされ、ユーザーは画像処理設定を選択し画像処理ジョブを提出してもよい(430)。
また、ステップ440において、ローカルサポートの不足を救済する遠隔のプラグインが入手可能な場合は、装置ドライバコア340は、ユーザーインターフェース210を介してユーザーにプラグインを取得したいかどうかを問い合わせる(480)。いくつかの実施形態においては、ユーザーは、プラグインを取得したい場合に、機能セットの完全なサポートが実現されるかどうかについての表示だけでなくプラグインとライセンス条件の一覧を、ユーザーインターフェース210上で提示され、ユーザー入力を介してプラグインを取得するかどうかの決定を指示するよう求められる。
ステップ480において、ユーザーがユーザー入力を介して、プラグインの取得を拒否すると、フローはステップ450へ移行する。また、ステップ480において、ユーザーがプラグインを取得したい旨をユーザー入力により表すと、装置ドライバコア340はプラグインをダウンロードし、それらをローカルプラグインリポジトリ350に記憶し(490)、同時に、プラグインへのアクセス権が、同意されたライセンス条件に従って与えられ、フローはステップ510に進む。このステップ490において、いくつかの実施形態では、プラグインのための支払いが要求され、取得時に1回限りのクレジットあるいはデビットカード取引を介してなされる。別の実施形態では、プリペイド口座から1回限りのデビットにより支払われる。さらに別の実施形態では、繰り返しの請求サイクル、クレジット又はデビットカード取引、又はプリペイド口座からの引落しにより支払われる。さらに別の実施形態では、利用ごとにクレジット又はデビットカード取引、又はプリペイド口座の引落しにより支払われる。
また、上記のようにして、ローカルプラグインリポジトリ350に記憶されたプラグインは、プラグインのためのライセンス条件が期限切れであるか、又はライセンスを受けた利用回数を使い果たした場合は、プラグインがローカルプラグインリポジトリ350から削除されるか、又は機能するライセンスキーがない状態に符号化されるなど、無効状態にして残されてもよい。
図5は、本発明のいくつかの実施形態において、ユーザーインターフェース210でレンダリングする画像処理制御のUIDを選択する方法を説明するためのフロー図である。UIDにはメニューが備えられ、ユーザーはそこで画像処理ジョブに対するアプリケーションのための画像処理設定を選択することができる。いくつかの実施形態においては、UIDは、タイトル、データのタイプ(例えば、整数、列挙型)、データ範囲(例えば、A4、A5、A6、レター、法的文書サイズ)、及びグループ化の指示(例えば、画像処理設定Xにならべて表示)など、画像処理設定の各々について様々な情報を有する拡張可能なマークアップ言語(XML)である。
遠隔のプラグインがステップ490(図4)でダウンロードされると、機能の不足を救済するダウンロードされたプラグインのいずれかが、統合型の画像処理制御のUIDを有しているかどうかを判定する第1のチェックがなされる(510)。例えば、UIDを有するプラグインに識別フラグを付与しておき、クライアント装置110がこの識別フラグを検出することでUIDの有無をチェックすることが考えられる。
次に、ステップ510で統合型UIDを有している場合は、統合型のUIDがユーザーインターフェース210上にレンダリングされる(520)。また、ステップ510で統合型UIDを有していない場合は、ダウンロードされたプラグインのいずれかが独立型の画像処理制御のUIDであるかどうかを判定する第2のチェックがなされる(530)。この際のチェック方法もステップ510と同様の方法で行うことができる。独立型の画像処理制御UIDとは、例えば、サイト特有の(例えば、企業の)全般的な印象を、ユーザーインターフェース210に与えるものであってよい。ステップ530で独立型UIDを有している場合は、独立型のUIDがユーザーインターフェース210上にレンダリングされる(540)。また、ステップ530で独立型UIDを有していない場合は、装置ドライバコア340に元々ある画像処理制御UIDがユーザーインターフェース210上にレンダリングされる(550)。
図6は、本発明のいくつかの実施形態において、発見を行い、更新プラグインによって拡張可能な画像処理装置ドライバ330を自動的に適合させる方法を説明するためのフロー図である。ローカルサポートの不足を救済するプラグインをダウンロードする以外にも、装置ドライバコア340はサーバー装置130を検索して、装置ドライバコア340を更新するか、そうでなければ向上させる遠隔のプラグイン、及び/又は以前にダウンロードされローカルプラグインリポジトリ350に記憶されているプラグインをダウンロードしてもよい。そのような更新プラグインの検索は、画像処理装置120で新しい機能やファームウェアが検知されたときや、クライアント装置110のユーザーが手動で開始したときなど、不定期に行ってもよいし、定期的に行ってもよい。いくつかの実施形態においては、装置ドライバコア340は、画像処理装置120に対し機能セット発見の一部としてそのファームウェアのレベルを問い合わせ、そのファームウェアのレベルをメモリ240に記憶する。その後、ファームウェアのレベルに変化が検知されるたびに、装置ドライバコア340は、現在のファームウェアのレベルに対応する更新プラグインを求めてサーバー装置130で、検索を開始する。
図6に示すフロー例では、装置ドライバコア340が、以前にダウンロードしたプラグインの更新プラグインが1以上入手可能かどうかを判定する(610)。以前にダウンロードしたプラグインの更新プラグインが1以上入手可能な場合は、その更新プラグインがローカルプラグインリポジトリ350にダウンロードされる(620)。更新プラグインが入手可能かどうかにかかわらず、フローはステップ630に進み、装置ドライバコア340は装置ドライバコア340の更新プラグインが1以上入手可能かどうかを判定する(630)。装置ドライバコア340の更新プラグインが入手不可能な場合は、更新処理は終了する(660)。また、装置ドライバコア340の更新プラグインが1以上入手可能な場合は、その更新プラグインがローカルプラグインリポジトリ350にダウンロードされ(640)、構成ファイル360が更新され、適切なDLLが更新プラグインと置き換えられて(650)、処理が終了する(660)。
本発明は、その精神又は主要な特徴から逸脱することなく、他の特定の形式で具現化することが可能であることは当事者により理解されるであろう。従って、本明細書はあらゆる点で例示的なものであって限定的なものではないと見なされる。本発明の範囲は添付の特許請求の範囲により示され、さらに、特許請求の範囲の均等範囲に属する変更は、全て本発明の範囲内のものである。
110…クライアント装置、120…画像処理装置、130…サーバー装置、140…通信ネットワーク、210…ユーザーインターフェース、220…通信インターフェース、230…プロセッサ、240…メモリ、310…クライアントアプリケーション、320…オペレーティングシステム、330…画像処理装置ドライバ(拡張可能な装置ドライバ)、340…装置ドライバコア、350…ローカルプラグインリポジトリ、360…構成ファイル。

Claims (3)

  1. 画像処理装置および該画像処理装置の更新ドライバを管理するサーバー装置と接続して画像処理システムを構成するクライアント装置であって、
    前記クライアント装置は、少なくとも装置ドライバコアと、ローカルプラグインリポジトリを記憶した拡張可能な画像処理装置ドライバを有し、
    ジョブ処理において、前記装置ドライバコアは前記画像処理装置からジョブ処理に必要な機能セットを取得すると共に、それらの全ての機能が装置ドライバコアおよび前記ローカルプラグインリポジトリによってサポートされているか否か判定し、
    不足する場合は前記サーバーから入手可能な不足プラグインの入手条件を取得して表示し、
    不足プラグインが入できない場合または入手しない場合、前記装置ドライバコアおよびローカルプラグインリポジトリによってサポートされている機能の範囲でジョブ処理を実行することを特徴とするクライアント装置。
  2. 画像処理装置および該画像処理装置の更新ドライバを管理するサーバー装置と接続して画像処理システムを構成するクライアント装置における画像処理方法であって、
    前記クライアント装置は、少なくとも装置ドライバコアと、ローカルプラグインリポジトリを記憶した拡張可能な画像処理装置ドライバを有し、
    ジョブ処理において、前記装置ドライバコアは前記画像処理装置からジョブ処理に必要な機能セットを取得し、
    取得した全ての機能が装置ドライバコアおよび前記ローカルプラグインリポジトリによってサポートされているか否か判定し、
    不足する場合は前記サーバーから入手可能な不足プラグインの入手条件を取得して表示し、
    不足プラグインが入できない場合または入手しない場合、前記装置ドライバコアおよびローカルプラグインリポジトリによってサポートされている機能の範囲でジョブ処理を実行することを特徴とする画像処理方法。
  3. 請求項2に記載の画像処理方法において、前記装置ドライバコアおよびローカルプラグインリポジトリによってサポートされている機能の範囲でジョブ処理を実行するか否か選択を促す表示を行うことを特徴とする画像処理方法。
JP2009234923A 2008-10-16 2009-10-09 拡張可能な画像処理装置ドライバを備えたクライアント装置及びその実施方法 Active JP4991820B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/288,106 2008-10-16
US12/288,106 US20100107097A1 (en) 2008-10-16 2008-10-16 Client device with extensible imaging device driver and method implementing same

Publications (2)

Publication Number Publication Date
JP2010098732A JP2010098732A (ja) 2010-04-30
JP4991820B2 true JP4991820B2 (ja) 2012-08-01

Family

ID=42118721

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009234923A Active JP4991820B2 (ja) 2008-10-16 2009-10-09 拡張可能な画像処理装置ドライバを備えたクライアント装置及びその実施方法

Country Status (2)

Country Link
US (1) US20100107097A1 (ja)
JP (1) JP4991820B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9069908B2 (en) * 2009-03-16 2015-06-30 Apple Inc. Accessory and mobile computing device communication using an application communication protocol
JP4889776B2 (ja) * 2009-09-29 2012-03-07 シャープ株式会社 プリンタ制御装置、プリンタ制御方法、印刷システム、プログラムおよび記録媒体
US9135049B2 (en) * 2012-10-16 2015-09-15 Red Hat Israel, Ltd. Performing thin-provisioning operations on virtual disk images using native features of the storage domain
WO2015015503A1 (en) * 2013-07-31 2015-02-05 Hewlett-Packard Development Company, L. P. Authorizing marking agent consumption at discovered printers
JP6862195B2 (ja) * 2017-01-26 2021-04-21 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、およびコンピュータプログラム
US10929525B2 (en) * 2018-06-25 2021-02-23 Vmware, Inc. Sandboxing of software plug-ins
US20230401073A1 (en) * 2022-06-13 2023-12-14 Dell Products L.P. Dynamic device enablement

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6538763B1 (en) * 1999-04-26 2003-03-25 Hewlett-Packard Company Printer driver architectures and methods of providing adaptable printer driver architectures
US7167260B2 (en) * 2000-04-07 2007-01-23 Seiko Epson Corporation Control of distributed printers using virtual printer driver execute module
US6697074B2 (en) * 2000-11-28 2004-02-24 Nintendo Co., Ltd. Graphics system interface
JP2002202876A (ja) * 2000-12-28 2002-07-19 Canon Inc ネットワークシステム
US20020108054A1 (en) * 2001-02-02 2002-08-08 Moore Christopher S. Solid-state memory device storing program code and methods for use therewith
US7202961B2 (en) * 2001-06-01 2007-04-10 Hewlett-Packard Development Company, L.P. Method for dynamically creating a printer driver
US6757070B1 (en) * 2001-08-21 2004-06-29 Advanced Hitech Corporation Universal print driver
US6943905B2 (en) * 2001-12-20 2005-09-13 Sharp Laboratories Of America, Inc. Virtual print driver system and method
US20030184782A1 (en) * 2002-03-27 2003-10-02 Perkins Gregory E. Printer driver configured to dynamically receive printer self-description
US7304758B2 (en) * 2002-03-27 2007-12-04 Sharp Laboratories Of America, Inc. Dynamically updating a printer driver
US7284246B2 (en) * 2002-04-23 2007-10-16 Canon Kabushiki Kaisha Extensible device driver
US7752290B2 (en) * 2002-08-21 2010-07-06 Canon Kabushiki Kaisha Information processing apparatus connectable to peripheral device, controlling method, and computer-readable storage medium storing control program thereon
JP3787544B2 (ja) * 2002-08-21 2006-06-21 キヤノン株式会社 情報処理装置、制御方法、実行プログラム
US7853946B2 (en) * 2003-02-28 2010-12-14 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and control program
JP4908731B2 (ja) * 2003-07-31 2012-04-04 キヤノン株式会社 情報処理装置、情報処理方法及び情報処理プログラム
US7869068B2 (en) * 2003-06-27 2011-01-11 Zoran Corporation Printer driver extension and related method
JP2005161674A (ja) * 2003-12-02 2005-06-23 Canon Inc 画像形成装置、画像形成システム、課金処理方法及びプログラム
US8024722B2 (en) * 2004-08-12 2011-09-20 Trek 2000 International Ltd Method and system for automatic installation of a functional unit driver on a host
JP4533780B2 (ja) * 2005-03-18 2010-09-01 株式会社リコー 画像形成システム、画像形成装置、端末装置及び端末装置のドライバの更新方法
US8498002B2 (en) * 2005-03-29 2013-07-30 Canon Kabushiki Kaisha Information processing apparatus capable of customizing device driver, information processing method, and control program
US8286167B2 (en) * 2006-12-01 2012-10-09 Ricoh Company, Ltd. Image processing apparatus, job management method, and storage medium

Also Published As

Publication number Publication date
JP2010098732A (ja) 2010-04-30
US20100107097A1 (en) 2010-04-29

Similar Documents

Publication Publication Date Title
JP5402016B2 (ja) 印刷ドライバを生成するための装置、方法及びコンピュータプログラム
JP4991820B2 (ja) 拡張可能な画像処理装置ドライバを備えたクライアント装置及びその実施方法
JP5447030B2 (ja) 電子機器、情報処理方法、及び情報処理プログラム
JP4874859B2 (ja) 情報処理装置、情報処理システム、プログラム及びその記録媒体
US9052850B2 (en) Printer driver, storage medium, and information processing apparatus
JP4590457B2 (ja) ドキュメントのドライバなし画像処理方法
US9069504B2 (en) Printing apparatus and method for increasing storage area
JP5152242B2 (ja) 端末装置及びコンピュータプログラム
EP2490119A2 (en) Printing system, control method, information processing apparatus, device driver program, and installer program
JP5047067B2 (ja) 情報処理装置、データ出力システム、データ生成プログラム及びその記録媒体
JP2020004158A (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
EP2079224A1 (en) Dynamic print driver installation for cameras
US20120170071A1 (en) Information processing apparatus, device information display method, and computer-readable storage medium
US20110164268A1 (en) Image forming apparatus, information processing method, and recording medium storing information processing program
JP5228851B2 (ja) 機器、インストールシステム、インストール方法、プログラム、記憶媒体
JP6737170B2 (ja) サーバー装置、画像処理ユニット及びプログラム
JP4641530B2 (ja) 情報処理装置、ドライバ処理方法、プログラム
JP2008305004A (ja) 画像形成装置、アプリケーション実行方法及びアプリケーション実行プログラム
JP5511483B2 (ja) 情報処理装置、制御方法、およびプログラム
CN112445436B (zh) 信息处理装置和用于信息处理装置的方法
US8422040B2 (en) Image forming system and method, management apparatus, and recording medium
JP2009205262A (ja) アプリケーションプログラムインストール装置、アプリケーションプログラムインストール方法、プログラム、および記録媒体
JP2008211747A (ja) 画像処理装置、サーバ装置、タスク処理方法、記憶媒体、プログラム
JP2011186969A (ja) 情報処理装置、情報処理装置の制御方法、インストール方法及びコンピュータプログラム
US20080133743A1 (en) Electronic apparatus and information processing system

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110524

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110531

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110707

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120228

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120322

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120410

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120507

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4991820

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150511

Year of fee payment: 3