情報処理装置、ネットワーク設定方法、及びプログラム
【課題】 印刷のタイミングで印刷を行うプリンタ名にのみ出力ポートの設定を自動化的に行える。
【解決手段】 アプリケーションから印刷ウインドウを表示して(S701)、プリンタ名をユーザが選択する。プリンタ名が選択されたら、OSがプリンタドライバをロードして、プリンタドライバに印刷処理を実行させる(S703)。そして、プリンタドライバは、初期化処理において、出力ポートの変更処理を適宜行い、印刷情報を画像形成装置に出力する(S705)。
【解決手段】 アプリケーションから印刷ウインドウを表示して(S701)、プリンタ名をユーザが選択する。プリンタ名が選択されたら、OSがプリンタドライバをロードして、プリンタドライバに印刷処理を実行させる(S703)。そして、プリンタドライバは、初期化処理において、出力ポートの変更処理を適宜行い、印刷情報を画像形成装置に出力する(S705)。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像形成装置に対するネットワーク設定を行う情報処理装置に関するものである。
【背景技術】
【0002】
近年、ノートPC、SM(Super mobile)PCのように、ユーザが持ち運び可能な情報処理装置を利用したシステムが構築されて、各ユーザは、ネットワーク上からプリンタを選択して必要なデータを印刷することが可能に構成されている。このようなシステム環境の場合、ユーザは、それぞれPCを携帯して、居室を移動しながら、移送先のネットワークに接続する場合がある。例えば通常のワークを行うネットワーク環境から、会議室等のネットワーク環境へPCを携帯して移動し、移動先のネットワークに接続して、必要ならば当該移動先のネットワーク上のプリンタを選択して、印刷処理を行う場合がある。このように、ユーザは、複数のネットワークに接続してPCやプリンタを利用することが多く、印刷を行う際には、各ネットワークに接続されているプリンタを使用するの通例である。
【0003】
この場合において、ユーザが自身の希望通りのプリンタに印刷を行うためには、ユーザが携帯するPCに印刷するプリンタに合ったプリンタドライバがインストールされていること、プリンタオブジェクトが正しく設定されていることが必要となる。ここで、プリンタオブジェクトの設定とは、出力プリンタに対応した出力ポート設定(IPアドレス等)のことを指す。
ユーザが携帯するPCにプリンタドライバがインストールされていない状態や、プリンタオブジェクトの設定が正しく行われていない状態であると、ユーザは移動先に近接するプリンタから必要な情報を印刷することができない。
そのため、接続ネットワークの変更を検知すると、自動でプリンタドライバのインストールやプリンタオブジェクトの設定を行う方法が提案されている(特許文献1参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2006−185251号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来技術によると、ユーザが移動した先でPCをネットワーク接続した後、ネットワーク環境が変更されたことを認識した時点で、接続したネットワークに適したプリンタドライバのインストールやプリンタオブジェクトの設定変更を行う。そのため、ユーザが移動先のネットワーク上に携帯したPCを接続しても、実際には印刷を実行しない場合でも、プリンタオブジェクトの設定変更が行われてしまうという問題点があった。
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、印刷のタイミングで印刷を行うプリンタ名にのみ出力ポートの設定を自動化的に行える仕組みを提供することである。
【課題を解決するための手段】
【0006】
上記目的を達成する本発明の情報処理装置は以下に示す構成を備える。
プリンタドライバを用いてネットワークに接続されている画像形成装置に印刷情報を出力する情報処理装置であって、印刷が指示された後に、接続されるネットワークからネットワーク情報を取得する取得手段と、前記取得手段が取得したネットワーク情報と、プリンタドライバに設定された出力ポート情報とをプリンタ名に対応付けたプリンタ情報として保持する保持手段と、前記取得手段が取得したネットワーク情報がユーザにより選択されるプリンタ名に対応付けられた前記プリンタ情報として前記保持手段に保持されているかどうかを判断する判断手段と、前記ネットワーク情報が前記保持手段に保持されていると前記判断手段が判断した場合、前記プリンタドライバに設定されている出力ポート情報を前記プリンタ情報から取得される出力ポート情報に変更する変更手段とを備えることを特徴とする。
【発明の効果】
【0007】
本発明によれば、PCを携帯してネットワーク間を移動して、それぞれのネットワークに接続しても、ユーザが選択するプリンタ名に対応した出力ポート設定を自動的に行うことができる。
【図面の簡単な説明】
【0008】
【図1】印刷処理システムの構成を示すブロック図である。
【図2】印刷システムのハードウエア構成を説明するブロック図である。
【図3】コンピュータのソフトウエア構成を説明するブロック図である。
【図4】プリンタドライバ203の構成を説明するブロック図である。
【図5】表示部に表示するUIの一例を示す図である。
【図6】出力ポート自動設定部502の構成を示すブロック図である。
【図7】情報処理装置のデータ処理手順を示すフローチャートである。
【図8】情報処理装置のデータ処理手順を示すフローチャートである。
【図9】プリンタ情報のデータ構造を説明する図である。
【図10】プリンタドライバの構成を説明するブロック図である。
【図11】情報処理装置のデータ処理手順を示すフローチャートである。
【図12】情報処理装置のデータ処理手順を示すフローチャートである。
【発明を実施するための形態】
【0009】
次に本発明を実施するための最良の形態について図面を参照して説明する。
<システム構成の説明>
〔第1実施形態〕
図1は、本実施形態に係る情報処理装置を含む印刷処理システムの構成を示すブロック図である。本実施形態では、画像形成装置の一例とし、プリンタが複数それぞれ独立したネットワークに接続された印刷システムの例を示すが、プリンタに代えて、複合機能処理を行うMFP(Multi Function Peripheral)が複数接続された構成であってもよい。
なお、図1の(a)は、情報処理装置であるPC100が第1のネットワーク105に、図1の(b)は、同じく情報処理装置であるコンピュータが第2のネットワーク110に、それぞれ接続された状態を示している。
【0010】
つまり、ユーザは、PC100を移動して、異なるネットワークに接続して、各ネットワーク上のプリンタを選択して印刷ジョブを出力可能に構成されている。ところで、コンピュータ(以下、PCと記す)100は、携帯可能なノートPC、小型のSMPCで構成されている場合を示すが、デスクトップ型のコンピュータで構成されても本発明を適用可能である。
図1において、100はPCである。PC100は、イーサネット(登録商標)等のネットワークケーブルによって後述する第1のネットワーク105及び第2のネットワーク110に接続され、後述するプリンタ101〜104,106〜109と通信可能である。
【0011】
なお、PC100は、インストールされたアプリケーションプログラム等の各種プログラムを実行することが可能であり、印刷データをプリンタに対応するプリンタ言語に変換する機能を有するプリンタドライバを搭載している。また、プリンタドライバは、後述するプリンタ情報を記憶する領域を備え、印刷実行時に作成されたプリンタオブジェクト名毎のプリンタ情報を記憶して管理する機能を備えている。
【0012】
また、本実施形態において、PC100は、複数のプリンタドライバをサポートするものとする。つまり、ネットワークに接続されたプリンタのプリンタドライバをインストールして、ユーザが使用するプリンタでアプリケーションから印刷を行う場合に、ユーザが選択したプリンタから印刷を実行可能に構成されている。より具体的には、PC100には、各プリンタ101〜104,106〜109のプリンタ名に対応づけられたプリンタドライバをインストール可能に構成され、ユーザが必要に応じて選択したプリンタ名のプリンタドライバがインストールされる。
また、第1のネットワーク105と第2のネットワーク110に接続されるプリンタのうち、プリンタ名が同一となるプリンタが接続される場合と、ドライバは同じでもプリンタ名が異なる仮想プリンタとしてインストールされる場合もある。ここで、プリンタ名が異なるとは、同一の物理プリンタでありながら、印刷設定が異なる仮想プリンタとして登録することが可能であるからである。つまり、ユーザは、同一の物理プリンタでありながら、機能の設定が異なる仮想プリンタを任意数登録して、機能に応じて仮想プリンタを使い分けることが可能であるからである。
また、プリンタ101〜104及びプリンタ106〜109は、図示しないネットワークインタフェースを介して後述する第1のネットワーク105及び第2のネットワーク110とのいずれかに接続される。
【0013】
プリンタ101〜104,106〜109は、PC100から送信されて来る印刷データを含む印刷ジョブを解析し、1ページずつドットイメージデータに変換して印刷する。
したがって、本実施形態において、各プリンタ101〜104,106〜109の機能は、互いに相違するものであっても良い。つまり、プリント機能がそれぞれ異なり、オプション装置等を接続することで、印刷設定が異なる場合がある。
また、プリンタ機能に加えて、他の機能が拡張された、例えばMFP(Multi Function Peripheral)も本発明の情報処理装置の出力装置として機能させることが可能である。
第1のネットワーク105には、PC100及びプリンタ101〜104が接続されている。また、ユーザが、例えば会議等でPC100を携帯して移動することで、PC100を第2のネットワーク110に接続して、第2のネットワーク110に接続されたプリンタ106〜109を選択可能に構成されている。
【0014】
なお、本実施形態に示すネットワーク接続変更に伴うプリンタの設定処理については、詳述する。
また、図1の(a)に示す第1のネットワーク105及び図1の(b)に示す第2のネットワーク110は、ネットワークアドレス及びサブネットマスクが互いに異なる。つまり、本実施形態では、第1のネットワーク105と第2のネットワーク110は、物理的に接続されていないシステム環境を想定している。
図2は、本実施形態を示す印刷システムのハードウエア構成を説明するブロック図である。なお、本発明の機能が実行されるのであれば、単体の機器であっても、複数の機器からなるシステムであっても、LAN、WAN等のネットワークを介して接続が為され処理が行われるシステムであってもよい。
図1に示すホストコンピュータ3000において、CPU1はROM3のプログラム用ROMあるいは外部メモリ11に記憶された文書処理プログラム等に基づいて図形、イメージ、文字、表(表計算等を含む)等が混在した文書処理を実行する。
CPU1は、システムバス4に接続される各デバイスを総括的に制御する。また、ROM3のプログラム用ROMあるいは外部メモリ11には、CPU1の制御プログラムであるオペレーティングシステムプログラム(以下OS)や後述するプリンタドライバ等が記憶される。
そのため、ROM3のフォント用ROMあるいは外部メモリ11には上記文書処理の際に使用するフォントデータ等が記憶され、ROM3のデータ用ROMあるいは外部メモリ11には上記文書処理等を行う際に使用する各種データが記憶される。
【0015】
RAM2は、CPU1の主メモリ、ワークエリア等として機能する。キーボードコントローラ(KBC)5は、キーボード9や不図示のポインティングデバイスからのキー入力を制御する。ここで、キーボード9やポインティングデバイスの操作に後述するユーザインタフェースに設定がなされる。
表示コントローラ6は、表示部10の表示を制御する。ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、プリンタドライバ)等を記憶するハードディスク(HD)がある。
ディスクコントローラ(DKC)7は、前述のハードディスク(HD)、フロッピー(登録商標)ディスク(FD)等の外部メモリ11とのアクセスを制御する。プリンタコントローラ(PRTC)8は、ネットワーク21を介してプリンタ101〜104(106〜109)に接続されて、各プリンタとの通信制御処理を実行する。
なお、CPU1は、例えばRAM2上に設定された表示情報RAMへのアウトラインフォントの展開(ラスタライズ)処理を実行し、印刷される画像と同一の画像を表示部10上に表示するWYSIWYGを可能としている。
【0016】
また、CPU1は、表示部10上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。
ユーザは印刷を実行する際、印刷の設定に関するウインドウを開き、プリンタの設定や、印刷モードの選択を含むプリンタドライバに対するネットワーク設定を行える。
図1に示すプリンタ101〜104(106〜109)において、プリンタCPU12は、制御プログラムに基づいてシステムバス15に接続される印刷部(プリンタエンジン)17に出力情報としての画像信号を出力する。ここで、制御プログラムは、外部メモリ14又はROM13のプログラム用ROMに記憶されている。
また、このROM13のプログラムROMには、CPU12の制御プログラム等が記憶される。ROM13のフォント用ROMには上記出力情報を生成する際に使用するフォントデータ等が記憶されている。また、ROM13のデータ用ROMには、ハードディスク等の外部メモリ14がないプリンタの場合には、ホストコンピュータ上で利用される情報等が記憶されている。
【0017】
CPU12は、入力部18を介してホストコンピュータ100との通信処理が可能となっており、プリンタ内の情報等をホストコンピュータ3000に通知できる。RAM19は、CPU12の主メモリや、ワークエリア等として機能するRAMで、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。
なお、RAM19は、出力情報展開領域、環境データ格納領域、NVRAM等に用いられる。また、前述したハードディスク(HD)、ICカード等の外部メモリ14は、メモリコントローラ(MC)20によりアクセスを制御される。
さらに、外部メモリ14は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。また、21は操作部で、操作のためのスイッチおよびLED表示器等が配されている。
また、前述した外部メモリ14は1個に限らず、複数個備えられ、内蔵フォントに加えてオプションカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていてもよい。更に、図示しないNVRAMを有し、操作部21からのプリンタモード設定情報を記憶するようにしてもよい。
【0018】
図3は、図1に示したPC100のソフトウエア構成を説明するブロック図である。なお、PC100は、第1のネットワーク105又第2のネットワーク110とは排他的に接続され、PC100と第1のネットワーク105又第2のネットワーク110とは同時に接続されることはない。
なお、図3に示す第2のネットワーク110を破線で示すのは、PC100が第2のネットワーク110に現在接続されていない状態を示し、PC100が実線で示す第1のネットワーク105に接続されていることを示す。
図3において、PC100は、外部メモリ11に記憶されたアプリケーション201、グラフィックエンジン202、プリンタドライバ203はRAM2にロードされて、CPU1により実行される。システムスプーラ204は、外部メモリ11に保存されたファイルとして存在する。
また、アプリケーション201およびプリンタドライバ203は、外部メモリ11のFDや不図示のCD−ROM、あるいは不図示のネットワークを経由して外部メモリ11のHDに追加することが可能となっている。
しかし、このアプリケーション201からプリンタ101〜104又はプリンタ106〜109に対して印刷を行う際には、同様にRAM2にロードされ実行可能となっているグラフィックエンジン202を利用して出力(描画)を行う。
【0019】
グラフィックエンジン202は、プリンタドライバ203を同様に外部メモリ11からRAM2にロードし、アプリケーション201の出力はプリンタドライバ203を用いてプリンタの制御コマンドに変換する。なお、プリンタドライバは、プリンタ101〜104又はプリンタ106〜109ごとに用意されている。
そして、プリンタドライバ203は、変換したプリンタ制御コマンドをOSによってRAM2にロードされたシステムスプーラ204を経てプリンタ101〜104又はプリンタ106〜109へ出力される仕組みとなっている。なお、変換したプリンタ制御コマンドは、第1のネットワーク105又は第2のネットワーク110経由でプリンタに出力される。
本実施形態の印刷システムは、図3で示すプリンタ101〜104又はプリンタ106〜109とPC100からなる印刷システムに加えて、アプリケーションからの印刷データを一旦中間コードデータでスプールする構成を有する。
以下、本実施形態に示す印刷システムにおいて、接続するネットワークが第1のネットワーク105から第2のネットワーク110に変更された場合の印刷処理を説明する。具体的には、アプリケーションなどから印刷を実行した際に、プリンタドライバの印刷設定画面上からユーザが選択したプリンタオブジェクト名(プリンタ名)の出力ポートを自動的に設定するネットワーク設定方法を説明する。
【0020】
図4は、図3に示したプリンタドライバ203の構成を説明するブロック図である。
【0021】
図4において、印刷処理部501は、印刷処理を受け取ると印刷を実行する。また、印刷処理部501は、印刷処理を実行する前には初期化処理を実行する。出力ポート自動設定部502は、印刷処理部501の初期化処理で実行される。そのため、アプリケーションから印刷が実行されると、印刷処理部501が開始される前に、必ず出力ポート自動設定部502が実行される。UI部503は、UI処理を制御する部分であり、プリンタドライバの設定などを行う。
【0022】
図5は、図2に示したPC100の表示部10に表示されるユーザインタフェースの一例を示す図である。本画面は、アプリケーションが印刷時に表示する印刷設定・実行画面に対応する。
図5において、1201はアプリケーションの印刷実行ウインドウで、印刷命令を受信すると、印刷処理部501が実行され、プリンタドライバとして印刷処理が開始される。また、本実施形態では印刷実行ウインドウ1201から印刷命令が送信されているが、その他のアプリケーションやプログラムなどから印刷処理を受信した場合も同様の動作となる。
1202はリストで、印刷を実行するプリンタ名を選択する。ここで、プリンタ名とは、プリンタオブジェクト名に対応し、ユーザが登録したプリンタ名の中から選択される。ここでは、第1のネットワーク105で、ユーザがプリンタ名としてプリンタ1を選択した状態に対応する。ここで、プリンタ名がプリンタ1とは、第1のネットワーク105に接続されたプリンタ101に対応するものとする。また、ユーザが第2のネットワーク110において、プリンタ名として、プリンタ101を選択した場合には、第2のネットワーク110に接続されたプリンタ106に対応するものとする。
ただし、後述するように、ユーザが第1のネットワーク105でプリンタ101を登録した後、移動して、第2のネットワーク110でプリンタ101を選択した場合には、該当するものが選択できない。そこで、印刷時に、プリンタ名に対応づけて、例えばプリンタ106〜109が当該プリンタドライバに対応している場合に、ユーザが選択したプリンタ106をプリンタ名がプリンタ101として登録される。この場合に、取得する第2のネットワーク110のネットワーク情報と、出力ポート情報とがプリンタ1に対応づけて登録されるものとする。
1203はプロパティボタンで、プリンタドライバの詳細設定を行う際に、ユーザにより選択される。1204はOKボタンで、当該OKボタン1204が押下されると、印刷処理が開始され、プリンタドライバ203に印刷命令が送信される。
1205はキャンセルボタンで、当該キャンセルボタン1205が押下すると、印刷実行ウインドウ1201が閉じられ、印刷処理がキャンセルされる。
【0023】
図6は、図4に示した出力ポート自動設定部502の構成を示すブロック図である。
図6において、出力ポート自動設定部502は、全体制御部601、ネットワーク情報取得部602、プリンタ情報データベース検索部603、プリンタ情報データベース保存部604、出力ポート設定部605、プリンタ情報データベース606を有している。
全体制御部601は、出力ポート自動設定部502全体の制御を司る。ネットワーク情報取得部602は、全体制御部601からの指示によりPC100のネットワーク情報(IPアドレス、サブネットマスク等)を検出し、PC100が接続されているネットワークを識別する。
プリンタ情報データベース検索部603は、全体制御部601からの指示により、ネットワーク情報か出力ポート情報をキーにして、該当するプリンタオブジェクト名称のプリンタ情報データベース606を検索する。ここで、一致した情報があれば全体制御部601に返し、一致した情報がなければ、その旨を全体制御部601に通知する。
プリンタ情報データベース保存部604は、全体制御部601からの指示により、ネットワーク情報と出力ポート情報を対にしたプリンタ情報(図8参照)を作成し、該当するプリンタオブジェクトのプリンタ情報データベース606に保存を行う。
出力ポート設定部605は、全体制御部601からの指示により、指定されたプリンタオブジェクトに対して、出力ポートの設定値を指定された出力ポートに変更する処理を行う。
プリンタ情報データベース606は、プリンタオブジェクト名称毎に作成し、プリンタオブジェクトの名称をキーにして、保存、削除、変更、検索などの処理を行う。ここで、プリンタ情報データベース606は、出力ポート情報とネットワーク情報とをプリンタ名に対応付けられたプリンタ情報として複数保持可能に構成されている。
【0024】
図7は、本実施形態を示す情報処理装置のデータ処理手順の一例を示すフローチャートである。本例は、情報処理装置における印刷処理の流れを説明する手順に対応する。なお、S701〜S705は各ステップを示し、各ステップは、CPU1がROM3,外部メモリ11に記憶されたシステムプログラム、プリンタドライバ、制御プログラムをRAM2にロードして実行することで実現される。
まず、S701で、PC100上のアプリケーションは、印刷時に印刷設定用のウインドウである印刷ウインドウを表示部10に表示する。そして、S702で、アプリケーションがユーザにより印刷ウインドウの印刷ボタンが押下されたことを受信すると、OSに対して印刷処理を開始する。
【0025】
次に、S703で、OSがアプリケーションから印刷処理を受信すると、OSはプリンタドライバをロードして、実行可能状態にした後、プリンタドライバに対して印刷処理を開始する。
次に、S704で、プリンタドライバはOSからロードされた後、プリンタドライバの初期化処理を実行する。初期化処理の中で、後述する出力ポート自動設定処理を実行し、必要があれば、出力ポートを自動設定する。そして、S705で、プリンタドライバは、初期化処理の終了後、OSは描画情報を受け取り、印刷処理を実行し、出力ポートに割り当てられたプリンタに対して出力する印刷情報を制しする印刷処理を開始して、本処理を終了する。
次に、図4に示した出力ポート自動設定部502の動作を図8に基づき説明する。
【0026】
図8は、本実施形態を示す情報処理装置におけるデータ処理手順の一例を示すフローチャートである。本例は、図7に示したS704における出力ポート自動設定部502のデータ処理例である。なお、S801〜S807は各ステップを示し、各ステップは、CPU1がROM3,外部メモリ11に記憶されたシステムプログラム、プリンタドライバをRAM2にロードして実行することで実現される。なお、出力ポート自動設定部502の機能に対応するモジュールは、プリンタドライバ203のプログラムの一部として記録され、プリンタドライバ203がロードされる際に同時にロードされる。また、出力ポート自動設定部502の機能に対応するモジュールは、図6に示した出力ポート自動設定部502の全体制御部601において実行される。
【0027】
まず、S801で、全体制御部601は、ネットワーク情報取得部602に指示し、PC100が接続しているネットワーク情報を取得する。本実施形態では、PC100は、図1に示した第2のネットワーク110又は第1のネットワーク105のいずれかに接続されているものとする。
次に、S802で、全体制御部601は、プリンタ情報データベース検索部603に指示し、S801でプリンタ情報データベース検索部603が取得したネットワーク情報に一致するネットワーク情報を持つプリンタ情報を検索する。ここで、全体制御部601は、プリンタ情報データベース606の中からプリンタ情報を検索する。
この際、プリンタ情報データベース検索部603はプリンタ情報データベース606の中から呼び出し元のプリンタオブジェクト名称に一致するものを検索する。
次に、S803で、全体制御部601は、プリンタ情報データベース検索部603の検索処理によりネットワーク情報取得部602が取得したネットワーク情報に一致するプリンタ情報があるかどうかを判断する。
ここで、一致するプリンタ情報があると全体制御部601が判断した場合は、S804の処理に進む。一方、一致したプリンタ情報がないと全体制御部601が判断した場合は、S807の処理に進む。
【0028】
次に、S804で、全体制御部601は、プリンタ情報データベース検索部603が検索したプリンタ情報から出力ポート情報を取得する。
次に、S805で、全体制御部601は、印刷指示を出しているプリンタオブジェクトに設定されている出力ポートを取得し、プリンタ情報データベース検索部603に指示し、一致する出力ポートがあるかをプリンタ情報データベース606の中を検索する。これは、一致すれば、以前に本処理において設定した出力ポートと判断するためである。逆に一致しなければ、以前に本処理で変更していない出力ポートであるため、出力ポートの変更は行わない。
従って、一致すると全体制御部601が判断した場合は、S806の処理に進み、一致しないと全体制御部601が判断した場合は、S807の処理に進む。
次に、S806で、全体制御部601は、出力ポート設定部605に指示し、印刷指示を出しているプリンタオブジェクトの出力ポートをS804で取得した出力ポートに変更して、本処理を終了する。
【0029】
一方、S807で、全体制御部601は、現在の出力ポートを現在のネットワーク情報に関連付けて、プリンタ情報データベース保存部604に指示して、プリンタ情報データベース606へ保存して、本処理を終了する。
図9は、図6に示したプリンタ情報データベース606に保存するプリンタ情報のデータ構造を説明刷る図である。ここで、図9の(a)は第1のネットワーク105に対応するプリンタ情報800を示し、図9の(b)は第2のネットワーク110に対応するプリンタ情報810に対応する。
なお、プリンタ情報は、プリンタオブジェクト名毎に対応づけて登録される。ここで、プリンタオブジェクト名は、プリンタドライバが提供する印刷開始画面において、ユーザが選択するプリンタ名に対応する。また、当該プリンタ名は、仮想プリンタ名であるので、物理的には1つのプリンタではあるが、印刷設定を変えた複数の論理プリンタとしてユーザが任意のプリンタ名を設定することが可能である。
【0030】
図9において、ネットワーク情報801は、ネットワークを識別するための情報で、図1を例とすると、PC100に割り当てられているIPアドレス、サブネットマスク、ゲートウェイアドレスである。
ネットワーク情報801は、ネットワークを一意に識別できる情報であれば、上記以外の情報であっても良い。出力ポート情報805は、ネットワーク情報801のネットワークで出力に使うプリンタの出力ポート情報である。
この出力ポート情報805は、第1のネットワーク105のプリンタ101〜104のいずれかに対応し、ユーザがすべてのプリンタ101〜104を使用する場合には、4つの出力ポート情報が第1のネットワーク105に対応づけてプリンタ情報データベース606に登録されている。
ただし、ユーザは、プリンタ101〜104を全て選択することは可能であるが、実際には必要なプリンタを選択するので、選択したプリンタに対応するプリンタ名に対応づけてプリンタ情報が登録されるものとする。
また、810はプリンタ情報で、ネットワーク情報811から構成される。ここで、ネットワーク情報811は、第2のネットワーク110のプリンタ106〜109のいずれかに対応し、ユーザがすべてのプリンタ101〜104を使用する場合には、4つの出力ポート情報が第2のネットワーク110に対応づけてプリンタ情報データベース606に登録されている。
また、上記同様にユーザは、プリンタ106〜109を全て選択することは可能であるが、実際には必要なプリンタを選択するので、選択したプリンタに対応するプリンタ名に対応づけてプリンタ情報が登録されるものとする。
【0031】
プリンタ情報データに具体的にどのような値が入るか、図1の環境を例に説明する。
ここでは、PC100を第1のネットワーク105に接続した際は、プリンタ101を選択して印刷し、PC100を第2のネットワーク110に接続した際はプリンタ109で印刷するものと想定する。
この場合において、プリンタ情報データベース606の最初のデータには、ネットワーク情報として第1のネットワーク105を識別するための情報が入る。
具体的には、第1のネットワーク105に接続した際に、PC100に設定されたIPアドレス、サブネットマスク、ゲートウェイアドレスをネットワーク情報にする。また、プリンタ101に出力するための出力ポート名を出力ポート情報とする。
【0032】
プリンタ情報データベース606の次のデータには、ネットワーク情報が第2のネットワーク110を識別するために、第2のネットワーク110に接続した際に、PC100に設定されたIPアドレス、サブネットマスク、ゲートウェイアドレスをネットワーク情報にする。また、プリンタ109に出力するための出力ポート名を出力ポート情報とする。
次に、図1と図9を用いて、具体的に出力ポートを自動的に設定する処理について説明する。
第1のネットワーク105にPC100が接続された場合のIPアドレス802が「192.168.11.50」、サブネットマスク803が「255.255.255.0」、ゲートウェイアドレス804が「192.168.11.2」であるとする。
また、第1のネットワーク105で印刷を行うプリンタ101に対応した出力ポート情報805が「IP_192.168.11.11」であり、プリンタドライバが管理するプリンタ名には当該出力ポートが設定されているとする。
【0033】
ユーザが第1のネットワーク105で初めて印刷する場合、プリンタドライバが管理するプリンタ情報データベース606には該当するプリンタ情報が存在しない。このため、全体制御部601は、図8の(a)に示すようなプリンタ情報800を作成し、プリンタ情報データベース606に登録する。ここでは、最初のネットワーク接続であるので、出力ポートの変更処理は行われない。
次に、ユーザが第1のネットワーク105に接続されていたPC100を外して、ユーザがPC100を携帯して、第2のネットワーク110が敷設されている例えば会議室に移動する。そして、ユーザは、PC100を第2のネットワーク110に接続する。なお、ネットワークは、有線ネットワークであっても、無線ネットワークであってもよい。
この場合、PC100が第1のネットワーク105に接続された場合のIPアドレスが「192.168.100.5」、サブネットマスクが「255.255.255.0」、ゲートウェイアドレスが「192.168.100.1」であるとする。
また、第2のネットワーク110で印刷を行うプリンタ109に対応した出力ポートが「IP_192.168.100.100」であり、プリンタオブジェクトには出力ポートを設定する。
ここで、ユーザがPC100を第2のネットワーク110に初めて接続して、印刷を行う場合、プリンタドライバ203が管理するプリンタ情報データベース606には該当するプリンタ情報が存在しない。このため、全体制御部601が図8の(b)のようなプリンタ情報810を作成し、プリンタ情報データベース606に登録する。ここで、出力ポートの変更処理は行われない。
【0034】
この時、図8の(b)に示すように、プリンタ情報810として、IPアドレス812が「192.168.100.5」に登録される。また、サブネットマスク813が「255.255.255.0」、ゲートウェイアドレス814が「192.168.100.1」がプリンタ情報データベース606に登録される。また、出力ポート815が「IP_192.168.100.100」としてプリンタ情報データベース606に登録される。
次に、再度、ユーザが第2のネットワーク110に接続されていたPC100を外して、PC100を携帯して、第1のネットワーク105が敷設されるエリアに移動する。ここで、有線のネットワークであれば、ユーザは、PC100に接続されるネットワークケーブルをルータ等から外す作業を行う。また、無線のネットワークであれば、単にPC100を携帯して第2のネットワーク110のエリアの外に移動する作業を行う。
このような作業を経て、ユーザは、PC100を携帯して第1のネットワーク105のエリアに移動し、PC100を第1のネットワーク105に再度接続する。なお、ネットワークが有線である場合と、無線である場合の接続処理は上述と同様の手順となる。なお、第1のネットワーク105に関するネットワーク情報は前回の接続時と同様とする。この状態で、ユーザがPC100から印刷を実行すると、プリンタドライバの初期化処理時に出力ポート変更処理が実行される。
【0035】
まず、ネットワーク情報取得部602によりPC100が接続された第1のネットワーク105のネットワーク情報が取得される。ここでは、前回の接続時と同様なので、ネットワーク情報取得部602により図9の(a)に示すようにIPアドレスは「192.168.11.50」が取得される。また、サブネットマスクは「255.255.255.0」が取得され、ゲートウェイアドレスは「192.168.11.2」取得される。
【0036】
このネットワーク情報を元に、プリンタ情報データベース検索部603がプリンタ情報データベース606を検索すると、プリンタ情報800を検索する。そのため、印刷実行前のタイミングで、出力ポート設定部605がプリンタ情報800の出力ポート情報805に設定してある「IP_192.168.11.11」をプリンタオブジェクトの出力ポートに変更設定する。なお、変更前の状態、すなわち、第2のネットワーク110の接続を解除してから、第1のネットワーク105に接続した直後の状態では、プリンタオブジェクトの出力ポートは、第2のネットワーク110のネットワーク情報が設定されたままの状態となっている。そこで、印刷開始前に、上記初期化処理を実行して、第1のネットワーク105のネットワーク情報に適応したプリンタ名がプリンタ1の出力ポート情報に変更される。
【0037】
本実施形態によれば、ユーザがPC100を携帯して、第1のネットワークと第2のネットワークとの間を自由に移動して印刷を行う際に、印刷開始前に、プリンタ名を選択すると、プリンタドライバが管理する出力ポートの設定がネットワークの接続先に適応して変更される。従って、ユーザは、ネットワーク間の移動毎に、ネットワークの設定を確認して、変更、再変更等の作業から軽減され、ネットワークの環境の違いを意識せずに、印刷処理を実行できる快適な印刷環境を構築できる。
なお、上記実施形態では、ユーザが第1と第2のネットワーク間の移動を例として説明したが、むろんそれ以上のネットワーク間にユーザが移動する場合でも同様にネットワーク情報の設定が自動的に確定する。
〔第2実施形態〕
上述した第1実施形態では、印刷時に必ず出力ポート自動設定部で処理が行われ、プリンタドライバが設定を変更する必要があると判断した場合、プリンタドライバの機能で出力ポートを自動的に変更する場合について説明した。
しかし、アプリケーション201からプリンタドライバ203に印刷設定を行う場合、例えばセキュリティ付きプリントのように、印刷設定時に設定されている出力ポートに出力したほうが良いことも想定される。
そこで、プリンタドライバ203に、図10に示す動作設定部504を出力ポート自動設定部502とUI部503との間に設け、出力ポート自動設定処理を行わない印刷設定処理を、プリンタドライバ203のUI部503の設定UIから設定できるように構成してもよい。以下、その実施形態について説明する。
【0038】
図10は、本実施形態を示す情報処理装置のプリンタドライバの構成を説明するブロック図である。
図10において、504は動作設定部で、出力ポートの自動設定を禁止するための設定を行う。
本実施形態では、図8に示した出力ポート自動設定処理を開始する前に、図11に示す出力ポート自動設定の前処理が実行される。
【0039】
図11は、本実施形態を示す情報処理装置におけるデータ処理手順の一例を示すフローチャートである。本例は、図7に示したS704における出力ポート自動設定部502のデータ処理例であって、前処理を含む処理例である。なお、S1101〜S1104は各ステップを示し、各ステップは、CPU1がROM3,外部メモリ11に記憶されたシステムプログラム、プリンタドライバをRAM2にロードして実行することで実現される。なお、出力ポート自動設定部502の機能に対応するモジュールは、プリンタドライバ203のプログラムの一部として記録され、プリンタドライバ203がロードされる際に同時にロードされる。また、出力ポート自動設定部502の機能に対応するモジュールは、図6に示した出力ポート自動設定部502の全体制御部601において実行される。
【0040】
まず、S1101で、全体制御部601は、プリンタドライバ203から印刷設定を取得する。次に、S1102で、全体制御部601は、動作設定部1004から自動設定禁止となる印刷設定情報を取得する。ここで、印刷設定情報とは、出力ポートの自動設定を禁止するか否かを識別する情報であればよいので、プリンタ情報800、811を拡張して、禁止フラグのON/OFFを示す情報として保持すればよい。また、その設定は、プリンタドライバが提供する印刷設定画面上にラジオボタンを付加して、そのラジオボタンの選択状態から、動作設定部504が禁止フラグのON/OFF(有効又は無効)を設定すればよい。
【0041】
次に、S1103で、S1101で取得した印刷設定と動作設定部1004から取得した自動設定禁止とを比較して、S1101で取得した印刷設定が自動設定禁止に設定されているかどうかを全体制御部601が判断する。ここで、S1101で取得した印刷設定が禁止設定されていないと全体制御部601が判断した場合は、S1104に示す図8に示した出力ポート自動設定処理を開始して、本処理を終了する。
一方、S1103で、S1101で取得した印刷設定が禁止設定されていると全体制御部601が判断した場合は、図8に示した出力ポート自動設定処理を実行せずに、本処理を終了する。
本実施形態によれば、印刷設定を禁止することユーザが設定しているか否かにより、出力ポートの自動設定を実行の可否を決定できるため、出力ポートの自動設定を行う必要がない場合は、印刷設定を変更することで対応できることになる。したがって、ユーザの要求に適応した印刷設定情報の変更または禁止を行うことができ、ユーザの利便性がよい。
【0042】
〔第3実施形態〕
上述した第1実施形態では、プリンタ情報をプリンタオブジェクトの名称(プリンタ名)毎にプリンタ情報データベース606に登録する場合について説明した。
従って、プリンタ名を変更した場合は、以前のプリンタ名称の設定を利用できなくなる。
そこで、プリンタ情報をプリンタ情報データベース606に登録する際、プリンタオ名毎だけでなく、プリンタドライバとしてプリンタ情報データベース606に登録する。
また、出力ポート自動設定部502に、動作モードを追加する。ここで、動作モードは、図10に示した動作設定部504で設定するものとする。また、動作モードは第1の動作モード、第2の動作モード、第3の動作モードの3パターンを設定可能とする。
【0043】
上記第1の動作モードとは、第1実施形態と同様の処理とする。第2の動作モードとは、プリンタ情報データベース606を検索する際に、プリンタオブジェクト名称毎にプリンタ情報データベースを使うのではなく、プリンタドライバとして登録したプリンタ情報データベースを検索する。
【0044】
第3の動作モードは、第1の動作モードと同様にプリンタオブジェクト名称でプリンタ情報データベースを検索した結果、一致するプリンタ情報が無い場合に、第2の動作モードと同様にプリンタドライバとして登録したプリンタ情報データベースを検索する処理である。
なお、動作モードは、プリンタドライバが提供する印刷設定画面の詳細設定等で、いずれの動作モードをユーザがラジオボタンで選択する構成とする。しかし、このような構成に限定されるものではなく、ネットワーク上のサーバが動作モードを設定できるように構成されていてもよい。
【0045】
図12は、本実施形態を示す情報処理装置におけるデータ処理手順の一例を示すフローチャートである。本例は、図7に示したS704における出力ポート自動設定部502のデータ処理例である。なお、S1201〜S1212は各ステップを示し、各ステップは、CPU1がROM3,外部メモリ11に記憶されたシステムプログラム、プリンタドライバをRAM2にロードして実行することで実現される。なお、出力ポート自動設定部502の機能に対応するモジュールは、プリンタドライバ203のプログラムの一部として記録され、プリンタドライバ203がロードされる際に同時にロードされる。また、出力ポート自動設定部502の機能に対応するモジュールは、図6に示した出力ポート自動設定部502の全体制御部601において実行される。
まず、S1201で、全体制御部601は、ネットワーク情報取得部602に指示し、PC100が接続しているネットワーク情報を取得する。
次に、S1202で、動作モードによって処理を分岐させため、動作モードが第1〜第3の動作モードのいずれが設定されている状態であるかを全体制御部601が判断する。
ここで、第1の動作モードが設定されていると判断した場合は、S1203に進む。また、第2の動作モードが設定されていると判断した場合は、S1204に進む。さらに、第3の動作モードが設定されていると判断した場合は、S1205に進む。
【0046】
そして、S1203では、全体制御部601がプリンタ情報データベース検索部603に指示し、S1201で取得したネットワーク情報に一致するネットワーク情報を持つプリンタ情報をプリンタ情報データベース606の中から検索する。この際、プリンタ情報データベース検索部603は、プリンタ情報データベース606は、呼び出し元のプリンタオブジェクト名称に一致するものを検索し、S1208へ進む。
また、S1204では、全体制御部601がプリンタ情報データベース検索部603に指示し、S1201で取得したネットワーク情報に一致するネットワーク情報を持つプリンタ情報をプリンタ情報データベース606の中から検索する。この際、プリンタ情報データベース検索部603は、プリンタドライバ情報として登録したプリンタ情報データベース606の中を検索して、S1208へ進む。
さらに、S1205では、全体制御部601がプリンタ情報データベース検索部603に指示し、S1201で取得したネットワーク情報に一致するネットワーク情報を持つプリンタ情報をプリンタ情報データベース606の中から検索する。
この際、プリンタ情報データベース検索部603は、呼び出し元のプリンタオブジェクト名称に一致するものを検索する。
【0047】
次に、S1206で、S1205で検索した結果、一致するプリンタ情報があるかどうかを全体制御部601が判断する。ここで、一致するプリンタ情報があると全体制御部601が判断した場合は、S1208へ進む。一方、一致するプリンタが無いと全体制御部601が判断した場合は、S1207へ進む。
次に、S1207で、全体制御部601は、プリンタ情報データベース検索部603に指示し、S1201で取得したネットワーク情報に一致するネットワーク情報を持つプリンタ情報をプリンタ情報データベース606の中から検索する。この際、プリンタ情報データベース検索部603は、プリンタドライバ情報として登録したプリンタ情報データベース606の中を検索する。
次に、S1208で、前処理で検索した結果、一致するプリンタ情報があるかどうかを全体制御部601が判断する。ここで、一致するプリンタ情報があると全体制御部601が判断した場合は、S1209の処理に進む。一方、一致するプリンタ情報がないと全体制御部601が判断した場合は、S1212に進む。
【0048】
そして、S1209で、全体制御部601は、一致したプリンタ情報から出力ポート情報を取得する。次に、全体制御部601は、印刷指示を出しているプリンタオブジェクトに設定されている出力ポートを取得し、プリンタ情報データベース検索部603に指示し、一致する出力ポートがあるかを検索させる。そして、S1210で、全体制御部601は、他のネットワーク情報で現在設定されている出力ポートが存在するかどうかを判断する。これは、一致すれば、以前に本処理において設定した出力ポートと判断するためである。逆に一致しなければ、以前に本処理で変更していない出力ポートであるため、出力ポートの変更は行わない。
ここで、一致する出力ポートが存在すると全体制御部601が判断した場合は、S1211の処理に進む。一方、一致する出力ポートが存在しないと全体制御部601が判断した場合は、S1212の処理に進む。
そして、S1211で、全体制御部601は、出力ポート設定部605に指示し、印刷指示を出しているプリンタオブジェクトの出力ポートをS1209で取得した出力ポートに変更して、本処理を終了する。
一方、S1212では、全体制御部601は、プリンタ情報データベース保存部604に指示を出し、現在の出力ポートを現在のネットワーク情報に関連付けて、プリンタ情報データベース保存部604に指示して保存して、本処理を終了する。
【0049】
上記実施形態によれば、第1〜第3の動作モードにより、プリンタドライバとして登録したプリンタ情報データベース606を検索することになる。このような動作を加えることにより、ユーザがプリンタオブジェクトの名称を変更したとしても、ユーザがPC100を携帯して、ネットワークを移動してそれぞれのネットワークにPCを接続する操作を行った場合、接続されたネットワークに適応して接続されるプリンタを利用するための出力ポートを自動的に設定することができる。
本発明の各工程(ステップ)は、ネットワーク又は各種記憶媒体を介して取得したソフトウエア(プログラム)をパソコン等の処理装置(CPU、プロセッサ)にて実行することでも実現できる。
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施形態の有機的な組合せを含む)が可能であり、それらを本発明の範囲から除外するものではない。
【符号の説明】
【0050】
203 プリンタドライバ
503 UI部
502 出力ポート自動設定部
【技術分野】
【0001】
本発明は、画像形成装置に対するネットワーク設定を行う情報処理装置に関するものである。
【背景技術】
【0002】
近年、ノートPC、SM(Super mobile)PCのように、ユーザが持ち運び可能な情報処理装置を利用したシステムが構築されて、各ユーザは、ネットワーク上からプリンタを選択して必要なデータを印刷することが可能に構成されている。このようなシステム環境の場合、ユーザは、それぞれPCを携帯して、居室を移動しながら、移送先のネットワークに接続する場合がある。例えば通常のワークを行うネットワーク環境から、会議室等のネットワーク環境へPCを携帯して移動し、移動先のネットワークに接続して、必要ならば当該移動先のネットワーク上のプリンタを選択して、印刷処理を行う場合がある。このように、ユーザは、複数のネットワークに接続してPCやプリンタを利用することが多く、印刷を行う際には、各ネットワークに接続されているプリンタを使用するの通例である。
【0003】
この場合において、ユーザが自身の希望通りのプリンタに印刷を行うためには、ユーザが携帯するPCに印刷するプリンタに合ったプリンタドライバがインストールされていること、プリンタオブジェクトが正しく設定されていることが必要となる。ここで、プリンタオブジェクトの設定とは、出力プリンタに対応した出力ポート設定(IPアドレス等)のことを指す。
ユーザが携帯するPCにプリンタドライバがインストールされていない状態や、プリンタオブジェクトの設定が正しく行われていない状態であると、ユーザは移動先に近接するプリンタから必要な情報を印刷することができない。
そのため、接続ネットワークの変更を検知すると、自動でプリンタドライバのインストールやプリンタオブジェクトの設定を行う方法が提案されている(特許文献1参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2006−185251号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来技術によると、ユーザが移動した先でPCをネットワーク接続した後、ネットワーク環境が変更されたことを認識した時点で、接続したネットワークに適したプリンタドライバのインストールやプリンタオブジェクトの設定変更を行う。そのため、ユーザが移動先のネットワーク上に携帯したPCを接続しても、実際には印刷を実行しない場合でも、プリンタオブジェクトの設定変更が行われてしまうという問題点があった。
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、印刷のタイミングで印刷を行うプリンタ名にのみ出力ポートの設定を自動化的に行える仕組みを提供することである。
【課題を解決するための手段】
【0006】
上記目的を達成する本発明の情報処理装置は以下に示す構成を備える。
プリンタドライバを用いてネットワークに接続されている画像形成装置に印刷情報を出力する情報処理装置であって、印刷が指示された後に、接続されるネットワークからネットワーク情報を取得する取得手段と、前記取得手段が取得したネットワーク情報と、プリンタドライバに設定された出力ポート情報とをプリンタ名に対応付けたプリンタ情報として保持する保持手段と、前記取得手段が取得したネットワーク情報がユーザにより選択されるプリンタ名に対応付けられた前記プリンタ情報として前記保持手段に保持されているかどうかを判断する判断手段と、前記ネットワーク情報が前記保持手段に保持されていると前記判断手段が判断した場合、前記プリンタドライバに設定されている出力ポート情報を前記プリンタ情報から取得される出力ポート情報に変更する変更手段とを備えることを特徴とする。
【発明の効果】
【0007】
本発明によれば、PCを携帯してネットワーク間を移動して、それぞれのネットワークに接続しても、ユーザが選択するプリンタ名に対応した出力ポート設定を自動的に行うことができる。
【図面の簡単な説明】
【0008】
【図1】印刷処理システムの構成を示すブロック図である。
【図2】印刷システムのハードウエア構成を説明するブロック図である。
【図3】コンピュータのソフトウエア構成を説明するブロック図である。
【図4】プリンタドライバ203の構成を説明するブロック図である。
【図5】表示部に表示するUIの一例を示す図である。
【図6】出力ポート自動設定部502の構成を示すブロック図である。
【図7】情報処理装置のデータ処理手順を示すフローチャートである。
【図8】情報処理装置のデータ処理手順を示すフローチャートである。
【図9】プリンタ情報のデータ構造を説明する図である。
【図10】プリンタドライバの構成を説明するブロック図である。
【図11】情報処理装置のデータ処理手順を示すフローチャートである。
【図12】情報処理装置のデータ処理手順を示すフローチャートである。
【発明を実施するための形態】
【0009】
次に本発明を実施するための最良の形態について図面を参照して説明する。
<システム構成の説明>
〔第1実施形態〕
図1は、本実施形態に係る情報処理装置を含む印刷処理システムの構成を示すブロック図である。本実施形態では、画像形成装置の一例とし、プリンタが複数それぞれ独立したネットワークに接続された印刷システムの例を示すが、プリンタに代えて、複合機能処理を行うMFP(Multi Function Peripheral)が複数接続された構成であってもよい。
なお、図1の(a)は、情報処理装置であるPC100が第1のネットワーク105に、図1の(b)は、同じく情報処理装置であるコンピュータが第2のネットワーク110に、それぞれ接続された状態を示している。
【0010】
つまり、ユーザは、PC100を移動して、異なるネットワークに接続して、各ネットワーク上のプリンタを選択して印刷ジョブを出力可能に構成されている。ところで、コンピュータ(以下、PCと記す)100は、携帯可能なノートPC、小型のSMPCで構成されている場合を示すが、デスクトップ型のコンピュータで構成されても本発明を適用可能である。
図1において、100はPCである。PC100は、イーサネット(登録商標)等のネットワークケーブルによって後述する第1のネットワーク105及び第2のネットワーク110に接続され、後述するプリンタ101〜104,106〜109と通信可能である。
【0011】
なお、PC100は、インストールされたアプリケーションプログラム等の各種プログラムを実行することが可能であり、印刷データをプリンタに対応するプリンタ言語に変換する機能を有するプリンタドライバを搭載している。また、プリンタドライバは、後述するプリンタ情報を記憶する領域を備え、印刷実行時に作成されたプリンタオブジェクト名毎のプリンタ情報を記憶して管理する機能を備えている。
【0012】
また、本実施形態において、PC100は、複数のプリンタドライバをサポートするものとする。つまり、ネットワークに接続されたプリンタのプリンタドライバをインストールして、ユーザが使用するプリンタでアプリケーションから印刷を行う場合に、ユーザが選択したプリンタから印刷を実行可能に構成されている。より具体的には、PC100には、各プリンタ101〜104,106〜109のプリンタ名に対応づけられたプリンタドライバをインストール可能に構成され、ユーザが必要に応じて選択したプリンタ名のプリンタドライバがインストールされる。
また、第1のネットワーク105と第2のネットワーク110に接続されるプリンタのうち、プリンタ名が同一となるプリンタが接続される場合と、ドライバは同じでもプリンタ名が異なる仮想プリンタとしてインストールされる場合もある。ここで、プリンタ名が異なるとは、同一の物理プリンタでありながら、印刷設定が異なる仮想プリンタとして登録することが可能であるからである。つまり、ユーザは、同一の物理プリンタでありながら、機能の設定が異なる仮想プリンタを任意数登録して、機能に応じて仮想プリンタを使い分けることが可能であるからである。
また、プリンタ101〜104及びプリンタ106〜109は、図示しないネットワークインタフェースを介して後述する第1のネットワーク105及び第2のネットワーク110とのいずれかに接続される。
【0013】
プリンタ101〜104,106〜109は、PC100から送信されて来る印刷データを含む印刷ジョブを解析し、1ページずつドットイメージデータに変換して印刷する。
したがって、本実施形態において、各プリンタ101〜104,106〜109の機能は、互いに相違するものであっても良い。つまり、プリント機能がそれぞれ異なり、オプション装置等を接続することで、印刷設定が異なる場合がある。
また、プリンタ機能に加えて、他の機能が拡張された、例えばMFP(Multi Function Peripheral)も本発明の情報処理装置の出力装置として機能させることが可能である。
第1のネットワーク105には、PC100及びプリンタ101〜104が接続されている。また、ユーザが、例えば会議等でPC100を携帯して移動することで、PC100を第2のネットワーク110に接続して、第2のネットワーク110に接続されたプリンタ106〜109を選択可能に構成されている。
【0014】
なお、本実施形態に示すネットワーク接続変更に伴うプリンタの設定処理については、詳述する。
また、図1の(a)に示す第1のネットワーク105及び図1の(b)に示す第2のネットワーク110は、ネットワークアドレス及びサブネットマスクが互いに異なる。つまり、本実施形態では、第1のネットワーク105と第2のネットワーク110は、物理的に接続されていないシステム環境を想定している。
図2は、本実施形態を示す印刷システムのハードウエア構成を説明するブロック図である。なお、本発明の機能が実行されるのであれば、単体の機器であっても、複数の機器からなるシステムであっても、LAN、WAN等のネットワークを介して接続が為され処理が行われるシステムであってもよい。
図1に示すホストコンピュータ3000において、CPU1はROM3のプログラム用ROMあるいは外部メモリ11に記憶された文書処理プログラム等に基づいて図形、イメージ、文字、表(表計算等を含む)等が混在した文書処理を実行する。
CPU1は、システムバス4に接続される各デバイスを総括的に制御する。また、ROM3のプログラム用ROMあるいは外部メモリ11には、CPU1の制御プログラムであるオペレーティングシステムプログラム(以下OS)や後述するプリンタドライバ等が記憶される。
そのため、ROM3のフォント用ROMあるいは外部メモリ11には上記文書処理の際に使用するフォントデータ等が記憶され、ROM3のデータ用ROMあるいは外部メモリ11には上記文書処理等を行う際に使用する各種データが記憶される。
【0015】
RAM2は、CPU1の主メモリ、ワークエリア等として機能する。キーボードコントローラ(KBC)5は、キーボード9や不図示のポインティングデバイスからのキー入力を制御する。ここで、キーボード9やポインティングデバイスの操作に後述するユーザインタフェースに設定がなされる。
表示コントローラ6は、表示部10の表示を制御する。ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、プリンタドライバ)等を記憶するハードディスク(HD)がある。
ディスクコントローラ(DKC)7は、前述のハードディスク(HD)、フロッピー(登録商標)ディスク(FD)等の外部メモリ11とのアクセスを制御する。プリンタコントローラ(PRTC)8は、ネットワーク21を介してプリンタ101〜104(106〜109)に接続されて、各プリンタとの通信制御処理を実行する。
なお、CPU1は、例えばRAM2上に設定された表示情報RAMへのアウトラインフォントの展開(ラスタライズ)処理を実行し、印刷される画像と同一の画像を表示部10上に表示するWYSIWYGを可能としている。
【0016】
また、CPU1は、表示部10上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。
ユーザは印刷を実行する際、印刷の設定に関するウインドウを開き、プリンタの設定や、印刷モードの選択を含むプリンタドライバに対するネットワーク設定を行える。
図1に示すプリンタ101〜104(106〜109)において、プリンタCPU12は、制御プログラムに基づいてシステムバス15に接続される印刷部(プリンタエンジン)17に出力情報としての画像信号を出力する。ここで、制御プログラムは、外部メモリ14又はROM13のプログラム用ROMに記憶されている。
また、このROM13のプログラムROMには、CPU12の制御プログラム等が記憶される。ROM13のフォント用ROMには上記出力情報を生成する際に使用するフォントデータ等が記憶されている。また、ROM13のデータ用ROMには、ハードディスク等の外部メモリ14がないプリンタの場合には、ホストコンピュータ上で利用される情報等が記憶されている。
【0017】
CPU12は、入力部18を介してホストコンピュータ100との通信処理が可能となっており、プリンタ内の情報等をホストコンピュータ3000に通知できる。RAM19は、CPU12の主メモリや、ワークエリア等として機能するRAMで、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。
なお、RAM19は、出力情報展開領域、環境データ格納領域、NVRAM等に用いられる。また、前述したハードディスク(HD)、ICカード等の外部メモリ14は、メモリコントローラ(MC)20によりアクセスを制御される。
さらに、外部メモリ14は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。また、21は操作部で、操作のためのスイッチおよびLED表示器等が配されている。
また、前述した外部メモリ14は1個に限らず、複数個備えられ、内蔵フォントに加えてオプションカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていてもよい。更に、図示しないNVRAMを有し、操作部21からのプリンタモード設定情報を記憶するようにしてもよい。
【0018】
図3は、図1に示したPC100のソフトウエア構成を説明するブロック図である。なお、PC100は、第1のネットワーク105又第2のネットワーク110とは排他的に接続され、PC100と第1のネットワーク105又第2のネットワーク110とは同時に接続されることはない。
なお、図3に示す第2のネットワーク110を破線で示すのは、PC100が第2のネットワーク110に現在接続されていない状態を示し、PC100が実線で示す第1のネットワーク105に接続されていることを示す。
図3において、PC100は、外部メモリ11に記憶されたアプリケーション201、グラフィックエンジン202、プリンタドライバ203はRAM2にロードされて、CPU1により実行される。システムスプーラ204は、外部メモリ11に保存されたファイルとして存在する。
また、アプリケーション201およびプリンタドライバ203は、外部メモリ11のFDや不図示のCD−ROM、あるいは不図示のネットワークを経由して外部メモリ11のHDに追加することが可能となっている。
しかし、このアプリケーション201からプリンタ101〜104又はプリンタ106〜109に対して印刷を行う際には、同様にRAM2にロードされ実行可能となっているグラフィックエンジン202を利用して出力(描画)を行う。
【0019】
グラフィックエンジン202は、プリンタドライバ203を同様に外部メモリ11からRAM2にロードし、アプリケーション201の出力はプリンタドライバ203を用いてプリンタの制御コマンドに変換する。なお、プリンタドライバは、プリンタ101〜104又はプリンタ106〜109ごとに用意されている。
そして、プリンタドライバ203は、変換したプリンタ制御コマンドをOSによってRAM2にロードされたシステムスプーラ204を経てプリンタ101〜104又はプリンタ106〜109へ出力される仕組みとなっている。なお、変換したプリンタ制御コマンドは、第1のネットワーク105又は第2のネットワーク110経由でプリンタに出力される。
本実施形態の印刷システムは、図3で示すプリンタ101〜104又はプリンタ106〜109とPC100からなる印刷システムに加えて、アプリケーションからの印刷データを一旦中間コードデータでスプールする構成を有する。
以下、本実施形態に示す印刷システムにおいて、接続するネットワークが第1のネットワーク105から第2のネットワーク110に変更された場合の印刷処理を説明する。具体的には、アプリケーションなどから印刷を実行した際に、プリンタドライバの印刷設定画面上からユーザが選択したプリンタオブジェクト名(プリンタ名)の出力ポートを自動的に設定するネットワーク設定方法を説明する。
【0020】
図4は、図3に示したプリンタドライバ203の構成を説明するブロック図である。
【0021】
図4において、印刷処理部501は、印刷処理を受け取ると印刷を実行する。また、印刷処理部501は、印刷処理を実行する前には初期化処理を実行する。出力ポート自動設定部502は、印刷処理部501の初期化処理で実行される。そのため、アプリケーションから印刷が実行されると、印刷処理部501が開始される前に、必ず出力ポート自動設定部502が実行される。UI部503は、UI処理を制御する部分であり、プリンタドライバの設定などを行う。
【0022】
図5は、図2に示したPC100の表示部10に表示されるユーザインタフェースの一例を示す図である。本画面は、アプリケーションが印刷時に表示する印刷設定・実行画面に対応する。
図5において、1201はアプリケーションの印刷実行ウインドウで、印刷命令を受信すると、印刷処理部501が実行され、プリンタドライバとして印刷処理が開始される。また、本実施形態では印刷実行ウインドウ1201から印刷命令が送信されているが、その他のアプリケーションやプログラムなどから印刷処理を受信した場合も同様の動作となる。
1202はリストで、印刷を実行するプリンタ名を選択する。ここで、プリンタ名とは、プリンタオブジェクト名に対応し、ユーザが登録したプリンタ名の中から選択される。ここでは、第1のネットワーク105で、ユーザがプリンタ名としてプリンタ1を選択した状態に対応する。ここで、プリンタ名がプリンタ1とは、第1のネットワーク105に接続されたプリンタ101に対応するものとする。また、ユーザが第2のネットワーク110において、プリンタ名として、プリンタ101を選択した場合には、第2のネットワーク110に接続されたプリンタ106に対応するものとする。
ただし、後述するように、ユーザが第1のネットワーク105でプリンタ101を登録した後、移動して、第2のネットワーク110でプリンタ101を選択した場合には、該当するものが選択できない。そこで、印刷時に、プリンタ名に対応づけて、例えばプリンタ106〜109が当該プリンタドライバに対応している場合に、ユーザが選択したプリンタ106をプリンタ名がプリンタ101として登録される。この場合に、取得する第2のネットワーク110のネットワーク情報と、出力ポート情報とがプリンタ1に対応づけて登録されるものとする。
1203はプロパティボタンで、プリンタドライバの詳細設定を行う際に、ユーザにより選択される。1204はOKボタンで、当該OKボタン1204が押下されると、印刷処理が開始され、プリンタドライバ203に印刷命令が送信される。
1205はキャンセルボタンで、当該キャンセルボタン1205が押下すると、印刷実行ウインドウ1201が閉じられ、印刷処理がキャンセルされる。
【0023】
図6は、図4に示した出力ポート自動設定部502の構成を示すブロック図である。
図6において、出力ポート自動設定部502は、全体制御部601、ネットワーク情報取得部602、プリンタ情報データベース検索部603、プリンタ情報データベース保存部604、出力ポート設定部605、プリンタ情報データベース606を有している。
全体制御部601は、出力ポート自動設定部502全体の制御を司る。ネットワーク情報取得部602は、全体制御部601からの指示によりPC100のネットワーク情報(IPアドレス、サブネットマスク等)を検出し、PC100が接続されているネットワークを識別する。
プリンタ情報データベース検索部603は、全体制御部601からの指示により、ネットワーク情報か出力ポート情報をキーにして、該当するプリンタオブジェクト名称のプリンタ情報データベース606を検索する。ここで、一致した情報があれば全体制御部601に返し、一致した情報がなければ、その旨を全体制御部601に通知する。
プリンタ情報データベース保存部604は、全体制御部601からの指示により、ネットワーク情報と出力ポート情報を対にしたプリンタ情報(図8参照)を作成し、該当するプリンタオブジェクトのプリンタ情報データベース606に保存を行う。
出力ポート設定部605は、全体制御部601からの指示により、指定されたプリンタオブジェクトに対して、出力ポートの設定値を指定された出力ポートに変更する処理を行う。
プリンタ情報データベース606は、プリンタオブジェクト名称毎に作成し、プリンタオブジェクトの名称をキーにして、保存、削除、変更、検索などの処理を行う。ここで、プリンタ情報データベース606は、出力ポート情報とネットワーク情報とをプリンタ名に対応付けられたプリンタ情報として複数保持可能に構成されている。
【0024】
図7は、本実施形態を示す情報処理装置のデータ処理手順の一例を示すフローチャートである。本例は、情報処理装置における印刷処理の流れを説明する手順に対応する。なお、S701〜S705は各ステップを示し、各ステップは、CPU1がROM3,外部メモリ11に記憶されたシステムプログラム、プリンタドライバ、制御プログラムをRAM2にロードして実行することで実現される。
まず、S701で、PC100上のアプリケーションは、印刷時に印刷設定用のウインドウである印刷ウインドウを表示部10に表示する。そして、S702で、アプリケーションがユーザにより印刷ウインドウの印刷ボタンが押下されたことを受信すると、OSに対して印刷処理を開始する。
【0025】
次に、S703で、OSがアプリケーションから印刷処理を受信すると、OSはプリンタドライバをロードして、実行可能状態にした後、プリンタドライバに対して印刷処理を開始する。
次に、S704で、プリンタドライバはOSからロードされた後、プリンタドライバの初期化処理を実行する。初期化処理の中で、後述する出力ポート自動設定処理を実行し、必要があれば、出力ポートを自動設定する。そして、S705で、プリンタドライバは、初期化処理の終了後、OSは描画情報を受け取り、印刷処理を実行し、出力ポートに割り当てられたプリンタに対して出力する印刷情報を制しする印刷処理を開始して、本処理を終了する。
次に、図4に示した出力ポート自動設定部502の動作を図8に基づき説明する。
【0026】
図8は、本実施形態を示す情報処理装置におけるデータ処理手順の一例を示すフローチャートである。本例は、図7に示したS704における出力ポート自動設定部502のデータ処理例である。なお、S801〜S807は各ステップを示し、各ステップは、CPU1がROM3,外部メモリ11に記憶されたシステムプログラム、プリンタドライバをRAM2にロードして実行することで実現される。なお、出力ポート自動設定部502の機能に対応するモジュールは、プリンタドライバ203のプログラムの一部として記録され、プリンタドライバ203がロードされる際に同時にロードされる。また、出力ポート自動設定部502の機能に対応するモジュールは、図6に示した出力ポート自動設定部502の全体制御部601において実行される。
【0027】
まず、S801で、全体制御部601は、ネットワーク情報取得部602に指示し、PC100が接続しているネットワーク情報を取得する。本実施形態では、PC100は、図1に示した第2のネットワーク110又は第1のネットワーク105のいずれかに接続されているものとする。
次に、S802で、全体制御部601は、プリンタ情報データベース検索部603に指示し、S801でプリンタ情報データベース検索部603が取得したネットワーク情報に一致するネットワーク情報を持つプリンタ情報を検索する。ここで、全体制御部601は、プリンタ情報データベース606の中からプリンタ情報を検索する。
この際、プリンタ情報データベース検索部603はプリンタ情報データベース606の中から呼び出し元のプリンタオブジェクト名称に一致するものを検索する。
次に、S803で、全体制御部601は、プリンタ情報データベース検索部603の検索処理によりネットワーク情報取得部602が取得したネットワーク情報に一致するプリンタ情報があるかどうかを判断する。
ここで、一致するプリンタ情報があると全体制御部601が判断した場合は、S804の処理に進む。一方、一致したプリンタ情報がないと全体制御部601が判断した場合は、S807の処理に進む。
【0028】
次に、S804で、全体制御部601は、プリンタ情報データベース検索部603が検索したプリンタ情報から出力ポート情報を取得する。
次に、S805で、全体制御部601は、印刷指示を出しているプリンタオブジェクトに設定されている出力ポートを取得し、プリンタ情報データベース検索部603に指示し、一致する出力ポートがあるかをプリンタ情報データベース606の中を検索する。これは、一致すれば、以前に本処理において設定した出力ポートと判断するためである。逆に一致しなければ、以前に本処理で変更していない出力ポートであるため、出力ポートの変更は行わない。
従って、一致すると全体制御部601が判断した場合は、S806の処理に進み、一致しないと全体制御部601が判断した場合は、S807の処理に進む。
次に、S806で、全体制御部601は、出力ポート設定部605に指示し、印刷指示を出しているプリンタオブジェクトの出力ポートをS804で取得した出力ポートに変更して、本処理を終了する。
【0029】
一方、S807で、全体制御部601は、現在の出力ポートを現在のネットワーク情報に関連付けて、プリンタ情報データベース保存部604に指示して、プリンタ情報データベース606へ保存して、本処理を終了する。
図9は、図6に示したプリンタ情報データベース606に保存するプリンタ情報のデータ構造を説明刷る図である。ここで、図9の(a)は第1のネットワーク105に対応するプリンタ情報800を示し、図9の(b)は第2のネットワーク110に対応するプリンタ情報810に対応する。
なお、プリンタ情報は、プリンタオブジェクト名毎に対応づけて登録される。ここで、プリンタオブジェクト名は、プリンタドライバが提供する印刷開始画面において、ユーザが選択するプリンタ名に対応する。また、当該プリンタ名は、仮想プリンタ名であるので、物理的には1つのプリンタではあるが、印刷設定を変えた複数の論理プリンタとしてユーザが任意のプリンタ名を設定することが可能である。
【0030】
図9において、ネットワーク情報801は、ネットワークを識別するための情報で、図1を例とすると、PC100に割り当てられているIPアドレス、サブネットマスク、ゲートウェイアドレスである。
ネットワーク情報801は、ネットワークを一意に識別できる情報であれば、上記以外の情報であっても良い。出力ポート情報805は、ネットワーク情報801のネットワークで出力に使うプリンタの出力ポート情報である。
この出力ポート情報805は、第1のネットワーク105のプリンタ101〜104のいずれかに対応し、ユーザがすべてのプリンタ101〜104を使用する場合には、4つの出力ポート情報が第1のネットワーク105に対応づけてプリンタ情報データベース606に登録されている。
ただし、ユーザは、プリンタ101〜104を全て選択することは可能であるが、実際には必要なプリンタを選択するので、選択したプリンタに対応するプリンタ名に対応づけてプリンタ情報が登録されるものとする。
また、810はプリンタ情報で、ネットワーク情報811から構成される。ここで、ネットワーク情報811は、第2のネットワーク110のプリンタ106〜109のいずれかに対応し、ユーザがすべてのプリンタ101〜104を使用する場合には、4つの出力ポート情報が第2のネットワーク110に対応づけてプリンタ情報データベース606に登録されている。
また、上記同様にユーザは、プリンタ106〜109を全て選択することは可能であるが、実際には必要なプリンタを選択するので、選択したプリンタに対応するプリンタ名に対応づけてプリンタ情報が登録されるものとする。
【0031】
プリンタ情報データに具体的にどのような値が入るか、図1の環境を例に説明する。
ここでは、PC100を第1のネットワーク105に接続した際は、プリンタ101を選択して印刷し、PC100を第2のネットワーク110に接続した際はプリンタ109で印刷するものと想定する。
この場合において、プリンタ情報データベース606の最初のデータには、ネットワーク情報として第1のネットワーク105を識別するための情報が入る。
具体的には、第1のネットワーク105に接続した際に、PC100に設定されたIPアドレス、サブネットマスク、ゲートウェイアドレスをネットワーク情報にする。また、プリンタ101に出力するための出力ポート名を出力ポート情報とする。
【0032】
プリンタ情報データベース606の次のデータには、ネットワーク情報が第2のネットワーク110を識別するために、第2のネットワーク110に接続した際に、PC100に設定されたIPアドレス、サブネットマスク、ゲートウェイアドレスをネットワーク情報にする。また、プリンタ109に出力するための出力ポート名を出力ポート情報とする。
次に、図1と図9を用いて、具体的に出力ポートを自動的に設定する処理について説明する。
第1のネットワーク105にPC100が接続された場合のIPアドレス802が「192.168.11.50」、サブネットマスク803が「255.255.255.0」、ゲートウェイアドレス804が「192.168.11.2」であるとする。
また、第1のネットワーク105で印刷を行うプリンタ101に対応した出力ポート情報805が「IP_192.168.11.11」であり、プリンタドライバが管理するプリンタ名には当該出力ポートが設定されているとする。
【0033】
ユーザが第1のネットワーク105で初めて印刷する場合、プリンタドライバが管理するプリンタ情報データベース606には該当するプリンタ情報が存在しない。このため、全体制御部601は、図8の(a)に示すようなプリンタ情報800を作成し、プリンタ情報データベース606に登録する。ここでは、最初のネットワーク接続であるので、出力ポートの変更処理は行われない。
次に、ユーザが第1のネットワーク105に接続されていたPC100を外して、ユーザがPC100を携帯して、第2のネットワーク110が敷設されている例えば会議室に移動する。そして、ユーザは、PC100を第2のネットワーク110に接続する。なお、ネットワークは、有線ネットワークであっても、無線ネットワークであってもよい。
この場合、PC100が第1のネットワーク105に接続された場合のIPアドレスが「192.168.100.5」、サブネットマスクが「255.255.255.0」、ゲートウェイアドレスが「192.168.100.1」であるとする。
また、第2のネットワーク110で印刷を行うプリンタ109に対応した出力ポートが「IP_192.168.100.100」であり、プリンタオブジェクトには出力ポートを設定する。
ここで、ユーザがPC100を第2のネットワーク110に初めて接続して、印刷を行う場合、プリンタドライバ203が管理するプリンタ情報データベース606には該当するプリンタ情報が存在しない。このため、全体制御部601が図8の(b)のようなプリンタ情報810を作成し、プリンタ情報データベース606に登録する。ここで、出力ポートの変更処理は行われない。
【0034】
この時、図8の(b)に示すように、プリンタ情報810として、IPアドレス812が「192.168.100.5」に登録される。また、サブネットマスク813が「255.255.255.0」、ゲートウェイアドレス814が「192.168.100.1」がプリンタ情報データベース606に登録される。また、出力ポート815が「IP_192.168.100.100」としてプリンタ情報データベース606に登録される。
次に、再度、ユーザが第2のネットワーク110に接続されていたPC100を外して、PC100を携帯して、第1のネットワーク105が敷設されるエリアに移動する。ここで、有線のネットワークであれば、ユーザは、PC100に接続されるネットワークケーブルをルータ等から外す作業を行う。また、無線のネットワークであれば、単にPC100を携帯して第2のネットワーク110のエリアの外に移動する作業を行う。
このような作業を経て、ユーザは、PC100を携帯して第1のネットワーク105のエリアに移動し、PC100を第1のネットワーク105に再度接続する。なお、ネットワークが有線である場合と、無線である場合の接続処理は上述と同様の手順となる。なお、第1のネットワーク105に関するネットワーク情報は前回の接続時と同様とする。この状態で、ユーザがPC100から印刷を実行すると、プリンタドライバの初期化処理時に出力ポート変更処理が実行される。
【0035】
まず、ネットワーク情報取得部602によりPC100が接続された第1のネットワーク105のネットワーク情報が取得される。ここでは、前回の接続時と同様なので、ネットワーク情報取得部602により図9の(a)に示すようにIPアドレスは「192.168.11.50」が取得される。また、サブネットマスクは「255.255.255.0」が取得され、ゲートウェイアドレスは「192.168.11.2」取得される。
【0036】
このネットワーク情報を元に、プリンタ情報データベース検索部603がプリンタ情報データベース606を検索すると、プリンタ情報800を検索する。そのため、印刷実行前のタイミングで、出力ポート設定部605がプリンタ情報800の出力ポート情報805に設定してある「IP_192.168.11.11」をプリンタオブジェクトの出力ポートに変更設定する。なお、変更前の状態、すなわち、第2のネットワーク110の接続を解除してから、第1のネットワーク105に接続した直後の状態では、プリンタオブジェクトの出力ポートは、第2のネットワーク110のネットワーク情報が設定されたままの状態となっている。そこで、印刷開始前に、上記初期化処理を実行して、第1のネットワーク105のネットワーク情報に適応したプリンタ名がプリンタ1の出力ポート情報に変更される。
【0037】
本実施形態によれば、ユーザがPC100を携帯して、第1のネットワークと第2のネットワークとの間を自由に移動して印刷を行う際に、印刷開始前に、プリンタ名を選択すると、プリンタドライバが管理する出力ポートの設定がネットワークの接続先に適応して変更される。従って、ユーザは、ネットワーク間の移動毎に、ネットワークの設定を確認して、変更、再変更等の作業から軽減され、ネットワークの環境の違いを意識せずに、印刷処理を実行できる快適な印刷環境を構築できる。
なお、上記実施形態では、ユーザが第1と第2のネットワーク間の移動を例として説明したが、むろんそれ以上のネットワーク間にユーザが移動する場合でも同様にネットワーク情報の設定が自動的に確定する。
〔第2実施形態〕
上述した第1実施形態では、印刷時に必ず出力ポート自動設定部で処理が行われ、プリンタドライバが設定を変更する必要があると判断した場合、プリンタドライバの機能で出力ポートを自動的に変更する場合について説明した。
しかし、アプリケーション201からプリンタドライバ203に印刷設定を行う場合、例えばセキュリティ付きプリントのように、印刷設定時に設定されている出力ポートに出力したほうが良いことも想定される。
そこで、プリンタドライバ203に、図10に示す動作設定部504を出力ポート自動設定部502とUI部503との間に設け、出力ポート自動設定処理を行わない印刷設定処理を、プリンタドライバ203のUI部503の設定UIから設定できるように構成してもよい。以下、その実施形態について説明する。
【0038】
図10は、本実施形態を示す情報処理装置のプリンタドライバの構成を説明するブロック図である。
図10において、504は動作設定部で、出力ポートの自動設定を禁止するための設定を行う。
本実施形態では、図8に示した出力ポート自動設定処理を開始する前に、図11に示す出力ポート自動設定の前処理が実行される。
【0039】
図11は、本実施形態を示す情報処理装置におけるデータ処理手順の一例を示すフローチャートである。本例は、図7に示したS704における出力ポート自動設定部502のデータ処理例であって、前処理を含む処理例である。なお、S1101〜S1104は各ステップを示し、各ステップは、CPU1がROM3,外部メモリ11に記憶されたシステムプログラム、プリンタドライバをRAM2にロードして実行することで実現される。なお、出力ポート自動設定部502の機能に対応するモジュールは、プリンタドライバ203のプログラムの一部として記録され、プリンタドライバ203がロードされる際に同時にロードされる。また、出力ポート自動設定部502の機能に対応するモジュールは、図6に示した出力ポート自動設定部502の全体制御部601において実行される。
【0040】
まず、S1101で、全体制御部601は、プリンタドライバ203から印刷設定を取得する。次に、S1102で、全体制御部601は、動作設定部1004から自動設定禁止となる印刷設定情報を取得する。ここで、印刷設定情報とは、出力ポートの自動設定を禁止するか否かを識別する情報であればよいので、プリンタ情報800、811を拡張して、禁止フラグのON/OFFを示す情報として保持すればよい。また、その設定は、プリンタドライバが提供する印刷設定画面上にラジオボタンを付加して、そのラジオボタンの選択状態から、動作設定部504が禁止フラグのON/OFF(有効又は無効)を設定すればよい。
【0041】
次に、S1103で、S1101で取得した印刷設定と動作設定部1004から取得した自動設定禁止とを比較して、S1101で取得した印刷設定が自動設定禁止に設定されているかどうかを全体制御部601が判断する。ここで、S1101で取得した印刷設定が禁止設定されていないと全体制御部601が判断した場合は、S1104に示す図8に示した出力ポート自動設定処理を開始して、本処理を終了する。
一方、S1103で、S1101で取得した印刷設定が禁止設定されていると全体制御部601が判断した場合は、図8に示した出力ポート自動設定処理を実行せずに、本処理を終了する。
本実施形態によれば、印刷設定を禁止することユーザが設定しているか否かにより、出力ポートの自動設定を実行の可否を決定できるため、出力ポートの自動設定を行う必要がない場合は、印刷設定を変更することで対応できることになる。したがって、ユーザの要求に適応した印刷設定情報の変更または禁止を行うことができ、ユーザの利便性がよい。
【0042】
〔第3実施形態〕
上述した第1実施形態では、プリンタ情報をプリンタオブジェクトの名称(プリンタ名)毎にプリンタ情報データベース606に登録する場合について説明した。
従って、プリンタ名を変更した場合は、以前のプリンタ名称の設定を利用できなくなる。
そこで、プリンタ情報をプリンタ情報データベース606に登録する際、プリンタオ名毎だけでなく、プリンタドライバとしてプリンタ情報データベース606に登録する。
また、出力ポート自動設定部502に、動作モードを追加する。ここで、動作モードは、図10に示した動作設定部504で設定するものとする。また、動作モードは第1の動作モード、第2の動作モード、第3の動作モードの3パターンを設定可能とする。
【0043】
上記第1の動作モードとは、第1実施形態と同様の処理とする。第2の動作モードとは、プリンタ情報データベース606を検索する際に、プリンタオブジェクト名称毎にプリンタ情報データベースを使うのではなく、プリンタドライバとして登録したプリンタ情報データベースを検索する。
【0044】
第3の動作モードは、第1の動作モードと同様にプリンタオブジェクト名称でプリンタ情報データベースを検索した結果、一致するプリンタ情報が無い場合に、第2の動作モードと同様にプリンタドライバとして登録したプリンタ情報データベースを検索する処理である。
なお、動作モードは、プリンタドライバが提供する印刷設定画面の詳細設定等で、いずれの動作モードをユーザがラジオボタンで選択する構成とする。しかし、このような構成に限定されるものではなく、ネットワーク上のサーバが動作モードを設定できるように構成されていてもよい。
【0045】
図12は、本実施形態を示す情報処理装置におけるデータ処理手順の一例を示すフローチャートである。本例は、図7に示したS704における出力ポート自動設定部502のデータ処理例である。なお、S1201〜S1212は各ステップを示し、各ステップは、CPU1がROM3,外部メモリ11に記憶されたシステムプログラム、プリンタドライバをRAM2にロードして実行することで実現される。なお、出力ポート自動設定部502の機能に対応するモジュールは、プリンタドライバ203のプログラムの一部として記録され、プリンタドライバ203がロードされる際に同時にロードされる。また、出力ポート自動設定部502の機能に対応するモジュールは、図6に示した出力ポート自動設定部502の全体制御部601において実行される。
まず、S1201で、全体制御部601は、ネットワーク情報取得部602に指示し、PC100が接続しているネットワーク情報を取得する。
次に、S1202で、動作モードによって処理を分岐させため、動作モードが第1〜第3の動作モードのいずれが設定されている状態であるかを全体制御部601が判断する。
ここで、第1の動作モードが設定されていると判断した場合は、S1203に進む。また、第2の動作モードが設定されていると判断した場合は、S1204に進む。さらに、第3の動作モードが設定されていると判断した場合は、S1205に進む。
【0046】
そして、S1203では、全体制御部601がプリンタ情報データベース検索部603に指示し、S1201で取得したネットワーク情報に一致するネットワーク情報を持つプリンタ情報をプリンタ情報データベース606の中から検索する。この際、プリンタ情報データベース検索部603は、プリンタ情報データベース606は、呼び出し元のプリンタオブジェクト名称に一致するものを検索し、S1208へ進む。
また、S1204では、全体制御部601がプリンタ情報データベース検索部603に指示し、S1201で取得したネットワーク情報に一致するネットワーク情報を持つプリンタ情報をプリンタ情報データベース606の中から検索する。この際、プリンタ情報データベース検索部603は、プリンタドライバ情報として登録したプリンタ情報データベース606の中を検索して、S1208へ進む。
さらに、S1205では、全体制御部601がプリンタ情報データベース検索部603に指示し、S1201で取得したネットワーク情報に一致するネットワーク情報を持つプリンタ情報をプリンタ情報データベース606の中から検索する。
この際、プリンタ情報データベース検索部603は、呼び出し元のプリンタオブジェクト名称に一致するものを検索する。
【0047】
次に、S1206で、S1205で検索した結果、一致するプリンタ情報があるかどうかを全体制御部601が判断する。ここで、一致するプリンタ情報があると全体制御部601が判断した場合は、S1208へ進む。一方、一致するプリンタが無いと全体制御部601が判断した場合は、S1207へ進む。
次に、S1207で、全体制御部601は、プリンタ情報データベース検索部603に指示し、S1201で取得したネットワーク情報に一致するネットワーク情報を持つプリンタ情報をプリンタ情報データベース606の中から検索する。この際、プリンタ情報データベース検索部603は、プリンタドライバ情報として登録したプリンタ情報データベース606の中を検索する。
次に、S1208で、前処理で検索した結果、一致するプリンタ情報があるかどうかを全体制御部601が判断する。ここで、一致するプリンタ情報があると全体制御部601が判断した場合は、S1209の処理に進む。一方、一致するプリンタ情報がないと全体制御部601が判断した場合は、S1212に進む。
【0048】
そして、S1209で、全体制御部601は、一致したプリンタ情報から出力ポート情報を取得する。次に、全体制御部601は、印刷指示を出しているプリンタオブジェクトに設定されている出力ポートを取得し、プリンタ情報データベース検索部603に指示し、一致する出力ポートがあるかを検索させる。そして、S1210で、全体制御部601は、他のネットワーク情報で現在設定されている出力ポートが存在するかどうかを判断する。これは、一致すれば、以前に本処理において設定した出力ポートと判断するためである。逆に一致しなければ、以前に本処理で変更していない出力ポートであるため、出力ポートの変更は行わない。
ここで、一致する出力ポートが存在すると全体制御部601が判断した場合は、S1211の処理に進む。一方、一致する出力ポートが存在しないと全体制御部601が判断した場合は、S1212の処理に進む。
そして、S1211で、全体制御部601は、出力ポート設定部605に指示し、印刷指示を出しているプリンタオブジェクトの出力ポートをS1209で取得した出力ポートに変更して、本処理を終了する。
一方、S1212では、全体制御部601は、プリンタ情報データベース保存部604に指示を出し、現在の出力ポートを現在のネットワーク情報に関連付けて、プリンタ情報データベース保存部604に指示して保存して、本処理を終了する。
【0049】
上記実施形態によれば、第1〜第3の動作モードにより、プリンタドライバとして登録したプリンタ情報データベース606を検索することになる。このような動作を加えることにより、ユーザがプリンタオブジェクトの名称を変更したとしても、ユーザがPC100を携帯して、ネットワークを移動してそれぞれのネットワークにPCを接続する操作を行った場合、接続されたネットワークに適応して接続されるプリンタを利用するための出力ポートを自動的に設定することができる。
本発明の各工程(ステップ)は、ネットワーク又は各種記憶媒体を介して取得したソフトウエア(プログラム)をパソコン等の処理装置(CPU、プロセッサ)にて実行することでも実現できる。
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施形態の有機的な組合せを含む)が可能であり、それらを本発明の範囲から除外するものではない。
【符号の説明】
【0050】
203 プリンタドライバ
503 UI部
502 出力ポート自動設定部
【特許請求の範囲】
【請求項1】
プリンタドライバを用いてネットワークに接続されている画像形成装置に印刷情報を出力する情報処理装置であって、
印刷が指示された後に、接続されるネットワークからネットワーク情報を取得する取得手段と、
前記取得手段が取得したネットワーク情報と、プリンタドライバに設定された出力ポート情報とをプリンタ名に対応付けたプリンタ情報として保持する保持手段と、
前記取得手段が取得したネットワーク情報がユーザにより選択されるプリンタ名に対応付けられた前記プリンタ情報として前記保持手段に保持されているかどうかを判断する判断手段と、
前記ネットワーク情報が前記保持手段に保持されていると前記判断手段が判断した場合、前記プリンタドライバに設定されている出力ポート情報を前記プリンタ情報から取得される出力ポート情報に変更する変更手段と、
を備えることを特徴とする情報処理装置。
【請求項2】
前記変更手段による出力ポート情報の変更を有効または無効のいずれかに設定する設定手段を備え、
前記変更手段は、前記設定手段により出力ポート情報の変更が無効に設定されている場合は、出力ポートの変更を行わないことを特徴とする請求項1記載の情報処理装置。
【請求項3】
前記保持手段は、前記取得手段が取得したネットワーク情報と、プリンタドライバに設定された出力ポート情報とをプリンタ名に対応付けたドライバ情報として保持することを特徴とする請求項1記載の情報処理装置。
【請求項4】
前記保持手段は、出力ポート情報が同一であって、プリンタ名が異なるプリンタ情報を複数保持することを特徴とする請求項1又は3記載の情報処理装置。
【請求項5】
プリンタドライバを用いてネットワークに接続されている画像形成装置に印刷情報を出力する情報処理装置におけるネットワーク設定方法であって、
印刷が指示された後に、接続されるネットワークからネットワーク情報を取得する取得ステップと、
前記取得ステップが取得したネットワーク情報と、プリンタドライバに設定された出力ポート情報とをプリンタ名に対応付けたプリンタ情報として保持手段に保持する保持ステップと、
前記取得ステップが取得したネットワーク情報がユーザにより選択されるプリンタ名に対応付けられた前記プリンタ情報として前記保持手段に保持されているかどうかを判断する判断ステップと、
前記ネットワーク情報が前記保持手段に保持されていると前記判断ステップが判断した場合、前記プリンタドライバに設定されている出力ポート情報を前記プリンタ情報から取得される出力ポート情報に変更する変更ステップと、
を備えることを特徴とするネットワーク設定方法。
【請求項6】
前記変更ステップによる出力ポート情報の変更を有効または無効のいずれかに設定する設定ステップを備え、
前記変更ステップは、前記設定ステップにより出力ポート情報の変更が無効に設定されている場合は、出力ポートの変更を行わないことを特徴とする請求項5記載のネットワーク設定方法。
【請求項7】
請求項5又は6に記載のネットワーク設定方法をコンピュータに実行させることを特徴とするプログラム。
【請求項1】
プリンタドライバを用いてネットワークに接続されている画像形成装置に印刷情報を出力する情報処理装置であって、
印刷が指示された後に、接続されるネットワークからネットワーク情報を取得する取得手段と、
前記取得手段が取得したネットワーク情報と、プリンタドライバに設定された出力ポート情報とをプリンタ名に対応付けたプリンタ情報として保持する保持手段と、
前記取得手段が取得したネットワーク情報がユーザにより選択されるプリンタ名に対応付けられた前記プリンタ情報として前記保持手段に保持されているかどうかを判断する判断手段と、
前記ネットワーク情報が前記保持手段に保持されていると前記判断手段が判断した場合、前記プリンタドライバに設定されている出力ポート情報を前記プリンタ情報から取得される出力ポート情報に変更する変更手段と、
を備えることを特徴とする情報処理装置。
【請求項2】
前記変更手段による出力ポート情報の変更を有効または無効のいずれかに設定する設定手段を備え、
前記変更手段は、前記設定手段により出力ポート情報の変更が無効に設定されている場合は、出力ポートの変更を行わないことを特徴とする請求項1記載の情報処理装置。
【請求項3】
前記保持手段は、前記取得手段が取得したネットワーク情報と、プリンタドライバに設定された出力ポート情報とをプリンタ名に対応付けたドライバ情報として保持することを特徴とする請求項1記載の情報処理装置。
【請求項4】
前記保持手段は、出力ポート情報が同一であって、プリンタ名が異なるプリンタ情報を複数保持することを特徴とする請求項1又は3記載の情報処理装置。
【請求項5】
プリンタドライバを用いてネットワークに接続されている画像形成装置に印刷情報を出力する情報処理装置におけるネットワーク設定方法であって、
印刷が指示された後に、接続されるネットワークからネットワーク情報を取得する取得ステップと、
前記取得ステップが取得したネットワーク情報と、プリンタドライバに設定された出力ポート情報とをプリンタ名に対応付けたプリンタ情報として保持手段に保持する保持ステップと、
前記取得ステップが取得したネットワーク情報がユーザにより選択されるプリンタ名に対応付けられた前記プリンタ情報として前記保持手段に保持されているかどうかを判断する判断ステップと、
前記ネットワーク情報が前記保持手段に保持されていると前記判断ステップが判断した場合、前記プリンタドライバに設定されている出力ポート情報を前記プリンタ情報から取得される出力ポート情報に変更する変更ステップと、
を備えることを特徴とするネットワーク設定方法。
【請求項6】
前記変更ステップによる出力ポート情報の変更を有効または無効のいずれかに設定する設定ステップを備え、
前記変更ステップは、前記設定ステップにより出力ポート情報の変更が無効に設定されている場合は、出力ポートの変更を行わないことを特徴とする請求項5記載のネットワーク設定方法。
【請求項7】
請求項5又は6に記載のネットワーク設定方法をコンピュータに実行させることを特徴とするプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2010−224729(P2010−224729A)
【公開日】平成22年10月7日(2010.10.7)
【国際特許分類】
【出願番号】特願2009−69562(P2009−69562)
【出願日】平成21年3月23日(2009.3.23)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成22年10月7日(2010.10.7)
【国際特許分類】
【出願日】平成21年3月23日(2009.3.23)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]