JP4994575B2 - ネットワークインターフェース装置及びその制御方法、及び画像形成システム - Google Patents

ネットワークインターフェース装置及びその制御方法、及び画像形成システム Download PDF

Info

Publication number
JP4994575B2
JP4994575B2 JP2004071170A JP2004071170A JP4994575B2 JP 4994575 B2 JP4994575 B2 JP 4994575B2 JP 2004071170 A JP2004071170 A JP 2004071170A JP 2004071170 A JP2004071170 A JP 2004071170A JP 4994575 B2 JP4994575 B2 JP 4994575B2
Authority
JP
Japan
Prior art keywords
application program
image forming
forming apparatus
network interface
interface
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.)
Expired - Fee Related
Application number
JP2004071170A
Other languages
English (en)
Other versions
JP2005258924A5 (ja
JP2005258924A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2004071170A priority Critical patent/JP4994575B2/ja
Priority to PCT/JP2005/004406 priority patent/WO2005088422A1/en
Priority to US11/462,080 priority patent/US8121954B2/en
Publication of JP2005258924A publication Critical patent/JP2005258924A/ja
Publication of JP2005258924A5 publication Critical patent/JP2005258924A5/ja
Application granted granted Critical
Publication of JP4994575B2 publication Critical patent/JP4994575B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • G06F21/608Secure printing

Description

本発明は、ネットワークインターフェース装置及びその制御方法、及び画像形成システムに関し、特に、画像形成装置に装着可能なネットワークインタフェース、それを用いた画像形成システムに用いて好適なものである。
近年、インターネット等のネットワークの普及にともない、プリンタ等の印刷装置もネットワークを介して使われる形態が一般化してきた。通常、高速機やカラー機などの高価格な印刷装置では、ネットワークインタフェースは内蔵される傾向にあるが、モノクロ機などの低価格な印刷装置では、ネットワークインタフェースは本体には同梱されず、ネットワークカードモジュールとして別に供給される形態が一般的である。
この場合、印刷装置本体とネットワークカードモジュールはそれぞれが個々にCPUを持ったインテリジェントな形態である。また、通常、ネットワークカードモジュール側にネットワーク経由での各種プリントサービスの統括制御を行うプリントサーバ機能を有しており、印刷装置とネットワークカードモジュールは接続インタフェースを介して通信を行い所望のサービスを実装している。これは逆に処理負荷の重いネットワークサービスをネットワークカードモジュールに実装させることが可能となり、相対的に印刷装置本体のCPUやその周辺装置(デバイス)等のパフォーマンスを下げることができ、印刷装置本体のコスト削減をもたらしている。
ここで、印刷装置に係る従来のネットワークインタフェースは、例えばLPR(Line PRinter daemon protocol、仕様はRFC1179で規定)に代表されるような印刷データの送信だけできればよかったが、昨今印刷装置に対する情報管理というニーズが高くなり、付加技術として各種の手段が提供されている。
最も単純な例が、印刷データを送信するポートに情報管理データ(ジョブ制御言語=Job Language)を付加する形態である。ジョブ制御言語は印刷データを送信するポートを共有する形態であるため、サービスポートを増加する必要がなく比較的実装が簡単ではある。しかし、印刷データ受信中にデータが大量に送信されるとポートを占有することとなり、情報管理データのやりとりが止まってしまうという問題があった。また、ネットワークにおけるLPRプロトコルのような片方向型コネクションの場合には、そもそも情報取得ができないという欠点があった。
他の手法としては、SNMP(Simple Network Management Protocol)/MIB(Management Information Base)(RFC1157)を使った方式がある。これはデータ送受信用の専用ポートを使用し、標準規格であるSNMPを使用する方法である。しかし、この方式は、SNMPを受信してユーザインタフェース(UI)を提供する専用クライアントプログラムの独自開発が必要であるとともに、そもそも単純な情報のやり取りを行うプロトコルであるため、数字、文字列などの単純なデータベースしか提供できない。その結果、機器の構成を示すビットマップ画像などユーザインタフェースを構成する情報は、クライアントプログラムが所有せねばならず、それに伴いクライアントプログラムを機種対応にしなくてはいけないという問題点がある。
さらに、最近ではHTTP(hypertext transfer protocol:RFC1945,RFC2616)を用いた方式が主流となりつつある。この方式によれば、ネットワークカードモジュールの中にHTTPサービスを提供して、機器情報に関するHTML(hypertext markup language)データやビットマップ画像といったウェブ(WEB)コンテンツを提供する。そして、クライアントは、上記WEBコンテンツを一般的なWEBブラウザを使用してグラフィカルユーザインタフェース(GUI)として表示させ、その操作を可能にすることで、クライアントプログラムを提供しなくても同様の効果を得ることが可能である。従来の方式ではクライアントプログラムが多種多様な機器に固有な情報(メッセージ文字列、ビットマップ画像)を管理する必要があったのに対して、上記方式は機器が自分の機種情報だけ持てばよいので短期間で製品を提供可能にするにはもっとも適する方法である。
しかしながら、上述したいずれの手法もネットワークカードモジュールに予め組み込まれた静的な機能のみを提供するものである。したがって、上述したいずれの手法においても、後から機能そのものを追加する、あるいは組み込まれた機能による制御方法を変更するといった動的なサービスの追加ができなかった。
そこで、最近になってJava(R)(米国Sun Microsystems, Inc.の商標)言語を用いて作成されたアプリケーションプログラム(以下、「Java(R)アプリケーションプログラム」と称す。)を、組み込み機器上に実装されたJava(R)仮想マシン上で動作可能とするプラットフォーム技術が提案されている。この技術を用いることで印刷装置等の組み込み機器に後から新たな機能を追加することが可能となってきている。
例えば、Java(R)アプリケーションプログラムを実行可能にするとともに、このアプリケーションプログラムを外部からダウンロード可能なように構成したマルチファンクション装置があった。詳細には、機能追加等を行うために操作者個人がカスタマイズした当該マルチファンクション装置上で動作可能なアプリケーションプログラムを、当該操作者を識別するためのID番号とともにファイルサーバに格納する。そして、マルチファンクション装置が作動されると、操作者のID番号を認識して、この操作者に対応するアプリケーションプログラムをファイルサーバからマルチファンクション装置にダウンロードし実行させることにより、機能追加等を行うことを可能にしている(例えば、特許文献1参照。)
Java(R)アプリケーションプログラムを実行させるためのJava(R)仮想マシンは、ネットワーク通信機能を始め、組み込み機器の制御に必要な各種機能を提供するためにアプリケーションプログラムインタフェース(API)を備えている。Java(R)アプリケーションプログラムは、これらのAPIを呼び出して組み込み機器に対する制御やネットワークを介して接続されたホストコンピュータからの要求等の処理を実行する。
特開2000−298561号公報
ここで、Java(R)仮想マシン上で提供されるAPIは、ネットワーク通信に必要な機能を含んでおり、ネットワーク通信プロトコルの処理を行う基本モジュールを共有する。そのため、Java(R)仮想マシン上で提供されるAPIは、通常、ネットワークカードモジュール上に実装される。
しかしながら、Java(R)アプリケーションプログラムが使用するAPIは、何ら使用を制限するものがなく、ネットワークモジュール上に実装されるすべてのAPIは、どのようなアプリケーションプログラムからも利用可能であった。このため、Java(R)アプリケーションプログラムが利用可能なAPIを、アプリケーションプログラム毎に制限しようとすることが必要である。
本発明は、このような事情に鑑みてなされたものであり、アプリケーションプログラム毎に、利用可能なアプリケーションプログラムインタフェースを制限することができるようにすることを目的とする。
本発明のネットワークインターフェース装置は、画像形成装置に装着可能であり、アプリケーションプログラムを実行可能なネットワークインターフェース装置であって、アプリケーションプログラムに対して上記画像形成装置に係る制御機能を提供するアプリケーションプログラムインタフェースと、起動を指示されたアプリケーションプログラムに関連付けられたライセンス情報に基づいて、上記アプリケーションプログラムが適正なアプリケーションプログラムであるか否かを判断する第1の判断手段と、上記第1の判断手段によって適正であると判断されたアプリケーションプログラムを起動する起動手段と、上記起動手段によって起動された上記アプリケーションプログラムが上記アプリケーションプログラムインタフェース呼び出し可能であるかを、上記アプリケーションプログラムに関連付けられたライセンス情報に基づいて判断する第2の判断手段と、上記第2の判断手段による判断結果に応じて、上記アプリケーションプログラムインタフェースの動作を制御する動作制御手段とを備えることを特徴とする。
本発明の画像形成システムは、画像形成装置と、当該画像形成装置に装着可能であるとともにアプリケーションプログラムを実行可能なネットワークインターフェース装置とを有する画像形成システムであって、入力データに基づいて画像情報を生成し出力する画像形成手段と、アプリケーションプログラムに対して上記画像形成手段に係る制御機能を提供するアプリケーションプログラムインタフェースと、起動を指示されたアプリケーションプログラムに関連付けられたライセンス情報に基づいて、上記アプリケーションプログラムが適正なアプリケーションプログラムであるか否かを判断する第1の判断手段と、上記第1の判断手段によって適正であると判断されたアプリケーションプログラムを起動する起動手段と、上記起動手段によって起動された上記アプリケーションプログラムが上記アプリケーションプログラムインタフェース呼び出し可能であるかを、上記アプリケーションプログラムに関連付けられたライセンス情報に基づいて判断する第2の判断手段と、上記第2の判断手段による判断結果に応じて、上記アプリケーションプログラムインタフェースの動作を制御する動作制御手段とを備えることを特徴とする。
本発明の画像形成システムは、画像形成装置と、当該画像形成装置に装着可能であるとともに当該画像形成装置と別個のCPUを有するネットワークインターフェース装置とを有する画像形成システムであって、上記画像形成装置との入出力制御機能を提供するアプリケーションプログラムインタフェースと、外部から供給されるアプリケーションプログラムを上記画像形成装置又は上記ネットワークインターフェース装置に格納するとともに、上記アプリケーションプログラムに関連付けられたライセンス情報を上記画像形成装置及び上記ネットワークインターフェース装置の双方に格納する格納手段と、上記アプリケーションプログラムの起動が指示された場合に、上記画像形成装置に格納されたライセンス情報と上記ネットワークインターフェース装置に格納されたライセンス情報とに基づいて、上記アプリケーションプログラムが適正なアプリケーションプログラムであるか否かを判断する第1の判断手段と、上記第1の判断手段によって適正であると判断されたアプリケーションプログラムを起動する起動手段と、上記起動手段によって起動されたアプリケーションプログラム呼び出し可能なアプリケーションプログラムインタフェースを示す記述を上記起動されたアプリケーションプログラムに関連付けられたライセンス情報から抽出して、上記アプリケーションプログラムインタフェースが上記起動されたアプリケーションプログラムによって呼び出し可能であるかを判断する第2の判断手段と、上記第2の判断手段での判断結果に従って、上記アプリケーションプログラムインタフェースの動作を制御する動作制御手段とを備えることを特徴とする。
本発明のネットワークインターフェース装置の制御方法は、画像形成装置に装着可能でありアプリケーションプログラムを実行可能であるとともに、上記アプリケーションプログラムに対して上記画像形成装置に係る制御機能を提供するアプリケーションプログラムインタフェースを備えるネットワークインターフェース装置の制御方法であって、起動を指示されたアプリケーションプログラムに関連付けられたライセンス情報に基づいて、上記アプリケーションプログラムが適正なアプリケーションプログラムであるか否かを判断する第1の判断ステップと、上記第1の判断ステップにおいて適正であると判断されたアプリケーションプログラムを起動する起動ステップと、上記起動ステップにおいて起動された上記アプリケーションプログラムが上記アプリケーションプログラムインタフェース呼び出し可能であるかを、上記アプリケーションプログラムに関連付けられたライセンス情報に基づいて判断する第2の判断ステップと、上記第2の判断ステップでの判断結果に応じて、上記アプリケーションプログラムインタフェースの動作を制御する動作制御ステップとを有することを特徴とする。
本発明のプログラムは、画像形成装置に装着可能でありアプリケーションプログラムを実行可能であるとともに、上記アプリケーションプログラムに対して上記画像形成装置に係る制御機能を提供するアプリケーションプログラムインタフェースを備えるネットワークインターフェース装置のコンピュータに実行させるプログラムであって、起動を指示されたアプリケーションプログラムに関連付けられたライセンス情報に基づいて、上記アプリケーションプログラムが適正なアプリケーションプログラムであるか否かを判断する第1の判断ステップと、上記第1の判断ステップにおいて適正であると判断されたアプリケーションプログラムを起動する起動ステップと、上記起動ステップにおいて起動された上記アプリケーションプログラムが上記アプリケーションプログラムインタフェース呼び出し可能であるかを、上記アプリケーションプログラムに関連付けられたライセンス情報に基づいて判断する第2の判断ステップと、上記第2の判断ステップによる判断結果に応じて、上記アプリケーションプログラムインタフェースの動作を制御する動作制御ステップとをコンピュータに実行させることを特徴とする。
本発明のコンピュータ読み取り可能な記録媒体は、上記プログラムを記録したことを特徴とする。
本発明によれば、アプリケーションプログラムのライセンス情報に基づいてアプリケーションプログラムインタフェースがアプリケーションプログラムによって呼び出し可能であるかを判断し、判断結果に応じてアプリケーションプログラムインタフェースの動作を制御する。これにより、アプリケーションプログラム毎に、利用可能なアプリケーションプログラムインタフェースを任意に設定し、アプリケーションプログラムインタフェースの使用制限を制御することができる。
以下、本発明の実施形態を図面に基づいて説明する。
図1は、本発明の一実施形態による情報処理装置及びそれを用いた画像形成システムを適用したプリンタ1000のハードウェア構成例を示すブロック図である。
プリンタ1000は、ネットワークカードモジュールとしてのネットワークプリントサーバ1500とプリンタコントローラ1600とを有し構成される。また、プリンタ1000は、外部メモリ10、プリントエンジン16、及び操作パネル(操作部)18を有する。
ネットワークプリントサーバ1500は、ネットワークプリントサーバ用CPU1、RAM2、フラッシュメモリ(FlashROM)3、ネットワークコントローラ(LANC)5、LED6、拡張インタフェースコントローラ(EXPC)7が、システムバス4を介して互いに通信可能に接続され構成されている。
CPU1は、FlashROM3に記憶された制御プログラムを実行することで、システムバス4に接続された各構成部を統括的に制御し、例えばプリンタ1000(プリンタコントローラ1600)の制御やLAN2000に接続された図示しない複数の外部装置(例えば、ホストコンピュータ等)との通信制御を行う。
例えば、CPU1は、制御プログラムに基づいて、LANC5を介して複数の外部装置から送られる印刷データやプリンタ制御命令等の各種データ送受信要求を統括的に制御し、EXPC7を介して接続されるプリンタコントローラ1600に対して適切なデータ転送制御を行う。なお、LAN2000に接続された外部装置との通信は、所定のネットワーク通信プロトコルを用いて行われる。
RAM2は、CPU1の主メモリ、ワークエリア等の一時記憶領域として機能する。
FlashROM3は、制御プログラム等を記憶するための書き換え可能なメモリであり、例えば後述する図、図11及び図12に示すようなフローチャートに従った処理を実行するためのCPU1の制御プログラムが記憶されている。
LANC5は、LAN2000に接続された外部装置と双方向にデータをやりとりし、EXPC7は、プリンタコントローラ1600と双方向にデータをやりとりする。
LED6は、ネットワークプリントサーバ1500の動作状態を示す表示部として用いられる。LED6は、その点滅パターンや色により、例えばLAN2000に対するLANC5の電気的な接続状態(LINK)や、ネットワーク通信モード(10BaSeTや100BaSeTX、全二重や半二重)等の各種動作状態を示すことが可能なように構成されている。
プリンタコントローラ1600は、プリンタコントローラ用CPU8、RAM14、ROM9、ラスタコントローラ12、拡張インタフェースコントローラ(EXPC)13、及びディスクコントローラ(DKC)15が、システムバス11を介して互いに通信可能に接続され構成されている。
CPU8は、ROM9に記憶された制御プログラム等、あるいはDKC15を介して接続された外部メモリ10に記憶された制御プログラムやリソースデータ(資源情報)等に基づいて、システムバス11に接続された各構成部(各種デバイス)を統括的に制御する。
例えば、CPU8は、制御プログラム等に基づいて、EXPC13を介して接続されるネットワークプリントサーバ1500から印刷データを受信し、それに基づいてラスタコントローラ12により出力画像情報を生成して画像信号をプリントエンジン16に出力する。
ROM9は、CPU8の制御プログラム等を記憶する。
RAM14は、CPU8の主メモリ、ワークエリア等として機能するRAMである。RAM14は、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張可能なように構成されている。
ラスタコントローラ12は、ネットワークプリントサーバ1500からの印刷データが入力され、それに基づいて出力画像情報を生成し画像信号を出力する。EXPC13は、ネットワークプリントサーバ1500と双方向にデータをやりとりする。
ここで、ネットワークプリントサーバ1500とプリンタコントローラ1600とは拡張インタフェース17により接続されている。拡張インタフェース17は、図示しないコネクタを有し構成されており、ネットワークプリントサーバ1500のみを着脱し、そのネットワークプリントサーバ1500を同じ構成を持つ別の(例えば、機種の異なる)プリンタ1000に装着可能なように構成されている。
プリントエンジン16は、例えば電子写真方式(レーザービーム方式)やインクジェット方式や昇華(熱転写)方式等の公知の印刷技術を利用して、ラスタコントローラ12より出力される画像信号に係る画像を出力する。
操作パネル18は、プリンタ1000の動作モード等の設定や印刷データの取り消し等の操作を行うためのボタン、及びプリンタ1000の動作状態を示す液晶パネルやLED等の表示部が配されている。
図2は、本発明の実施形態におけるプリンタ1000内の制御機器であるネットワークプリントサーバ1500及びプリンタコントローラ1600が有する各記憶デバイスに記憶された制御プログラムにおけるソフトウェア構成例を示すブロック図である。なお、各制御プログラムは、各制御機器のCPU1、8によってプログラムが解析され処理される。
図2において、1501は、ネットワークプリントサーバ1500の基本的なデータの入出力制御を統括するオペレーティングシステムである。オペレーティングシステム1501は、ファイルシステム1505、拡張インタフェースドライバ1506、及びネットワークインタフェースドライバ1507を有する。
ファイルシステム1505は、プログラム/データ記憶部1509やライセンス記憶部1511との間でデータの入出力制御を行う。ここで、プログラム/データ記憶部1509は、装着されるプリンタ1000の機種に依存しない共通情報としてのアプリケーションプログラムやリソースデータを格納するものであり、ライセンス記憶部1511は、アプリケーションプログラムのライセンスコード(ライセンス情報)を格納するものである。
拡張インタフェースドライバ1506は、拡張インタフェース17を介したプリンタコントローラ1600とのデータ通信に係る通信制御を行う。ネットワークインタフェースドライバ1507は、LAN2000の通信媒体を介した外部装置とのデータ通信に係る通信制御を行う。
1502は、アプリケーションプログラムインタフェース(API)であり、ネットワークプリントサーバ1500で動作するユーザアプリケーション1503やユーザアプリケーションの登録・管理を行う管理アプリケーション1504等のアプリケーションプログラムにオペレーティングシステム1501が備える各種制御機能を提供する。
アプリケーションプログラムインタフェース1502は、データ転送API、リソース制御API、プリンタ制御API、ジョブ制御API、プリントサーバ制御API、ハードディスク(HDD)制御API、及びパネルAPIなどを備える。
データ転送APIは印刷データの送受信機能を提供する。リソース制御APIはビットマップ画像や表示メッセージ等のリソースデータの入出力制御を行い、プリンタ制御APIはプリンタ1000の再起動及び設定値の初期化や設定等の制御を行う。ジョブ制御APIは印刷ジョブの取り消しや再印刷指示などを制御する。プリントサーバ制御APIは、ネットワークプリントサーバ1500の再起動及び設定値の初期化や設定、並びにアプリケーションプログラムの起動、登録、削除を行う。ハードディスク制御APIはハードディスクドライブへの書き込み・読み出しなどを制御し、パネル制御APIは操作パネル18における表示の切り替えなどを制御する。
1601は、プリンタコントローラ1600の各種処理制御を統括するオペレーティングシステムである。オペレーティングシステム1601は、プリントエンジン制御部1603及びファイルシステム1604を有する。
プリントエンジン制御部1603は、プリントエンジン16との通信制御を行う。また、ファイルシステム1604は、機種依存リソース/プログラム記憶部1610やライセンス記憶部1612との間でのデータの入出力制御を行う。なお、機種依存リソース/プログラム記憶部1610は、プリンタ1000の機種に依存する機種依存情報としてのアプリケーションプログラムやリソースデータ、例えばネットワークプリントサーバ1500から参照されるビットマップ画像やエラーメッセージ等の機種依存リソース、及びネットワークプリントサーバ1500上で動作する機種依存アプリケーションプログラム等を記憶する。また、ライセンス記憶部1612は、アプリケーションプログラムのライセンスコード(ライセンス情報)を記憶する。
1602は、拡張インタフェース制御部であり、拡張インタフェース17を介してネットワークプリントサーバ1500との通信制御を行う。さらに、拡張インタフェース制御部1602は、データ転送論理インタフェース、リソース制御論理インタフェース、プリンタ制御論理インタフェース、ジョブ制御論理インタフェース、ハードディスク(HDD)制御論理インタフェース、及びパネル制御論理インタフェース等を備えており、各論理インタフェースを介してネットワークプリントサーバ1500から要求された命令をオペレーティングシステム1601に転送し、その処理結果をネットワークプリントサーバ1500に返信する。
データ転送論理インタフェースは制御種別毎に印刷データの入出力を制御し、リソース制御論理インタフェースは機種依存リソース/プログラム記憶部1610に記憶された各種データの入出力を制御する。プリンタ制御論理インタフェースはプリンタ1000の再起動及び設定値の初期化や設定等の制御を行い、ジョブ制御論理インタフェースは印刷ジョブの取り消しや再印刷指示などの制御を行う。ハードディスク制御論理インタフェースはハードディスクドライブを制御し、パネル制御論理インタフェースは操作パネル18を制御する。
図3は、ネットワークプリントサーバ1500で動作するアプリケーションプログラムの記述例を示す図であり、一例としてJava(R)言語による記述例を示している。
図3において、「result = printer.outdata("Test");」(図3における行301)は、上記図2を参照して説明したデータ転送APIを呼び出す例である。「printer.outdata("Test")」が、データ転送APIで“Test”というテキストデータを印字データとしてプリンタコントローラ1600を介してプリントエンジン16から印刷せよという命令を示しており、その処理結果が「result」に数値型(整数型)データとして格納される。
また、「System.out.println("Result="+result);」(図3における行302)は、行301で指示された処理結果を標準出力先、例えば、プリンタ1000の操作パネル18の表示部(液晶パネル)やアプリケーションの呼び出し元であるホストコンピュータ等のブラウザ表示部に、テキストメッセージ変換して表示する命令の記述例である。
図4は、本実施形態におけるネットワークプリントサーバ1500上で動作するアプリケーションプログラムのインストーラの処理方法を示すフローチャートである。
ステップS1001にて、ホストコンピュータ等のクライアント(外部装置)上でWWWアプリケーション(例えば、Webブラウザ)を起動し、ネットワークプリントサーバ1500上で動作するアプリケーションインストーラのURLを入力する。これによりネットワークプリントサーバ1500にアクセスをする。
ステップS1002にて、ネットワークプリントサーバ1500は、クライアントからのアクセスを受け、アプリケーションインストーラを起動する。さらに、ネットワークプリントサーバ1500は、図5に示すような、アプリケーションプログラムのファイル名入力欄1101、当該アプリケーションプログラムのライセンスコード入力欄1102、及びOKボタン1103等を備えるアプリケーションインストーラ画面を示すデータをクライアントに送信して、当該アプリケーションインストーラ画面をWWWアプリケーション上(クライアントが備える表示部)に表示させる。
ステップS1003にて、アプリケーションインストーラ画面を介して、インストールするアプリケーションプログラムに係るファイル名とライセンスコードを入力欄1101、1102に入力する。アプリケーションのファイル名及びライセンスコードが入力され、さらにOKボタン1103が押下されると、ステップS1004にて、クライアントはネットワークプリントサーバ1500にアプリケーションプログラム及びライセンスコードを送信する。
ネットワークプリントサーバ1500は、ステップS1005にて、受信したアプリケーションプログラムをプログラム/データ記憶部1509又はプリンタコントローラ1600の機種依存リソース/プログラム記憶部1610に格納する。
さらに、ネットワークプリントサーバ1500は、ステップS1006にて、受信したライセンスコードをライセンス記憶部1511に格納し、ステップS1007にて、拡張インタフェース制御部1602を介し、ライセンス記憶部1511に格納した書式と同様なライセンスコードをプリンタコントローラ1600のライセンス記憶部1612に格納する。
図7は、上記図4に示したようにして行われるアプリケーションプログラムのインストール手順を示す図である。なお、図7に示す例では、クライアントはホストコンピュータとしている。
クライアント上でWebブラウザ等のWWWアプリケーションを起動し、ネットワークプリントサーバ1500上で動作するアプリケーションインストーラのURLを入力する(P1)ことで、HTMLリクエストD1を発行しネットワークプリントサーバ1500にアクセスする。ネットワークプリントサーバ1500は、クライアントからのHTMLリクエストD1を受け取ると、アプリケーションインストーラを起動する(P2)とともに、HTMLリクエストD1に対する応答としてHTMLレスポンスD2をクライアントに返す。このHTMLレスポンスD2により、クライアント側ではアプリケーションインストーラ画面が表示される(P3)。
クライアント側でアプリケーションインストーラ画面を介してインストールするアプリケーション名とライセンスコードを入力してOKボタンを押下すると(P4)、クライアントはアプリケーションプログラム及びそのライセンスコードD3をネットワークプリントサーバ1500に送信する。
アプリケーションプログラムとライセンスコードを受信したネットワークプリントサーバ1500は、受信したアプリケーションプログラムをプリンタコントローラ1600の機種依存リソース/プログラム記憶部1610又はネットワークプリントサーバ1500のプログラム/データ記憶部1509に格納する(P5)。
また、ネットワークプリントサーバ1500は、受信したライセンスコードをネットワークプリントサーバ1500のライセンス記憶部1511に格納する(P6)。さらに、ネットワークプリントサーバ1500は、拡張インタフェース制御部1602を介して同様なライセンスコードをプリンタコントローラ1600のライセンス記憶部1612に格納する(P7)。
上述のようにして各データの格納が完了すると、ネットワークプリントサーバ1500はインストール完了の通知D4をクライアントに対して行い、クライアント上のWWWアプリケーションによりインストール完了の表示が行われる(P8)。
図8は、本実施形態におけるネットワークプリントサーバ1500上で動作するアプリケーションプログラムの起動処理方法を示すフローチャートである。なお、図8においては、LAN2000に接続されたホストコンピュータ等の外部装置からプリンタ1000に対するアプリケーションプログラムの起動要求を受信した場合を示している。また、図8に示す制御手順を実行させるための制御プログラムは、上述したようにネットワークプリントサーバ1500内のFlashROM3に記憶されている。
ネットワークプリントサーバ1500は、外部装置からLAN2000を介してアプリケーション起動要求命令を受信する(ステップS401)と、受信したアプリケーション起動要求命令からアプリケーションプログラムの格納先情報を含むURL(Uniform Resource Locator)を取得する(ステップS402)。
続いて、ネットワークプリントサーバ1500は、ステップS402において取得したURLからアプリケーションプログラムの格納先情報を抽出する(ステップS403)。例えば、取得したURLが、“http://192.168.0.215/abc/xyz.java”の場合には、“http://”がスキーム、“192.168.0.215”がプリンタ1000自身のネットワークアドレスを示すため、格納先情報として抽出される情報は"/abc/xyx.java"となる。
次に、ネットワークプリントサーバ1500は、格納先情報の文字列が“/dev/”で始まっているか否かを判定する(ステップS404)。
上記判定の結果、格納先情報が“/dev/”の文字列で始まっている場合には、ネットワークプリントサーバ1500は、起動要求されたアプリケーションプログラムの格納先がプリンタコントローラ1600であると判断し、図2にて説明したようなAPIを用いてプリンタコントローラ1600にアプリケーションプログラムの取得要求を発行する(ステップS405)。
次に、ネットワークプリントサーバ1500は、プリンタコントローラ1600からの応答結果を判断する(ステップS406)。この結果、要求したアプリケーションプログラムが取得できた場合には、ネットワークプリントサーバ1500は、プリンタコントローラ1600のライセンス記憶部1612に格納されている該当するアプリケーションのライセンスコードを読み出し、自らのライセンス記憶部1511に格納されているライセンスコードと比較して一致しているか否かを判断する(ステップS413)。
ネットワークプリントサーバ1500は、ライセンスコードが一致していなければ適正なアプリケーションプログラムではないと判断し、アプリケーション起動要求命令の送信元である外部装置にエラーを通知した(ステップS411)後、処理を終了する。一方、ライセンスコードが一致していた場合には、適正なアプリケーションプログラムであると判断し、アプリケーションプログラムをネットワークプリントサーバ1500のRAM2にロードする(ステップS407)。そして、アプリケーションプログラムを起動して(ステップS410)、処理を終了する。
一方、ステップS406においてプリンタコントローラ1600から要求したアプリケーションプログラムが取得できなかった場合には、ネットワークプリントサーバ1500は、アプリケーション起動要求命令の送信元である外部装置にエラーを通知した(ステップS411)後、処理を終了する。
また、ステップS404での判定の結果、格納先情報が“/dev/”の文字列で始まっていないと判定した場合には、ネットワークプリントサーバ1500は、該当するアプリケーションプログラムがプログラム/データ記憶部1509に存在するか否かを判定する(ステップS408)。その結果、該当するアプリケーションプログラムが存在する場合には、ネットワークプリントサーバ1500は、プリンタコントローラ1600のライセンス記憶部1612に格納されている該当するアプリケーションのライセンスコードを読み出し、自らのライセンス記憶部1511に格納されているライセンスコードと比較して一致しているか否かを判断する(ステップS412)。
ライセンスコードが一致していなければ適正なアプリケーションプログラムではないと判断し、アプリケーション起動要求命令の送信元である外部装置にエラーを通知した(ステップS411)後、処理を終了する。ライセンスコードが一致していた場合には、適正アプリケーションプログラムであると判断し、アプリケーションプログラムをネットワークプリントサーバ1500のRAM2にロードした(ステップS409)後、アプリケーションプログラムを起動して(ステップS410)、処理を終了する。
上記ステップS408での判定の結果、ネットワークプリントサーバ1500は、要求されたアプリケーションプログラムが存在しないと判定した場合には、アプリケーション起動要求命令の送信元である外部装置にエラーを通知した(ステップS411)後、処理を終了する。
図9は、ライセンスコードの一例を示す図である。
図9において、「Available-Api:HddApi,PanelApi」(図における行1301)は、このライセンスコードに対応したアプリケーションプログラムが利用可能なAPIを示している。「HddApi」はハードディスク制御APIを表し、「PanelApi」はパネル制御APIを表す。つまり、図9に示したライセンスコードでは、ネットワークプリントサーバ1500におけるハードディスク制御API及びパネル制御APIのみが利用可能なことを示している。
図10は、アプリケーションプログラムの起動時に、当該アプリケーションプログラムのライセンスコードから利用可能なAPIを示す情報を抽出して判定する処理動作を示すフローチャートである。
まず、ステップS1401にて、ネットワークプリントサーバ1500は、ライセンス記憶部1511に格納されているライセンスコードを取得する。次に、ステップS1402にて、ネットワークプリントサーバ1500は、ステップS1401において取得したライセンスコードから利用可能なAPIの記述(図に一例を示した“Available-Api”の部分)を抽出する。
ステップS1403にて、ネットワークプリントサーバ1500は、ステップS1402において抽出された利用可能なAPI(Available-Api)の記述がすべてのAPIの動作を許可する「*」か否かを判断する。上記判断の結果、利用可能なAPIの記述が「*」である場合には、ステップS1404に進み、対応するアプリケーションプログラムに対してすべてのAPIの動作を許可して処理を終了する。一方、利用可能なAPIの記述として「*」とは異なる記述がある場合には、ステップS1405に進み、記述されていないAPIの動作を不可(すなわち、記述されているAPIのみ動作を許可)として、処理を終了する。
図11は、本実施形態におけるネットワークプリントサーバ1500上で動作するアプリケーションプログラムの起動処理方法の他の例を示すフローチャートである。なお、図11においては、プリンタ1000の起動時にネットワークプリントサーバ1500の所定の記憶領域に自動起動アプリケーションとして予め指定されたアプリケーションプログラムを起動する場合について示している。また、図11に示す制御手順を実行させるための制御プログラムは、上述したようにネットワークプリントサーバ1500内のFlashROM3に記憶されている。
プリンタ1000が電源ON(電源投入)あるいはリセットにより再起動されると、ネットワークプリントサーバ1500は、所定の記録領域に自動起動するアプリケーションプログラムの格納先情報が存在するか否かを判定する(ステップS501)。その結果、自動起動するアプリケーションプログラムの格納先情報が存在する場合には、ネットワークプリントサーバ1500は、格納先情報を取得し(ステップS502)、取得した格納先情報の文字列が“/dev/”で始まっているか否かを判定する(ステップS503)。
上記判定の結果、格納先情報が“/dev/”の文字列で始まっている場合には、ネットワークプリントサーバ1500は、起動要求されたアプリケーションプログラムの格納先がプリンタコントローラ1600であると判断し、図2にて説明したようなAPIを用いてプリンタコントローラ1600にアプリケーションプログラムの取得要求を発行する(ステップS504)。
次に、ネットワークプリントサーバ1500は、プリンタコントローラ1600からの応答結果を判断する(ステップS505)。この結果、要求したアプリケーションプログラムが取得できた場合には、ネットワークプリントサーバ1500は、プリンタコントローラ1600のライセンス記憶部1612に格納されている該当するアプリケーションのライセンスコードを読み出し、自らのライセンス記憶部1511に格納されているライセンスコードと比較して一致しているか否かを判断する(ステップS512)。
ネットワークプリントサーバ1500は、ライセンスコードが一致していなければ適正なアプリケーションプログラムではないと判断し、ただちに処理を終了する。一方、ライセンスコードが一致していた場合には、適正なアプリケーションプログラムであると判断し、アプリケーションプログラムをネットワークプリントサーバ1500のRAM2にロードし(ステップS506)、アプリケーションプログラムを起動して(ステップS509)処理を終了する。
一方、ステップS505においてプリンタコントローラ1600から要求したアプリケーションプログラムが取得できなかった場合には、ただちに処理を終了する。
また、ステップS503での判定の結果、格納先情報が“/dev/”の文字列で始まっていないと判定した場合には、ネットワークプリントサーバ1500は、内部のプログラム/データ記憶部1509に該当するアプリケーションプログラムが存在するか否かを判定する(ステップS507)。その結果、該当するアプリケーションプログラムが存在する場合には、ネットワークプリントサーバ1500は、プリンタコントローラ1600のライセンス記憶部1612に格納されている該当するアプリケーションのライセンスコードを読み出し、自らのライセンス記憶部1511に格納されているライセンスコードと比較して一致しているか否かを判断する(ステップS511)。
ライセンスコードが一致していなければ適正なアプリケーションプログラムではないと判断し、ただちに処理を終了する。ライセンスコードが一致していた場合には、適正アプリケーションプログラムであると判断し、アプリケーションプログラムをネットワークプリントサーバ1500のRAM2にロードした(ステップS508)後、アプリケーションプログラムを起動して(ステップS509)処理を終了する。
上記ステップS507での判定の結果、ネットワークプリントサーバ1500は、要求されたアプリケーションプログラムが存在しないと判定した場合には、ただちに処理を終了する。
また、ステップS501において、ネットワークプリントサーバ1500は、自動起動するアプリケーションの格納先情報が存在しないと判定した場合にも、同様にただちに処理を終了する。
なお、この図11におけるステップS509にてアプリケーションプログラムを起動する際にも、上記図10に示したアプリケーションプログラムのライセンスコードに基づいて、利用可能なAPIを判定してAPIの動作を制御する処理が行われる。
図12は、本実施形態におけるネットワークプリントサーバ1500上で動作するアプリケーションプログラム内に記述された命令の処理方法を示すフローチャートである。なお、図12に示す制御手順を実行させるための制御プログラムは、上述したようにネットワークプリントサーバ1500内のFlashROM3に記憶されている。
上記図8又は図11に示したフローチャートに従ってアプリケーションプログラムが起動すると、ネットワークプリントサーバ1500は、当該アプリケーションプログラムに含まれる一命令を取り出し、解析処理を行う(ステップS601)。続いて、ネットワークプリントサーバ1500は、取り出した命令がプリンタコントローラ1600に依存する命令であるか否かを当該命令の命令種別に基づいて判断する(ステップS602)。
ステップS602において命令がプリンタコントローラ1600に依存する命令であると判断した場合には、ネットワークプリントサーバ1500は、図13に示すようなプリンタコントローラ1600の命令書式に従って命令コードを変換する(ステップS603)。さらに、ネットワークプリントサーバ1500は、拡張インタフェース17を介して、変換した命令コードをプリンタコントローラ1600に送信する(ステップS604)。
図13は、プリンタコントローラ1600に対する命令書式の一例を示す図である。
図13において、第1の領域701は、命令種別を示す領域(フィールド)であり、書き込み命令の場合には“0”が設定され、読み出し命令の場合には“1”が設定される。第2の領域702は、プリンタコントローラ1600が提供する各種制御機能毎に予め定義されている一意の番号(呼び出し関数番号)を示す領域である。
第3の領域703は、後述の引数データのデータ種別を示す領域であり、引数データが数値型であれば“0”を設定し、文字列型であれば“1”を設定する。第4の領域704は、上記呼び出し関数に対する引数を付与する際に、引数データのデータサイズ(引数データサイズ)を示す領域である。第5の領域705は、呼び出し関数への引数データを設定する領域である。
図12に戻り、ネットワークプリントサーバ1500は、プリンタコントローラ1600からの命令コード送信に対する応答があるか否かを判断し(ステップS605)、応答があった場合には、プリンタコントローラ1600から返信された処理結果を受信する(ステップS606)。このステップS606で受信する、プリンタコントローラ1600から返信される処理結果は、図に示すような書式で返信される。
は、プリンタコントローラ1600から返信される処理結果の書式の一例を示す図である。
において、第1の領域801は、処理結果に係る戻り値を示す領域である。この第1の領域には、命令処理が正常終了した場合には“0”が設定され、命令における呼び出し関数番号が未登録の関数番号であった場合には“1”が設定される。同様に、命令処理がエラーとなった場合には“2”が設定され、命令における引数データが不正な値であった場合には“3”が設定される。
第2の領域802は、応答データのデータ種別を示す領域であり、応答データが数値型であれば“0”を設定し、文字列型であれば“1”を設定する。第3の領域803は、応答データのデータサイズ(応答データサイズ)を示す領域である。第4の領域804は、応答データを設定する領域である。
図12に戻り、ネットワークプリントサーバ1500は、ステップS606において受信した処理結果を、元のプログラム命令の処理結果の書式に変換して(ステップS607)、プログラム命令の処理結果を所定のメモリ空間に格納する(ステップS609)。続いて、ネットワークプリントサーバ1500は、後続のプログラム命令の有無を確認し(ステップS610)、次の命令が存在する場合には再度S601に戻ってステップS602以降の処理を繰り返し、一方、次の命令が存在しない場合には処理を終了する。
なお、ステップS605において、プリンタコントローラ1600からの命令コード送信に対する応答が一定期間内に受信できなかった場合には、ただちに処理を終了する。
また、ステップS602での判断の結果、命令種別がプリンタコントローラ1600に依存する命令でないと判断した場合には、ネットワークプリントサーバ1500は、当該命令に応じた処理を行って(ステップS608)、その処理結果を所定のメモリ空間に格納し(ステップS609)、ステップS610に進む。
以上、説明したように本実施形態によれば、アプリケーションプログラムのライセンスコード(ライセンス情報)から当該アプリケーションプログラムが利用可能なAPIを示す情報を抽出して、利用可能なAPIを判断し、その判断結果に応じてAPIの動作を制御する。これにより、アプリケーションプログラム毎に、利用可能なAPIを任意に設定することができ、APIの使用制限を制御することができる。
また、プリンタ1000の機種に依存するアプリケーションプログラムをネットワークプリントサーバ1500のプログラム/データ記憶部1509でなく、プリンタコントローラ1600の機能依存リソース/プログラム記憶部1610に保持することで、ユーザが他の機種でのみ動作するアプリケーションプログラムを誤って起動させてしまうことを防止することができる。
また、ネットワークプリントサーバ1500及びプリンタコントローラ1600のそれぞれのライセンス記憶部1511、1612に記憶されているアプリケーションプログラムのライセンスコードが一致した場合のみ、当該アプリケーションプログラムを起動させることで、適切なアプリケーションプログラムのみを確実に起動することができる。
また、アプリケーションプログラム及びリースデータの種類等によって機種依存部と機種非依存部(共通部)とに分けて分散搭載、すなわち、ネットワークプリントサーバ1500内のプログラム/データ記憶部1509にプリンタ1000の機種に依存しないアプリケーションプログラム及びリースデータを記憶するとともに、プリンタコントローラ1600内の機種依存リース/プログラム記憶部1610にプリンタ1000の機種に依存するアプリケーションプログラム及びリースデータを記憶することで、ネットワークプリントサーバ1500に要求される記憶容量を削減することができるとともに、ネットワークプリントサーバ1500及びプリンタコントローラ1600がそれぞれ備える記憶領域を効率的に利用することができる。
また、アプリケーションプログラムを実行する際には、プログラム内の一命令毎にその命令種別に応じて、ネットワークプリントサーバ1500及びプリンタコントローラ1600に実際の命令処理を分散することで、命令処理の効率化を図ることができる。
なお、上述した本実施形態においては、図8及び図11に示したようにアプリケーションプログラムの格納先をネットワークプリントサーバ1500が判定するとき、得られた格納先情報の文字列に“/dev/”が存在するか否かに応じてアプリケーションプログラムの格納先を特定している。しかしながら、このようにするとURL自身が格納先情報を文字列として記す結果となるため、アプリケーションプログラムの格納先を内部情報として隠蔽化したい場合には適当ではない。
そこで、この対処手段として、予めアプリケーションプログラムの名称毎に格納先を識別できるテーブルを保持し、このテーブル情報に基づいて格納先を特定するという手法が挙げられる。この手法によれば格納先を示す文字列を含む必要がなくなり、格納先情報を隠蔽化することが可能である。
また、上述した実施形態では、アプリケーションプログラムのライセンスコードに利用可能なAPIを示す情報として動作させるAPIを示すようにしているが、停止させるAPIを示すようにしても良い。また、上述した本実施形態では、プリンタ1000を一例として説明したが、本発明はこれに限定されず、例えばマルチファンクション装置等を含む任意の画像形成装置に適用することが可能である。
(本発明の他の実施形態)
上述した実施形態の機能を実現するべく各種のデバイスを動作させるように、該各種デバイスと接続された装置あるいはシステム内のコンピュータに対し、上記実施形態の機能を実現するためのソフトウェアのプログラムコードを供給し、そのシステムあるいは装置のコンピュータ(CPUあるいはMPU)に格納されたプログラムに従って上記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
また、この場合、上記ソフトウェアのプログラムコード自体が上述した実施形態の機能を実現することになり、そのプログラムコード自体は本発明を構成する。また、そのプログラムコードをコンピュータに供給するための手段、例えばかかるプログラムコードを格納した記録媒体は本発明を構成する。かかるプログラムコードを記憶する記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
また、コンピュータが供給されたプログラムコードを実行することにより、上述の実施形態の機能が実現されるだけでなく、そのプログラムコードがコンピュータにおいて稼働しているOS(オペレーティングシステム)あるいは他のアプリケーションソフト等と共同して上述の実施形態の機能が実現される場合にもかかるプログラムコードは本発明の実施形態に含まれることは言うまでもない。
さらに、供給されたプログラムコードがコンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって上述した実施形態の機能が実現される場合にも本発明に含まれることは言うまでもない。
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
本発明の一実施形態におけるプリンタのハードウェア構成例を示すブロック図である。 本発明の実施形態におけるプリンタのソフトウェア構成例を示すブロック図である。 ネットワークプリントサーバで動作するアプリケーションプログラムの記述例を示す図である。 本実施形態におけるネットワークプリントサーバ上で動作するアプリケーションプログラムのインストーラの処理方法を示すフローチャートである。 アプリケーションインストーラ画面の一例を示す図である。 プリンタコントローラから返信される処理結果の書式の一例を示す図である。 本実施形態におけるアプリケーションプログラムのインストール手順を示す図である。 本実施形態におけるネットワークプリントサーバ上で動作するアプリケーションプログラムの起動処理方法を示すフローチャートである。 ライセンスコードの一例を示す図である。 アプリケーションプログラムのライセンスコードから利用可能なAPIを示す情報を抽出して判定する処理動作を示すフローチャートである。 本実施形態におけるネットワークプリントサーバ上で動作するアプリケーションプログラムの起動処理方法の他の例を示すフローチャートである。 本実施形態におけるネットワークプリントサーバ上で動作するアプリケーションプログラムの命令の処理方法を示すフローチャートである。 プリンタコントローラに対する命令書式の一例を示す図である。
符号の説明
17 拡張インタフェース
1500 ネットワークプリントサーバ
1501 オペレーティングシステム
1502 アプリケーションプログラムインタフェース
1509 プログラム/データ記憶部
1511 ライセンス記憶部
1600 プリンタコントローラ
1601 オペレーティングシステム
1602 拡張インタフェース制御部
1610 機種依存リソース/プログラム記憶部
1612 ライセンス記憶部

Claims (11)

  1. 画像形成装置に装着可能であり、アプリケーションプログラムを実行可能なネットワークインターフェース装置であって、
    アプリケーションプログラムに対して上記画像形成装置に係る制御機能を提供するアプリケーションプログラムインタフェースと、
    起動を指示されたアプリケーションプログラムに関連付けられたライセンス情報に基づいて、上記アプリケーションプログラムが適正なアプリケーションプログラムであるか否かを判断する第1の判断手段と、
    上記第1の判断手段によって適正であると判断されたアプリケーションプログラムを起動する起動手段と、
    上記起動手段によって起動された上記アプリケーションプログラムが上記アプリケーションプログラムインタフェース呼び出し可能であるかを、上記アプリケーションプログラムに関連付けられたライセンス情報に基づいて判断する第2の判断手段と、
    上記第2の判断手段による判断結果に応じて、上記アプリケーションプログラムインタフェースの動作を制御する動作制御手段とを備えることを特徴とするネットワークインターフェース装置。
  2. 上記起動手段によって起動されたアプリケーションプログラムに関連付けられたライセンス情報から呼び出し可能なアプリケーションプログラムインタフェースを示す情報を抽出する情報抽出手段をさらに備え、
    上記第2の判断手段は、上記起動手段によって起動されたアプリケーションプログラムによって呼び出されるアプリケーションプログラムインタフェースが上記情報抽出手段で抽出した情報にて指定されているアプリケーションプログラムインタフェースであるかを判断することを特徴とする請求項1記載のネットワークインターフェース装置。
  3. 上記動作制御手段は、上記ネットワークインターフェース装置が具備しているアプリケーションプログラムインタフェースのうち、上記情報抽出手段で抽出した情報にて指定されていないアプリケーションプログラムインタフェースの動作を停止させることを特徴とする請求項2記載のネットワークインターフェース装置。
  4. 上記動作制御手段は、上記ネットワークインターフェース装置が具備しているアプリケーションプログラムインタフェースのうち、上記情報抽出手段で抽出した情報にて指定されているアプリケーションプログラムインタフェースの動作を許可することを特徴とする請求項2記載のネットワークインターフェース装置。
  5. プリケーションプログラムに関連付けられたライセンス情報を格納する第1の記憶手段と、
    上記第1の記憶手段に格納されたライセンス情報と、上記ネットワークインターフェース装置が装着された画像形成装置が有する第2の記憶手段に格納された当該アプリケーションプログラムに関連付けられたライセンス情報とを比較し、上記2つのライセンス情報が一致している場合には、上記第1の判断手段は上記アプリケーションプログラムが適正なアプリケーションプログラムであると判断することを特徴とする請求項1〜4の何れか1項に記載のネットワークインターフェース装置。
  6. アプリケーションプログラムをネットワークを介して受信するアプリケーション受信手段と、
    上記アプリケーション受信手段により受信されるアプリケーションプログラムに関連付けられたライセンス情報を受信するライセンス情報受信手段とを備えることを特徴とする請求項1〜5の何れか1項に記載のネットワークインターフェース装置。
  7. 画像形成装置と、当該画像形成装置に装着可能であるとともにアプリケーションプログラムを実行可能なネットワークインターフェース装置とを有する画像形成システムであって、
    入力データに基づいて画像情報を生成し出力する画像形成手段と、
    アプリケーションプログラムに対して上記画像形成手段に係る制御機能を提供するアプリケーションプログラムインタフェースと、
    起動を指示されたアプリケーションプログラムに関連付けられたライセンス情報に基づいて、上記アプリケーションプログラムが適正なアプリケーションプログラムであるか否かを判断する第1の判断手段と、
    上記第1の判断手段によって適正であると判断されたアプリケーションプログラムを起動する起動手段と、
    上記起動手段によって起動された上記アプリケーションプログラムが上記アプリケーションプログラムインタフェース呼び出し可能であるかを、上記アプリケーションプログラムに関連付けられたライセンス情報に基づいて判断する第2の判断手段と、
    上記第2の判断手段による判断結果に応じて、上記アプリケーションプログラムインタフェースの動作を制御する動作制御手段とを備えることを特徴とする画像形成システム。
  8. 画像形成装置と、当該画像形成装置に装着可能であるとともに当該画像形成装置と別個のCPUを有するネットワークインターフェース装置とを有する画像形成システムであって、
    上記画像形成装置との入出力制御機能を提供するアプリケーションプログラムインタフェースと、
    外部から供給されるアプリケーションプログラムを上記画像形成装置又は上記ネットワークインターフェース装置に格納するとともに、上記アプリケーションプログラムに関連付けられたライセンス情報を上記画像形成装置及び上記ネットワークインターフェース装置の双方に格納する格納手段と、
    上記アプリケーションプログラムの起動が指示された場合に、上記画像形成装置に格納されたライセンス情報と上記ネットワークインターフェース装置に格納されたライセンス情報とに基づいて、上記アプリケーションプログラムが適正なアプリケーションプログラムであるか否かを判断する第1の判断手段と、
    上記第1の判断手段によって適正であると判断されたアプリケーションプログラムを起動する起動手段と、
    上記起動手段によって起動されたアプリケーションプログラム呼び出し可能なアプリケーションプログラムインタフェースを示す記述を上記起動されたアプリケーションプログラムに関連付けられたライセンス情報から抽出して、上記アプリケーションプログラムインタフェースが上記起動されたアプリケーションプログラムによって呼び出し可能であるかを判断する第2の判断手段と、
    上記第2の判断手段での判断結果に従って、上記アプリケーションプログラムインタフェースの動作を制御する動作制御手段とを備えることを特徴とする画像形成システム。
  9. 画像形成装置に装着可能でありアプリケーションプログラムを実行可能であるとともに、上記アプリケーションプログラムに対して上記画像形成装置に係る制御機能を提供するアプリケーションプログラムインタフェースを備えるネットワークインターフェース装置の制御方法であって、
    起動を指示されたアプリケーションプログラムに関連付けられたライセンス情報に基づいて、上記アプリケーションプログラムが適正なアプリケーションプログラムであるか否かを判断する第1の判断ステップと、
    上記第1の判断ステップにおいて適正であると判断されたアプリケーションプログラムを起動する起動ステップと、
    上記起動ステップにおいて起動された上記アプリケーションプログラムが上記アプリケーションプログラムインタフェース呼び出し可能であるかを、上記アプリケーションプログラムに関連付けられたライセンス情報に基づいて判断する第2の判断ステップと、
    上記第2の判断ステップでの判断結果に応じて、上記アプリケーションプログラムインタフェースの動作を制御する動作制御ステップとを有することを特徴とする制御方法。
  10. 画像形成装置に装着可能でありアプリケーションプログラムを実行可能であるとともに、上記アプリケーションプログラムに対して上記画像形成装置に係る制御機能を提供するアプリケーションプログラムインタフェースを備えるネットワークインターフェース装置のコンピュータに実行させるプログラムであって、
    起動を指示されたアプリケーションプログラムに関連付けられたライセンス情報に基づいて、上記アプリケーションプログラムが適正なアプリケーションプログラムであるか否かを判断する第1の判断ステップと、
    上記第1の判断ステップにおいて適正であると判断されたアプリケーションプログラムを起動する起動ステップと、
    上記起動ステップにおいて起動された上記アプリケーションプログラムが上記アプリケーションプログラムインタフェース呼び出し可能であるかを、上記アプリケーションプログラムに関連付けられたライセンス情報に基づいて判断する第2の判断ステップと、
    上記第2の判断ステップによる判断結果に応じて、上記アプリケーションプログラムインタフェースの動作を制御する動作制御ステップとをコンピュータに実行させるプログラム。
  11. 請求項10記載のプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
JP2004071170A 2004-03-12 2004-03-12 ネットワークインターフェース装置及びその制御方法、及び画像形成システム Expired - Fee Related JP4994575B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2004071170A JP4994575B2 (ja) 2004-03-12 2004-03-12 ネットワークインターフェース装置及びその制御方法、及び画像形成システム
PCT/JP2005/004406 WO2005088422A1 (en) 2004-03-12 2005-03-08 Information processor, method for controlling the same, and image forming system
US11/462,080 US8121954B2 (en) 2004-03-12 2005-03-08 Information processor, method for controlling the same, and image forming system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004071170A JP4994575B2 (ja) 2004-03-12 2004-03-12 ネットワークインターフェース装置及びその制御方法、及び画像形成システム

Publications (3)

Publication Number Publication Date
JP2005258924A JP2005258924A (ja) 2005-09-22
JP2005258924A5 JP2005258924A5 (ja) 2007-01-25
JP4994575B2 true JP4994575B2 (ja) 2012-08-08

Family

ID=34975755

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004071170A Expired - Fee Related JP4994575B2 (ja) 2004-03-12 2004-03-12 ネットワークインターフェース装置及びその制御方法、及び画像形成システム

Country Status (3)

Country Link
US (1) US8121954B2 (ja)
JP (1) JP4994575B2 (ja)
WO (1) WO2005088422A1 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4787594B2 (ja) * 2005-10-27 2011-10-05 株式会社リコー 装置、セキュリティ管理方法、セキュリティ管理プログラム及び記録媒体
JP4226618B2 (ja) * 2006-07-25 2009-02-18 シャープ株式会社 制御装置、複合機、複合機制御システム、制御プログラム、およびコンピュータ読み取り可能な記録媒体
JP4274227B2 (ja) 2006-10-26 2009-06-03 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置及びプログラム
JP2009070247A (ja) * 2007-09-14 2009-04-02 Ricoh Co Ltd 情報処理装置、情報処理方法および画像処理装置
JP5195200B2 (ja) * 2008-09-12 2013-05-08 株式会社リコー 情報処理装置、アプリケーション実行方法、及びプログラム
US9247007B2 (en) * 2009-04-23 2016-01-26 Disney Enterprises, Inc. System and method for providing a peripheral control interface for extending media device functions
JP5639412B2 (ja) * 2010-08-19 2014-12-10 株式会社沖データ 画像形成装置及び当該画像形成装置用の管理装置
JP5287930B2 (ja) * 2011-06-01 2013-09-11 株式会社リコー 装置、セキュリティ管理方法、セキュリティ管理プログラム及び記録媒体
US20150235039A1 (en) * 2013-08-22 2015-08-20 Rakuten, Inc. Information processing device, information processing method, program and storage medium
JP5485484B1 (ja) * 2013-08-22 2014-05-07 楽天株式会社 情報処理装置、情報処理方法、プログラム、記憶媒体
JP6232972B2 (ja) * 2013-11-25 2017-11-22 凸版印刷株式会社 可搬型電子媒体、及び入出力機能制御方法
JP2020204950A (ja) * 2019-06-18 2020-12-24 コニカミノルタ株式会社 情報処理システム、情報処理システムの制御方法、装置、及び制御プログラム
JP7234849B2 (ja) * 2019-08-05 2023-03-08 富士通株式会社 情報処理装置、アクセス制御システム及びアクセス制御プログラム
JP7388222B2 (ja) 2020-02-10 2023-11-29 株式会社リコー 情報処理システム、システム、利用制限方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08328880A (ja) * 1995-05-31 1996-12-13 Mitsubishi Electric Corp 複数のアプリケーションプログラムを同時に実行できるオペレーティングシステムにおける計算機運転管理システム
TW313642B (en) 1996-06-11 1997-08-21 Ibm A uniform mechanism for using signed content
US6742120B1 (en) * 1998-02-03 2004-05-25 Mondex International Limited System and method for controlling access to computer code in an IC card
JP2000298561A (ja) 1999-04-14 2000-10-24 Canon Inc 画像形成システム、制御方法、及び記憶媒体
US6772340B1 (en) * 2000-01-14 2004-08-03 Microsoft Corporation Digital rights management system operating on computing device and having black box tied to computing device
JP4548758B2 (ja) * 2000-09-05 2010-09-22 大日本印刷株式会社 共有アクセス管理機能を備えた携帯可能な情報処理装置
JP2005301321A (ja) * 2001-11-08 2005-10-27 Ntt Docomo Inc 情報配信装置、情報処理端末、コンテンツの外部保存方法、コンテンツの外部出力方法、出力許可レベルの記述されたコンテンツおよびコンテンツの出力制御プログラム
AU2003220927A1 (en) * 2002-04-03 2003-10-13 Ntt Docomo, Inc. Distribution method, distribution system, and terminal device
US7680743B2 (en) * 2002-05-15 2010-03-16 Microsoft Corporation Software application protection by way of a digital rights management (DRM) system
JP2003330564A (ja) 2002-05-17 2003-11-21 Canon Inc 機器内機能使用制限方式
US8103592B2 (en) * 2003-10-08 2012-01-24 Microsoft Corporation First computer process and second computer process proxy-executing code on behalf of first process

Also Published As

Publication number Publication date
US20060287962A1 (en) 2006-12-21
US8121954B2 (en) 2012-02-21
JP2005258924A (ja) 2005-09-22
WO2005088422A1 (en) 2005-09-22

Similar Documents

Publication Publication Date Title
US8121954B2 (en) Information processor, method for controlling the same, and image forming system
JP5857611B2 (ja) 情報処理装置、システム、プログラム
KR101337160B1 (ko) 정보 처리 장치, 정보 처리 방법 및 기억 매체
JP2004326603A (ja) 印刷制御システム、印刷制御装置、機能提供装置、印刷機能表示方法、コンピュータプログラム、及びコンピュータ読み取り可能な記録媒体
JP2003131839A (ja) ネットワークシステム、情報処理装置、情報処理方法、及び、制御プログラム
JP5321929B2 (ja) ユニバーサルデバイスドライバ、デバイス制御プログラム、情報処理装置、サーバ装置、及び、方法
JP2012216166A (ja) 情報処理装置、その方法、及びプログラム
JP2004127280A (ja) 画像形成装置およびアプリ起動制御方法
JP2008097574A (ja) 情報処理装置、プログラム及びその記録媒体
JP4921151B2 (ja) データ処理装置、印刷装置、印刷処理方法、記憶媒体、プログラム
US8749815B2 (en) Job processing method, image processing system and image processing apparatus
JP2021096869A (ja) 情報処理装置及びプログラム及び方法
JP2001236298A (ja) データ処理装置,印刷システム及びそれらのドライバソフト設定制御方法
JP2008158647A (ja) データ処理装置、データ処理システム、データ処理方法、記憶媒体、プログラム
JP4996272B2 (ja) 情報処理装置及びその制御方法及び該方法を実行するプログラム
JP2006350443A (ja) 印刷システムおよび印刷制御方法およびプログラム
JP2006338268A (ja) データ処理装置、ネットワークインターフェース基板及びアプリケーションプログラム登録方法
JP2005038011A (ja) ネットワーク装置及びその制御方法
JP4560313B2 (ja) 情報処理装置、画像形成システム、及び情報処理装置の制御方法
WO2020090444A1 (ja) 制御方法及び情報処理装置
JP4387710B2 (ja) ネットワーク装置及びその制御方法
KR101405920B1 (ko) 잡 컨트롤 장치 및 복합장치 그리고 그들의 동작 방법
JP4498460B2 (ja) ネットワーク装置及びその制御方法
JP4262007B2 (ja) ネットワーク装置及びデータ処理システムの制御方法
JP2023153904A (ja) 情報処理装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061204

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061204

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100223

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100426

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100518

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120227

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: 20120509

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

Free format text: PAYMENT UNTIL: 20150518

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4994575

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

Free format text: PAYMENT UNTIL: 20150518

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees