図1は、本発明の一実施形態を示す印刷制御装置の構成の一例を示すブロック図である。
図1において、11はCPUで、本印刷制御装置としての情報処理装置であるコンピュータ10全体の制御を行う。12はRAMで、各種データ等を格納し、CPU11の作業領域として使用可能である。13はROMで、コンピュータ10を制御するプログラム等を格納している。
14は外部記憶装置(ここではハードディスクドライブ(HDD))である。このHDD14は、CPU11の各種制御プログラム、OSのシステム情報ファイル(通常レジストリと称される)等が記憶されている。このOSのシステム情報ファイル(レジストリ)には、インストールされている仮想プリンタの情報も仮想プリンタ毎に登録されている。また、このレジストリに登録されている仮想プリンタの情報を仮想プリンタのレジストリ等と称する場合もある。さらに、このレジストリは、プログラムが実行時に必要となる所望の情報(例えば、仮想プリンタ毎にレジストリに追加される後述する図8に示すレジストリ(1)等)も追加することも可能である。
15はセットアッププログラムを提供するCD-ROMである。16はディスプレイ、17はキーボード・マウス等の入力装置である。18はコンピュータ10に直接接続されているローカルプリンタである。19はネットワークを介してコンピュータ10に接続されているネットワークプリンタである。
なお、プリンタドライバのセットアッププログラムはCD-ROM15等により提供し、インストールされるプリンタドライバはHDD14に記憶される。
以下、図2のフローチャートを参照して、本実施形態の印刷制御装置におけるシステム全体の動作について説明する。
図2は、本発明の印刷制御装置における第1の制御処理の一例を示すフローチャートであり、本実施形態の印刷制御装置におけるインストール処理システム全体の動作に対応する。なお、このフローチャートの処理は、図1に示したCPU11がHDD14に格納されるプログラムをRAM12上にロードして実行することにより実現される。また、図中、S301〜S319は各ステップを示す。
ユーザの指示によりインストール作業が開始されると、ステップS301において、CPU11は、コンピュータ10に接続されているプリンタの検索処理を行い、該検索されたプリンタからプリンタの構成情報を取得し、該取得したデータを図3に示すようなデータ構成でRAM12に記憶する。なお、このデータは、検索されたプリンタ毎に記憶するものとする。
図3は、図2のステップS301のプリンタ検索で取得されRAM12へ保存されるコンピュータ10に接続されているプリンタの構成情報の一例を示すデータ構成図である。
図3に示すように、RAM12へ保存するプリンタの構成情報は、管理番号、オプション構成(その機種が装着可能なオプション名)、その装着の有無、関連するDevmodeメンバ(そのオプションにより使用可能になる機能に対応したDevmodeメンバ)、そのID等の項目から構成される。なお、ここで、Devmodeとは、プリンタが使用可能な機能,レイアウト設定,仕上げ設定,給・排紙設定,印字品質設定等の仮想プリンタの関するデフォルトの動作条件を含む各種設定を記憶するために、米国Microsoft(登録商標)社が規定したDevMode構造体を示し、Devmodeメンバとは、DevMode構造体のメンバを示す。
以下、図2のフローチャートの説明に戻る。
続いてステップS302において、CPU11は、HDD14に記憶されるOSのシステム情報ファイル(仮想プリンタのレジストリ情報を含む)に設定されている既存の仮想プリンタの検索を行い、該検索結果から取得したデータを図4に示すようなデータ構成でRAM12に記憶する。
図4は、図2のステップS302の仮想プリンタ検索で取得されRAM12へ保存される既にインストール済みの仮想プリタン情報の一例を示すデータ構成図である。
図4に示すように、RAM12へ保存するインストール済みの仮想プリンタの情報は、既にインストールされているドライバ機種名、そのフレンドリ名、接続ポート等の項目から構成される。
以下、図2のフローチャートの説明に戻る。
次に、ステップS303において、CPU11は、インストールする機種とその接続先であるポートの選択をユーザに促し、該インストールする機種とその接続先であるポートの選択がユーザにより入力されると、該選択されたインストールする機種とその接続先であるポート等の情報を、図5に示すようなデータ構成でRAM12に記憶する。なお、インストール機種とポートの選択は、インストールするプリンタの数だけ行うものとする。
図5は、図2のステップS303でインストール機種・ポートの選択が行われた際にRAM12に記憶されるインストール機種・ポートの選択情報のデータ構成の一例を示す図である。
図5に示すように、インストール機種・ポートの選択情報は、インストールするドライバ機種名、その接続ポート名、インストール作業の完了ステータス等の項目から構成される。なお、インストールステータスは、この時点では「未」となっているが、該プリンタのインストールが終了すると「済」に変更される。
以下、図2のフローチャートの説明に戻る。
次に、ステップS304において、CPU11は、すでにインストール済みの対象実プリンタの仮想プリンタに対するフレンドリ名のチェックを行い、既存の機種のフレンドリ名の変更処理を行う(以下、既存と表した場合は、すでにインストール済みのものを言う)。このステップS304の既存の機種のフレンドリ名の変更処理では、今からインストールするドライバ機種・接続ポートを含めて、最終的にドライバ機種・接続ポートが2機種以上又は2ポート以上になる場合、既存の仮想プリンタのフレンドリ名に、プリンタ機種名、ポート名を付加するように、既存の仮想プリンタのフレンドリ名を変更する処理である。なお、その詳細は後述する図9,図10に示す。
以下、CPU11は、ステップS305〜S319の処理を、今からインストールするドライバ機種名・接続ポート毎(即ち、図5に示したインストール機種・ポートの選択情報内のデータ毎)に実行して、順次プリンタのインストール処理を行う。
次に、ステップS305において、CPU11は、図5に示したインストール機種・ポートの選択情報からインストールステータスが「未」のドライバ機種名・接続ポートの情報を読み出し(以下、カレントのドライバ機種名・接続ポートの情報と称する)、該ドライバ機種名・接続ポートの情報に対応する追加アイコン設定ダイアログ表示処理を行う。この処理により、カレントのドライバ機種名・接続ポートに対応したインストールを行うための、図6に示すような追加アイコン設定ダイアログがディスプレイ16にて表示されれ、フレンドリ名変更ダイアログからのユーザ指示待機状態となる。なお、このステップS305の追加アイコン設定ダイアログ表示処理の詳細は後述する図11〜図20に示す。
図6は、図2のステップS305でディスプレイ16に表示される本インストール処理のメインの画面としての追加アイコン設定ダイアログ画面の一例を示す模式図である。
図6において、101,102,103は追加アイコン設定チェックボックスである。この追加アイコン設定チェックボックス101,102,103は、それぞれインストーラにてあらかじめ既定された設定の仮想プリンタ有無に関するチェックボックスである。
リストボックス104には、既存の仮想プリンタと、これからインストールする仮想プリンタ(カレントのドライバ機種名・接続ポートに対応する仮想プリンタ)のフレンドリ名を全て表示する。
105は設定追加ボタンである。この設定追加ボタン105は、ユーザの任意設定の仮想プリンタを追加するためのボタンである。
106は設定参照ボタンである。この設定参照ボタン106は、仮想プリンタの設定を確認するためのボタンである。107は設定変更ボタンである。この設定変更ボタン107は、リストボックス104にリストされた仮想プリンタの設定を変更するためのボタンである。108は削除ボタンである。この削除ボタン108は、リストボックス104に並んだ仮想プリンタを削除(既存の仮想プリンタを削除、又は、今からインストールするプリンタに関しては追加しないようにする)ためのボタンである。
109はフレンドリ名入力テキストボックス、110はフレンドリ名変更ボタンである。このフレンドリ名入力テキストボックス109、及びフレンドリ名変更ボタン110は、フレンドリ名を変更するためのものであり、フレンドリ名変更ボタン110を押下(マウス等の入力装置17で指示)すると、リストボックス104で選択されている仮想プリンタのフレンドリ名が、フレンドリ名入力テキストボックス109内に入力されたフレンドリ名に変更される。
111はキャンセルボタンである。このキャンセルボタン111は、インストール処理を中止をするためのボタンである。112はOKボタンである。このOKボタン112は、インストール処理を続行する(先に進める)ためのボタンである。
なお、ステップS305の追加アイコン設定ダイアログ表示処理により、図6の追加アイコン設定ダイアログに表示されるデータを保存するリスティングデータが図7に示すデータ構造でRAM12に記憶される。
図7は、図6の追加アイコン設定ダイアログに表示されるデータを保存するリスティングデータの一例を示すデータ構成図である。
図7に示すリスティングデータは、図6のリストボックス104上のリスティング順、その仮想プリンタは既存のものか新規にインストールするものか及び既定のものかどうかを示すStatus、リストボックス104上のフレンドリ名、既定設定のチェックボックス(追加アイコン設定チェックボックス101〜103)の表示順序を示すUI表示順、デフォルト動作条件に基づく機能名、追加アイコン設定チェックボックス101〜103の状態、既定設定固有のレジストリID(後述する図13に示す設定ファイル等にて既定されたレジストリIDで、ユーザによる任意の設定は一律99とする)、その仮想プリンタに対するデフォルトの動作条件を格納するDevmodeの実データ等、の項目により構成される。
以下、図2のフローチャートの説明に戻る。
次に、ステップS307において、CPU11は、図6に示した追加アイコン設定ダイアログからのユーザの指示入力があると、該ユーザ指示を判定する。
ステップS307で、CPU11が、ユーザ指示がキャンセルである(図6のキャンセルボタン111が押下された)と判定した場合には、そのままステップS319の処理に進む。
また、ステップS307で、CPU11が、ユーザ指示がキャンセル,OK以外である(図6のキャンセルボタン111,OKボタン112以外のボタンが押下された)と判定した場合には、ステップS306において、CPU11は、ユーザ指示の処理を実行し、ステップS307に戻る。このステップS306のユーザ指示の処理では、追加アイコン設定チェックボックス101,102,103のON/OFFの処理や、設定追加ボタン105によるユーザの任意設定の仮想プリンタ追加処理や、設定参照ボタン106による仮想プリンタの設定確認処理や、設定変更ボタン107による仮想プリンタの設定変更処理や、削除ボタン108による仮想プリンタの削除処理(追加しないようにする処理)や、フレンドリ名変更ボタン110によるフレンドリ名変更処理等を行う。なお、その詳細は後述する図21に示す。
なお、ステップS306のユーザ指示の処理により、図7に示すリスティングデータが更新される。
以下、図2のフローチャートの説明に戻る。
ステップS307で、CPU11が、ユーザ指示がOKである(図6のOKボタン112が押下された)と判定した場合には、ステップS308において、CPU11は、ステップS305,ステップS306の処理の際に記憶された図7のリスティングデータをRAM12より呼び出し、標準設定を新規にインストールするか否かを判定する。即ち、図7のリスティングデータに、Statusが「新規の規定」で機能名が「標準」のデータがリスティングされているか否かを判定する。
ステップS308で、CPU11が、標準設定を新規にインストールしないと判定した場合には、そのままステップS311に進む。
一方、ステップS308で、CPU11が、標準設定を新規にインストールすると判定した場合には、ステップS309において、図7のリスティングデータから標準設定の新規インストールのデータを読み出し、該読み出したデータのフレンドリ名で、カレントのドライバ機種名・接続ポートに対応する標準設定のインストール処理を行う。このステップS309のインストール処理の詳細は後述する図22に示す。
次に、ステップS310において、CPU11は、インストール時の情報を、インストールした仮想プリンタに対応するレジストリ(1)として、図8に示すデータフォーマットでHDD14内のレジストリに記憶する。
図8は、本発明の実施形態における仮想プリンタをインストールする際に、それぞれの仮想プリンタに関する情報として、HDD14のレジストリに追加で書き込むレジストリ(1)のデータ例を示す図である。なお、このレジストリ(1)の情報は、今後、追加でインストールする際等に利用される。
図8に示すように、レジストリ(1)は、ユーザがつけたフレンドリ名、インストール時にインストーラが自動でつけたフレンドリ名、後述する図13に示す設定ファイル等にて既定されたレジストリID等の項目から構成される。なお、「ユーザがつけたフレンドリ名」がない場合は、「インストール時にインストーラがつけたフレンドリ名」と同一のフレンドリ名を、「ユーザがつけたフレンドリ名」に記憶するものとする。
以下、図2のフローチャートの説明に戻る。
次に、ステップS311において、CPU11は、ステップS305,ステップS306の処理の際に記憶された図7のリスティングデータをRAM12より呼び出し、標準設定以外の新規にインストールする仮想プリンタが有るか否かを判定する。即ち、図7のリスティングデータに、Statusが「新規の規定」で機能名が「標準」以外の「新規の*」(例えば、「新規の既定」,「新規の追加」)のデータがリスティングされているか否かを判定する。
ステップS311で、CPU11が、標準設定以外の新規にインストールする仮想プリンタが無いと判定した場合には、そのままステップS316に進む。
一方、ステップS311で、CPU11が、標準設定以外の新規にインストールする仮想プリンタが有ると判定した場合には、ステップS312において、図7のリスティングデータから標準設定以外の新規にインストールする仮想プリンタのデータを1つ読み出し、該読み出したデータのフレンドリ名で、カレントのドライバ機種名・接続ポートに対応する標準設定のインストール処理(後述する図22に示す)を行う。
次に、ステップS313において、CPU11は、ステップS312でインストール処理した標準設定以外の新規にインストールする仮想プリンタのDevmodeの実データをHDD14内のレジストリ(インストールした仮想プリンタに対応するレジストリ)に記憶する。
次に、ステップS314において、CPU11は、インストール時の情報を、インストールした仮想プリンタに対応するレジストリ(1)として、図8に示すデータフォーマットでHDD14内のレジストリに記憶する。
次に、ステップS315において、CPU11は、標準設定以外の新規にインストールする仮想プリンタがまだ存在するか否かを判定し、存在すると判断した場合には、ステップS312の処理に戻り、次の仮想プリンタのインストール処理を行う。
一方、ステップS315で、CPU11が、標準設定以外の新規にインストールする仮想プリンタがもう存在しないと判断した場合には、ステップS316の処理に進む。
次に、ステップS316において、CPU11は、ステップS305,ステップS306の処理の際に記憶された図7のリスティングデータをRAM12より呼び出し、既存の設定変更が有るか否かを判定する。即ち、図7のリスティングデータに、Statusが「既存を変更」,「既存を削除」等のデータがリスティングされているか否かを判定する。
ステップS316で、CPU11が、既存の設定変更が無いと判定した場合には、そのままステップS319に進む。
一方、ステップS316で、CPU11が、既存の設定変更が有ると判断した場合には、ステップS317において、図7のリスティングデータから既存の設定変更のデータを1つ読み出し、該読み出したデータのフレンドリ名に対応する仮想プリンタのDevmodeの実データを、HDD14内の当該仮想プリンタに対応するレジストリに記憶し、フレンドリ名の変更等を行う。なお、既存を削除する場合には、HDD14内の当該仮想プリンタに対応するレジストリのデータを削除するとともに、当該仮想プリンタに対応するレジストリ(1)もHDD14内のレジストリから削除する。
次に、ステップS318において、CPU11は、既存の変更がまだ存在するか否かを判定し、存在すると判断した場合には、ステップS317の処理に戻り、次の既存の変更処理を行う。
一方、ステップS318で、CPU11が、既存の変更がもう存在しないと判断した場合には、ステップS319の処理に進む。
ステップS319において、CPU11は、カレントの機種・ポートに対してインストールステータスを「済」に変更するように図5に示したインストール機種・ポートの選択情報を更新し、図4に示したインストール済みの仮想プリンタの情報も更新し、そして、図5に示したインストール機種・ポートの選択情報に、まだインストールステータスが「未」の情報があるか否かを判定し、まだあると判断した場合には、ステップS305の処理に戻り、次のインストール機種・ポートに対応するインストール処理を行う。
一方、ステップS319で、CPU11が、図5に示したインストール機種・ポートの選択情報に、もうインストールステータスが「未」の情報がないと判定した場合には、本フローチャートの処理を終了する。以上で、インストール作業が終了する。
以下、図9,図10を参照して、図2のステップS304の既存の機種のフレンドリ名の変更処理について説明する。
図9は、本発明の印刷制御装置における第2の制御処理の一例を示すフローチャートであり、図2のステップS304の既存の機種のフレンドリ名の変更処理に対応する。なお、このフローチャートの処理は、図1に示したCPU11がHDD14に格納されるプログラムをRAM12上にロードして実行することにより実現される。また、図中、S701〜S713は各ステップを示す。
まず、ステップS701において、CPU11は、RAM12より図4の既存の仮想プリンタの情報,図5のインストール機種・ポートの選択情報を呼び出し、今からインストールしようとする以外の機種・ポートに対する既存の仮想プリンタが存在するか否かを判定し、存在しないと判定した場合には、そのまま本フローチャートの処理を終了する。
一方、ステップS701で、CPU11が、今からインストールしようとする以外の機種・ポートに対する既存の仮想プリンタが存在すると判定した場合には、既存の仮想プリンタ毎に、以下のステップS702〜S708の処理を実行し、変更する仮想プリンタ名を生成する。
ステップS702において、CPU11は、図4の既存の仮想プリンタの情報からいずれかの仮想プリンタ情報を読み出し、該仮想プリンタ情報に対応する図8に示したレジストリ(1)(以前のインストール処理の際の図3のステップS310,ステップ314でHDD14に記憶されたもの)内のフレンドリ名(ユーザがつけたフレンドリ名)をHDD14から読み出す。そして、図4の既存の仮想プリンタの情報,図5のインストール機種・ポートの選択情報より、最終的に2機種以上になり、且つ、上記レジストリ(1)から読み出したフレンドリ名に既にその機種名が付加されているか否かを判定する。
ステップS702で、CPU11が、最終的に2機種以上にならない、又は、レジストリ(1)から読み出したフレンドリ名に既にその機種名が付加されていると判定した場合には、そのままステップS704の処理に進む。
ステップS702で、CPU11が、最終的に2機種以上になり、且つ、レジストリ(1)から読み出したフレンドリ名にその機種名が付加されていないと判定した場合には、ステップS703において、CPU11は、レジストリ(1)から読み出したフレンドリ名にその機種名を付加し、ステップS704の処理に進む。
ステップS704において、CPU11は、図4の既存の仮想プリンタの情報,図5のインストール機種・ポートの選択情報より、最終的に同機種で2ポート以上になり、且つ、上記レジストリ(1)から読み出したフレンドリ名に既にそのポート名が付加されているか否かを判定する。
ステップS704で、CPU11が、最終的に同機種で2ポート以上にならない、又は、レジストリ(1)から読み出したフレンドリ名に既にそのポート名が付加されていると判定した場合には、そのままステップS706の処理に進む。
ステップS704で、CPU11が、最終的に同機種で2ポート以上になり、且つ、レジストリ(1)から読み出したフレンドリ名にそのポート名が付加されていないと判定した場合には、ステップS705において、CPU11は、レジストリ(1)から読み出したフレンドリ名にそのポート名を付加し、ステップS706の処理に進む。
次に、ステップS706において、CPU11は、ステップS703,S705で作成したフレンドリ名と同一のものがRAM12内の図4の既存の仮想プリンタの情報に存在するか否かを判定し、存在しないと判定した場合には、そのままステップS708に進む。
一方、ステップS706で、CPU11が、ステップS703,S705で作成したフレンドリ名と同一のものがRAM12内の図4の既存の仮想プリンタの情報に存在すると判定した場合には、ステップS707において、CPU11は、該フレンドリ名の最後に「(番号)」を付加する。この際に付加する番号は「2」からとなる。そして、再びステップS706の判定処理に戻り、このフレンドリ名が一意になるまで処理を繰り返す。
次に、ステップS708において、CPU11は、既存のすべての仮想プリンタに対する名称変更を試みるための判定をする。CPU11は、ステップS702〜S708の処理を行っていない既存の仮想プリンタがまだ存在するか否かを判定し、まだ存在すると判定した場合には、ステップS702に戻り、ステップS702〜S708の仮想プリンタに対する名称変更の処理を繰り返す。
一方、ステップS708で、CPU11が、ステップS702〜S708の処理を行ったと判定した場合には、ステップS709において、図10に示す既存の仮想プリンタのフレンドリ名変更ダイアログをディスプレイ16に表示するように制御する。
図10は、本発明の実施形態におけるフレンドリ名変更ダイアログの画面構成の一例を示す模式図である。
図10において、91は既存のフレンドリ名のリストボックスである。CPU11は、この既存のフレンドリ名のリストボックス91に、RAM12に記憶される図4の既存の仮想プリンタのフレンドリ名を表示する。
92は変更するフレンドリ名のリストボックスである。CPU11は、この変更するフレンドリ名のリストボックス92に、図9のステップS702〜S708で作成されたフレンドリ名を表示する。なお、リストボックス91,92の選択フォーカスはCPU11により連動するように制御される。
93はフレンドリ名変更テキストボックスである。このフレンドリ名変更テキストボックス93には、入力装置17により、リストボックス91,92で選択された仮想プリンタのうちリストボックス92で選択されている文字列を表示する。この文字列は入力装置17により変更可能である。
94はフレンドリ名変更ボタンである。このフレンドリ名変更ボタン94が押下されると、CPU11は、フレンドリ名変更テキストボックス93に入力されている文字列を、リストボックス92の該当するフレンドリ名として更新し表示するように制御する。
95は既存を使うボタンである。この既存を使うボタン95が押下されると、CPU11は、フレンドリ名の変更は行わず、このダイアログの表示を終了するように制御する。
96は変更を適用するボタンである。この変更を適用するボタン96が押下されると、CPU11は、リストボックス92に表示されているフレンドリ名を、既存の仮想プリンタに新しく採用し、RAM12の図4の既存の仮想プリンタの情報のフレンドリ名を更新した後、ダイアログの表示を終了するように制御する。
以下、図9のフローチャートの説明に戻る。
ステップS710において、CPU11は、図10に示したフレンドリ名変更ダイアログからのユーザの指示を待機し、ユーザ指示があると、該ユーザ指示を判定する。
ステップS710で、CPU11が、既存名使用指示,変更適用指示以外の指示である(図10のリストボックス91,92でいずれかのフレンドリ名が選択された,フレンドリ名変更テキストボックス93に文字列が入力された,フレンドリ名変更ボタン94が押下された)と判定した場合には、CPU11は、ユーザ指示に対応する処理を行い、ステップS710の処理に戻る。
また、ステップS710で、CPU11が、既存名使用指示である(図10の既存を使うボタン95が押下された)と判定した場合には、そのまま本フローチャートの処理を終了する。
また、ステップS710で、CPU11が、変更適用指示である(図10の変更を適用するボタン96が押下された)と判定した場合には、ステップS712において、HDD14のレジストリに登録されている仮想プリンタのフレンドリ名,RAM12に記憶された図4の既存の仮想プリンタの情報内のフレンドリ名を図10の変更するフレンドリ名のリストボックス92内の名称に変更する。
次に、ステップS713において、HDD14のレジストリに保存されている図8に示したレジストリ(1)内のフレンドリ名を図10の変更するフレンドリ名のリストボックス92内の名称に変更し、本フローチャートの処理を終了する。なお、レジストリ(1)内のフレンドリ名の変更は、フレンドリ名変更テキストボックス93,フレンドリ名変更ボタン94によりユーザが変更したリストボックス92内のフレンドリ名は、レジストリ(1)内のユーザがつけたフレンドリ名に保存し,ユーザにより変更されなかったリストボックス92内のフレンドリ名は、レジストリ(1)内のインストール時にインストーラが付けたフレンドリ名に保存するようにする。
以下、図11〜図20を参照して、図2のステップS305の追加アイコン設定ダイアログ表示処理について説明する。
図11は、本発明の印刷制御装置における第3の制御処理の一例を示すフローチャートであり、図2のステップS305の追加アイコン設定ダイアログ表示処理に対応する。なお、このフローチャートの処理は、図1に示したCPU11がHDD14に格納されるプログラムをRAM12上にロードして実行することにより実現される。また、図中、S1101〜S1123は各ステップを示す。
まず、ステップS1101において、CPU11は、RAM12より図4の既存の仮想プリンタの情報を読み出し、カレントのインストールデータ(機種・ポート)と、インストール済みの同一機種で接続ポートが異なるものが存在するか否かを判定し、存在しないと判定した場合には、ステップ1107において、CPU11は、既にインストールされている同一機種で接続ポートが同一仮想プリンタの設定を、HDD14のレジストリから取得し、図6のリストボックス104に追加するとともに、RAM12の図7に示したリスティングデータに情報を記憶し、ステップS1108に進む。
一方、ステップS1101で、CPU11が、カレントのインストールデータ(機種・ポート)と、インストール済みの同一機種で接続ポートが異なるものが存在すると判定した場合には、ステップ1102において、図12に示す設定引継ぎダイアログをディスプレイ16に表示し、ユーザの指示を待機する。
図12は、本発明の実施形態において、今からインストールするカレントの機種・ポートに対して既存の他ポート同一機種の仮想プリンタの設定を引継がせるための設定引継ぎダイアログの画面構成の一例を示す模式図である。
図12において、リストボックス121は、RAM12の図4の既存の仮想プリンタの情報から得られた、インストールするカレントの機種・ポートと同一機種で接続ポートの異なる仮想プリンタの接続ポートをリスティング表示したものである。
リストボックス122は、リストボックス121にて選ばれている接続ポートに対しインストールされている仮想プリンタのフレンドリ名を表示する。
124は引継ぎ追加ボタンである。この引継ぎ追加ボタン124が押下されると、CPU11は、リストボックス122で選択されている仮想プリンタを、リストボックス123に追加するように制御する。リストボックス123は、ユーザが設定を引継ぎたい仮想プリンタを表示する。
125は引継ぎ削除ボタンである。この引継ぎ削除ボタン125が押下されると、CPU11は、リストボックス123で選択されている仮想プリンタをリストボックス123から削除するように制御する。
126は引継がないボタンである。この引継がないボタン126が押下されると、CPU11は、リストボックス123のリストを全て削除し、本ダイアログを閉じるように制御する。
127は引継ぐボタンである。この引継ぐボタン127が押下されると、CPU11は、リストボックス123のリストをRAM12に一時的に保持し、ダイアログを閉じるように制御する。
以下、図11のフローチャートの説明に戻る。
図12に示した引継ぎダイアログからユーザ指示があると、ステップS1103において、CPU11は、ユーザからの指示が他の設定を引継ぐ指示である(引継ぐボタン127が押下された)か否かを判定し、他の設定を引継ぐ指示でないと判定した場合には、ステップS1107に進み、CPU11は、既にインストールされている同一機種で接続ポートが同一仮想プリンタの設定を、HDD14のレジストリから取得し、図6のリストボックス104に追加するとともに、RAM12の図7に示したリスティングデータに情報を記憶し、ステップS1108に進む。
一方、ステップS1103で、CPU11は、ユーザからの指示が他の設定を引継ぐ指示であると判定した場合には、ステップS1104において、CPU11は、RAM12の図4の既存の仮想プリンタの情報に基づいて、既にインストールされている同一機種で接続ポートが同一なものを図6のリストボックス104に追加するとともに、RAM12の図7に示したリスティングデータに情報を記憶する。
次に、ステップS1105において、CPU11は、図12の引継ぎダイアログでユーザに指定された(リストボックス123に並んだ)既存の仮想プリンタの設定を、HDD14のレジストリから取得し、図12のリストボックス104に追加するとともに、RAM12の図7に示したリスティングデータに情報を追加記憶する。
次に、ステップS1106において、CPU11は、追加した設定のフレンドリ名変更処理を実行し、ステップS1108に移行する。このステップS1106の追加した設定のフレンドリ名変更処理は、ステップS1105で追加したフレンドリ名を適切なものに変更(ポート名変更等)した後、図6のリストボックス104を更新表示するとともに、RAM12の図7に示したリスティングデータに情報を更新する処理である。なお、処理の詳細は、後述する図14に示す。
次に、ステップS1108において、CPU11は、インストーラ(例えば、CD−ROM15で提供されるセットアッププログラム)に同梱された図13に示すようなフォーマットの設定ファイルが存在するか否かを判定し、存在しないと判定した場合には、インストーラの持つ(セットアッププログラム内に組み込まれた)規定の設定を、RAM12に図13に示す設定ファイルのフォーマットと同一のフォーマットで記憶し、ステップS1110に進む。
一方、ステップS1108で、CPU11が、インストーラに同梱された図13に示すようなフォーマットの設定ファイルが存在すると判定した場合には、ステップS1109で、該設定ファイルを読み込み、RAM12に図13に示す設定ファイルのフォーマットのまま記憶し、ステップS1110に進む。
図13は、本発明の実施形態において予め用意されてCD−ROM15で提供されるセットアッププログラムに同梱される設定ファイルのデータ例を示す図である。
図13に示すように、設定ファイルは、図6の追加アイコン設定ダイアログを表示する際のUI(チェックボックス101〜103)表示順、UI(チェックボックス101〜103)上の表記、リストボックス104でフレンドリ名を付加する際の機能名、UI(チェックボックス101〜103)上でのデフォルトでのチェックのON/OFF指定、その既定設定固有のレジストリID、その設定のDevmode等、の項目から構成される。
以下、図11のフローチャートの説明に戻る。
ステップS1110において、CPU11は、RAM12に図13に示すフォーマットで記憶している設定を呼び出し、UI表示順序,UI上表記で、図6のチェックボックス101〜103を配置するように制御する。
次に、ステップS1111において、CPU11は、RAM12から図3のプリンタの構成情報を呼び出し、使用できない設定を含んだDevmodeをもつ既定設定のチェックボックス(ステップS1111で配置したチェックボックス)に対して、図10のチェックボックス103で示すようなDesable処理を行う。
次に、ステップS1112において、CPU11は、RAM12の図7に示したレジストリIDデータと、RAM12の図4の既存の仮想プリンタの情報から得られる既存の仮想プリンタのHDD14のレジストリ上にある、図8に示すレジストリIDとの整合をはかり、一致するものがあれば、図6のチェックボックス101,102をONにし、ONにしたことをRAM12の図7のリスティングデータのチェック指定として記憶する。
次に、ステップS1113において、CPU11は、上述の設定ファイルが存在したかをもう一度判定し、設定ファイルが存在すると判定した場合には、ステップS1114において、CPU11は、設定ファイルのデフォルトチェック指定が自動か否かを判定する。
ステップS1114で、CPU11が、設定ファイルのデフォルトチェック指定が自動でないと判定した場合には、ステップS1118において、CPU11は、設定ファイルのデフォルトチェック指定通りのON/OFF制御を図6のチェックボックス101,102に対し行い、該ON/OFF制御結果を、RAM12の図7のリスティングデータのチェック指定に記憶し、ステップS1119に進む。
一方、ステップS1114で、CPU11が、設定ファイルのデフォルトチェック指定が自動であると判定した場合には、ステップS1115に進む。
一方、ステップS1113で、CPU11が、上述の設定ファイルが存在しないと判定した場合には、ステップS1115に進む。
ステップS1115において、CPU11は、カレントの機種と異なる機種(他機種)が存在するか否かを判定し、他機種が存在すると判定した場合には、ステップS1116において、CPU11は、図6のチェックボックス101の標準設定がOFFならONにするように制御し、該ON/OFF制御結果を、RAM12の図7のリスティングデータのチェック指定に記憶し、ステップS1119に進む。
一方、ステップS1115において、CPU11は、カレントの機種と異なる機種(他機種)が存在しないと判定した場合には、ステップS1117において、CPU11は、図6のチェックボックス101,102の全ての設定を(OFFなら)ONにするように制御し、該ON/OFF制御結果を、RAM12の図7のリスティングデータのチェック指定に記憶し、ステップS1119に進む。
次に、ステップS1119において、CPU11は、ステップS1112〜S1118の処理において図6のチェックボックス101,102で新たにONとなったものがあるか否かを判定し、新たなONが存在すると判定した場合には、CPU11は、新たにONになったいずれかのチェックボックスを取得し、ステップS1120において、該取得した新たにONになったいずれかのチェックボックスに該当する規定設定に対して図15に示すフレンドリ名作成処理を実行し、このステップS1120の新規にONされた規定設定に対するフレンドリ名作成処理では、ONになったチェックボックス101,102に対応する新規にインストールする仮想プリンタのフレンドリ名を作成する。
そして、ステップS1121において、CPU11は、ステップS1120で作成されたフレンドリ名を、図6のリストボックス104のリストに追加表示するとともに、RAM12の図7のリスティングデータに追加記憶する。
次に、ステップS1122において、CPU11は、まだ新たにONになったチェックボックスの中で上記ステップS1120,S1121の処理を行っていないチェックボックスがあるか否かを判定し、まだあると判定した場合には、次の、新たにONになったチェックボックスを取得し、ステップS1120の処理に戻る。
一方、ステップS1122で、CPU11は、もう新たにONになったチェックボックスの中で上記ステップS1120,S1121の処理を行っていないチェックボックスがないと判定した場合には、ステップS1123において、CPU11は、図6に示した追加アイコン設定ダイアログをディスプレイ16に表示し、そのまま本フローチャートの処理を終了する。
一方、ステップS1119で、CPU11が、ステップS1112〜S1118の処理において図6のチェックボックス101,102で新たにONとなったものが存在しないと判定した場合には、ステップS1123において、CPU11は、図6に示した追加アイコン設定ダイアログをディスプレイ16に表示し、そのまま本フローチャートの処理を終了する。
以下、図14を参照して、図11のステップS1106の設定引継ぎにより追加した設定のフレンドリ名変更処理について説明する。
図14は、本発明の印刷制御装置における第4の制御処理の一例を示すフローチャートであり、図11のステップS1106の設定引継ぎにより追加した設定のフレンドリ名変更処理に対応する。なお、このフローチャートの処理は、図1に示したCPU11がHDD14に格納されるプログラムをRAM12上にロードして実行することにより実現される。また、図中、S1301〜S1306は各ステップを示す。
まず、ステップS1301において、CPU11は、図11のステップS1105にてRAM12に追加記憶された図7のリスティングデータに基づいて、該追加記憶された図7のリスティングデータの各フレンドリ名(文字列)に、図12の引継ぎダイアログのリストボックス121で選択されていた接続ポート名が含まれているか否かを判定する。
ステップS1301で、CPU11が、追加記憶された図7のリスティングデータの各フレンドリ名(文字列)に、図12のリストボックス121で選択されていた接続ポート名が含まれていると判定した場合には、ステップS1303において、CPU11は、追加記憶された図7のリスティングデータの各フレンドリ名(文字列)の接続ポート名を、カレントのインストールデータ(機種名・接続ポート名)の接続ポート名と置き換える処理を行い、ステップS1304に進む。
一方、ステップS1301で、CPU11が、追加記憶された図7のリスティングデータの各フレンドリ名(文字列)に、図12のリストボックス121で選択されていた接続ポート名が含まれていないと判定した場合には、ステップS1302において、CPU11は、追加記憶された図7のリスティングデータの各フレンドリ名(文字列)に対して、カレントのインストールデータ(機種名・接続ポート名)の接続ポート名を付加する処理を行い、ステップS1304に進む。
次に、ステップS1304において、CPU11は、ステップS1302,S1303で作成した各フレンドリ名と同一のものがRAM12の図4の既存の仮想プリンタの情報内に存在するか否かを判定し、存在すると判定した場合には、ステップS1305において、CPU11は、存在すると判定された各フレンドリ名の最後に「(数字)」を付加し(この際に付加する数字は「2」からとなり、もし、既に「(数字)」付きなら該数字をインクリメントするように制御する)、ステップS1304の処理に戻り、再びステップS1304の判定を行う。
ステップS1304で、CPU11が、作成した各フレンドリ名と同一のものがRAM12の図4の既存の仮想プリンタの情報内に存在しないと判定した場合には、ステップS1306において、作成された各フレンドリ名で図6のリストボックス104を更新表示するとともに、RAM12の図7のリストデータを更新し、処理を終了する。
以下、図15〜図20を参照して、図11のステップS1120の新規にONされた規定設定に対するフレンドリ名作成処理(および後述する図21に示すフレンドリ名作成処理)について説明する。
図15は、本発明の印刷制御装置における第5の制御処理の一例を示すフローチャートであり、フレンドリ名作成処理に対応する。なお、このフローチャートの処理は、図1に示したCPU11がHDD14に格納されるプログラムをRAM12上にロードして実行することにより実現される。また、図中、S1601〜S1612は各ステップを示す。
まず、ステップS1601において、CPU11は、RAM12の図4の既存の仮想プリンタの情報,図5のインストール機種・ポートの選択情報より、最終的に複数の機種が存在することになるか否かを判定し、存在すると判定した場合には、ステップS1602において、新規フレンドリ名作成の対象となる設定(例えば、新たにONされたチェックボックスの設定や新たに追加設定された設定等)に対応して新規作成するフレンドリ名(新規作成フレンドリ名)に、機種名を付加し、ステップS1603に進む。
一方、ステップS1601において、CPU11が、最終的に複数の機種が存在することにならないと判定した場合には、そのままステップS1603に進む。
次に、ステップS1603において、CPU11は、RAM12の図4の既存の仮想プリンタの情報,図5のインストール機種・ポートの選択情報より、最終的に同一機種に複数の接続ポートが存在する(同一機種が他ポートにも存在する)ことになるか否かを判定し、存在すると判定した場合には、ステップS1604において、新規作成フレンドリ名に、ポート名を付加し、ステップS1605に進む。
一方、ステップS1603において、CPU11が、最終的に同一機種に複数の接続ポートが存在する(同一機種が他ポートにも存在する)ことにならないと判定した場合には、そのままステップS1605に進む。
ステップS1605において、CPU11は、RAM12の図7のリスティングデータにより、新規フレンドリ名作成の対象となる設定が既定設定であるか否かを判定し、既定設定であると判定した場合には、ステップS1606において、CPU11は、新規作成フレンドリ名に、予め用意された機能名を付加し、ステップS1611に進む。
一方、ステップS1605で、CPU11が、新規フレンドリ名作成の対象となる設定が既定設定でないと判定した場合には、ステップS1607において、CPU11は、RAM12より図7のリスティングデータから新規フレンドリ名作成の対象となる設定に対応する仮想プリンタのDevmodeの実データを読み出し、標準のDevmodeのデータとの差分をとる処理を行う。
次に、ステップS1608において、CPU11は、ステップS1607で得た差分をもとに、インストーラ(例えば、CD−ROM15で提供されるセットアッププログラム)に同梱された図16に示すデータベースとの比較を行い、該当するものをリストアップし(洗い出し)、図16のフォーマットでRAM12に記憶する。
図16は、本発明の実施形態におけるDevmodeの設定内容とその機能名を関連付けたデータベースの項目例を示すデータ構成図である。
図16に示すようにDevmodeの設定内容とその機能名を関連付けたデータベースは、管理番号、Devmodeメンバ名、そのID、対応する機能名、機能の分類、名前付けの優先順位、関連する機能の管理番号(関連機能)等の項目で構成される。このデータベースは、予めインストーラ(例えば、CD−ROM15で提供されるセットアッププログラム)に同梱し提供される。
以下、図15のフローチャートの説明に戻る。
次に、ステップS1609において、CPU11は、ステップS1608で洗い出した機能名を優先順位順に並べる処理(詳細は後述する図19に示す)を行い、機能名を決定する。
次に、ステップS1610において、CPU11は、ステップS1609で優先順位順に並べた機能名を、新規作成フレンドリ名に付加する。
次に、ステップS1611において、CPU11は、ステップS1601〜S1610の処理で作成した新規作成フレンドリ名と同一のものがRAM12の図4の既存の仮想プリンタの情報及び図7のリスティングデータ内に存在するか否かを判定し、存在すると判定した場合には、ステップS1612において、CPU11は、上記作成した新規作成フレンドリ名の最後に「(数字)」を付加し(この際に付加する数字は「2」からとなり、もし、既に「(数字)」済みなら該数字をインクリメントするように制御する)、再びステップS1611の判定処理を行う。
一方、ステップS1611で、CPU11が、新規作成フレンドリ名と同一のものがRAM12の図4の既存の仮想プリンタの情報及び図7のリスティングデータ内に存在しないと判定した場合には、そのまま本フローチャートの処理を終了する。
以下、図17〜図20を参照して、図15のステップS1609の機能名を優先順位に並べる処理、即ち、仮想プリンタのフレンドリ名を設定された機能に応じてネーミングするための処理について説明する。
まず、図17,図18を参照して、本実施形態における自動機能名付加用の詳細設定データについて説明する。
予め図17に示すようなフレンドリ名自動付加設定ダイアログ等で詳細な設定を行い、該詳細設定したデータを図18に示すような設定をファイル(自動機能名付加用の詳細設定の保存内容ファイル)としてインストールセット(例えば、CD−ROM15で提供されるセットアッププログラム)に同梱しておく。
図17は、本発明の実施形態における仮想プリンタのフレンドリ名を設定されたその機能に応じてネーミングする際の詳細な設定を行うために提供するフレンドリ名自動付加設定ダイアログの画面構成例を示す模式図である。
図17において、チェックボックス201は、カテゴリ別優先順位による機能名付加を行うかどうかを設定するものである。チェックボックス202は、機能名に付加するカテゴリを選択するものである。
リストボックス203は、チェックボックス202にて、選択されたものをリスティングするためのリストボックスである。
ボタン204は、押下されるとリストボックス203にて選択されている項目のリスティング順を1つ上げるものである。ボタン205は、押下されるとリストボックス203にて選択されている項目のリスティング順を1つ下げるものである。
チェックボックス206は、関連機能の結合を行うかどうかを設定するものである。チェックボックス207は、複数候補選択を行うかどうかを設定するものである。スピンボックス208は、最大表示機能数を指定するものである。
209はキャンセルボタンで、このボタン209が押下されると、図18に示す自動機能名付加用の詳細設定の保存内容ファイルの更新は行われない。210はOKボタンで、このボタン210が押下されると、図17のダイアログ上で設定された内容に基づいて、図18に示す自動機能名付加用の詳細設定の保存内容ファイルの更新が行われる。
図18は、本発明の実施形態における自動機能名付加用の詳細設定の保存内容ファイルの一例を示すデータ構成図である。
図18に示すように、自動機能名付加用の詳細設定の保存内容ファイルは、カテゴリ分けの有無、各カテゴリ(レイアウト,仕上げ,給・排紙,印刷品位,トラブルシューティング)のチェックの有無並びにその優先順位を示す数値情報、関連機能の結合の有無、複数候補選択の有無、最大表示機能数等の項目で構成される。
図19は、本発明の印刷制御装置における第6の制御処理の一例を示すフローチャートであり、図15のステップS1609の機能名を優先順位に並べる処理に対応する。なお、このフローチャートの処理は、図1に示したCPU11がHDD14に格納されるプログラムをRAM12上にロードして実行することにより実現される。また、図中、S1701〜S1713は各ステップを示す。
まず、図示しないステップにおいて、インストールセット(例えば、CD−ROM15で提供されるセットアッププログラム)に同梱された図18に示した自動機能名付加用詳細設定ファイルを読み出し、自動機能名付加用詳細設定データとしてRAM12に保持する。また、RAM12上に本フローチャートで優先順位順に並べた結果の機能名(以下、優先順位順機能名と称する)を格納する領域を保持する。
そして、ステップS1701において、CPU11は、図15のステップS1608にて抽出された機能をリストアップし、図16に示したデータベースと同様のフォーマットでRAM12に記憶する(統一リストの作成)。
次に、ステップS1702において、CPU11は、RAM12の図18に示した自動機能名付加用詳細設定データをもとに、カテゴリ別に分けるか否かを判定し、カテゴリ分けすると判定した(RAM12の図18の自動機能名付加用詳細設定データのカテゴリが「有」である)場合には、ステップS1703に進む。
ステップS1703において、CPU11は、ステップS1701にて作成したリストより、さらにカテゴリ別に抽出したリストを作成し、RAM12に記憶し、いずれかのカテゴリを選択して(該選択されたカテゴリを、以後、カレントカテゴリと称する)、ステップS1704に進む。
一方、ステップS1702で、CPU11が、カテゴリ別に分けないと判定した(RAM12の図18の自動機能名付加用詳細設定データのカテゴリが「無」である)場合には、ステップS1704に進む。
次に、ステップS1704において、CPU11は、RAM12の図18に示したような自動機能名付加用詳細設定データより、関連機能の結合を行うか否かを判定する。
ステップS1704において、CPU11が、関連機能の結合を行うと判定した(RAM12の図18の自動機能名付加用詳細設定データの結合機能が「有」である)場合には、ステップS1705において、CPU11は、優先順位順機能名に、直前に付加した機能に関連した機能が、ステップS1701にて作成したリストもしくはカテゴリ別の場合はステップS1703にて作成したカレントカテゴリのリストに存在するかどうかを判定する(なお、最初にこのステップS1705を実行する際には、まだ直前に付加した機能はないので、存在しないと判定される)。
ステップS1705で、CPU11が、優先順位順機能名に直前に付加した機能に関連した機能が、S1701にて作成したリストに存在しないと判定した場合には、ステップS1706に進む。
次に、ステップS1706において、CPU11は、ステップS1701にて作成したリストもしくはカテゴリ別の場合はステップS1703にて作成したカレントカテゴリのリストのうち、RAM12の図18の自動機能名付加用詳細設定データで優先順位の高いリストから、一番優先順位の高い機能を、優先順位順機能名に付加し、ステップS1708に進む。
一方、ステップS1705で、CPU11が、優先順位順機能名に直前に付加した機能に関連した機能が、ステップS1701にて作成したリストもしくはカテゴリ別の場合はステップS1703にて作成したカレントカテゴリのリストに存在すると判定した場合には、ステップS1707において、CPU11は、ステップS1701にて作成したリストから該当するも機能名を抽出し、優先順位順機能名に付加し、ステップS1708に進む。
次に、ステップS1708において、CPU11は、RAM12の図18の自動機能名付加用詳細設定データ内の「表示最大」項目に基づいて、付加数が最大表示機能数未満か否かを判定し、付加数が最大表示機能数に達したと判定した場合には、ステップS1712の処理に進む。
次に、ステップS1708において、CPU11は、RAM12の図18の自動機能名付加用詳細設定データ内の「表示最大」項目に基づいて、付加数が最大表示機能数未満か否かを判定し、付加数が最大表示機能数未満であると判定した場合には、ステップS1709に進む。
ステップS1709において、CPU11は、ステップS1701にて作成したリストもしくはカテゴリ別の場合はステップS1703にて作成したカレントカテゴリのリストのうち、まだ付加していない機能名が存在する(まだ標準との差異存在)か否かを判定し、存在すると判定した場合には、ステップS1704からの処理を繰り返し続行する。
一方、ステップS1709で、CPU11が、ステップS1701にて作成したリストもしくはカテゴリ別の場合はステップS1703にて作成したカレントカテゴリのリストのうち、もう付加していない機能名が存在しない(もう標準との差異存在しない)と判定した場合には、ステップS1710において、CPU11は、カテゴリ分けされているか否かを再度判定し、カテゴリ分けされていると判定した場合には、ステップS1711において、CPU11は、次の優先順位のカテゴリが存在するか否かを判定する。
ステップS1711で、CPU11が、次の優先順位のカテゴリが存在すると判定した場合には、ステップS1703にて作成したカテゴリ別のリストから次のリストを選択し、ステップS1704からの処理を繰り返し続行する。
一方、ステップS1711で、CPU11が、次の優先順位のカテゴリが存在しないと判定した場合には、ステップS1712において、CPU11は、RAM12の図18に示すよう自動機能名付加用詳細設定データに複数候補選択の設定があるか否かを判定する。
ステップS1712で、CPU11が、RAM12の図18に示すよう自動機能名付加用詳細設定データに複数候補選択の設定がないと判定した場合には、CPU11は、それまでに付加されて作成された優先順位順機能名を優先順位順機能名に決定し、処理を終了する。
一方、ステップS1712で、CPU11が、RAM12の図18に示すよう自動機能名付加用詳細設定データに複数候補選択の設定があると判定した場合には、ステップS1713において、CPU11は、それまでに付加されて作成された優先順位順機能名をステップS1701にて作成したリストをもとに再度洗い出し、ランダムに並べ替えたもの(複数の優先順位順機能名の候補)を図20に示すような候補表示ダイアログに表示するように制御し、ユーザに選択指示を仰ぎ、ユーザからの選択指示があると、該ユーザに選択指示された候補を優先順位順機能名に決定し、処理を終了する。
図20は、本発明の実施形態における仮想プリンタのフレンドリ名を複数の候補から選択できるように提供する候補表示ダイアログの画面構成例を示す模式図である。
図20において、リストボックス211は、図19のステップS1713にて作成された複数の優先順位順機能名の候補を表示する。なお、ユーザは入力装置17によって、リストボックス211から1つのリストを選択することができる。
212はOKボタンで、このボタンが押下されると、リストボックス211にて選択されたリスト(優先順位順機能名の候補)が優先順位順機能名として決定される。
以下、図17のフレンドリ名付加設定ダイアログに示したような設定にて、図16に示すようなデータベースに基づいて、図19のフローチャートに示したような機能名を優先順位順に並べる処理を実行した場合に、どのような機能名の付加が行われるか具体例を用いて示す。
例えば、「2in1+製本+中綴じ+トナー節約」を使用する場合、以下のように機能名が付加される。
まず、フレンドリ名付加設定により、優先順位が1番目の「レイアウト」カテゴリの中で最も優先順位の高い「製本」が付加され、次に、「製本」に関連付けられた「中とじ」が付加され、次に「2in1」が付加され、最大表示機能数が「3」なので、ここで終了する。即ち、作成された名称は、「製本+中とじ+2in1」となる。
もし、フレンドリ名付加設定に「関連機能の結合」のチェック206がなければ、以下のようになる。
まず、フレンドリ名付加設定により、優先順位が1番目の「レイアウト」カテゴリの中で最も優先順位の高い「製本」が付加され、次に、「レイアウト」カテゴリの中で次に優先順位の高い「2in1」が付加される。そして、次に、優先順位の2番目の「印刷品質」カテゴリに属する「節約」が付加され、最大表示機能数が「3」なので、ここで終了する。即ち、作成された名称は、「製本+2in1+節約」となる。
さらに「最大表示機能数」が4ならば、最後に「中とじ」が付加される。即ち、作成された名称は、「製本+2in1+節約+中とじ」となる。
なお、現在、OSによるフレンドリ名の長さ制限について考察する。
将来的にフレンドリ名に対する文字列の長さ制限がなくなる可能性もあるが、現状ではOSの違いによりフレンドリ名の最大長の制限が存在する。その制限に合わせるようにするには、機種名、接続ポート名、機能名、それぞれにおいて最適かつ最短のものを適用する以上に、フレンドリ名の文字列を短くしなくてはならない。これは、本発明を利用しない従来の方法でも同じである。
最終的なフレンドリ名決定の段階で機種名及び機能名に関しては、これまで説明してきた制御をもとに、本発明上にてOSの制限を考慮した設定が可能である。また、接続ポート名に関しても、ネットワークプリンタに対する、あるいは共有プリンタに対するネーミングに対して、長さの決まった既定の文字列(例えば、ネットワークプリンタでは、IPアドレスの最後の3桁のみ)を割り振るよう考慮することが可能である。
以下、図21を参照して、図2のステップS306の追加アイコン設定ダイアログにおけるユーザ指示の処理について説明する。
図21は、本発明の印刷制御装置における第7の制御処理の一例を示すフローチャートであり、図2のステップS306の追加アイコン設定ダイアログにおけるユーザ指示の処理に対応する。なお、このフローチャートの処理は、図1に示したCPU11がHDD14に格納されるプログラムをRAM12上にロードして実行することにより実現される。また、図中、S1901〜S1910は各ステップを示す。
まず、ステップS1901において、CPU11は、追加アイコン設定ダイアログにおけるユーザの指示を判定する。
ステップS1901で、図6の設定参照ボタン106が押下されたと判定した場合には、ステップS1902において、リストボックス104で選択されているフレンドリ名をもとに、RAM12より図7のリスティングデータよりリストボックス104で選択されているフレンドリ名のDevmode実データを呼び出し、プリンタドライバの設定を参照できるUI(図示しない)を表示し、ステップS1901に戻り、ユーザ指示を待機する。
また、ステップS1901で、図6の削除ボタン108が押下された、又は、チェックボックス101,102のチェックがOFFにされたと判定した場合には、ステップS1903において、CPU11は、RAM12より図7のリスティングデータより、リストボックス104で選択されている又はチェックボックス101,102がOFFされたフレンドリ名を、リストボックス104から削除してもよいか否かを判定する。
ステップS1903で、CPU11が、該当するフレンドリ名を削除してよいと判定した場合には、ステップS1904において、CPU11は、図6のリストボックス104のリスティングから該当するフレンドリ名を削除するとともに、RAM12の図7のリスティングデータから該当するデータを削除し、ステップS1901に戻り、ユーザ指示を待機する。
また、ステップS1901で、図6のフレンドリ名変更ボタン110が押下されたと判定した場合には、ステップS1905において、CPU11は、リストボックス104で選択されているフレンドリ名により、RAM12の図7のリスティングデータ内の該当するフレンドリ名を変更(修正)するとともに、テキストボックス109に入力されている文字列で変更(修正)し(リスティング修正)、ステップS1901に戻り、ユーザ指示を待機する。
また、ステップS1901で、CPU11が、チェックボックス101,102のチェックがONにされたと判定した場合には、CPU11は、ステップS1906において、新規にONされた規定設定に対して図15に示したようなフレンドリ名作成処理を実行し、新規にONされた規定設定のフレンドリ名を自動作成する。
次に、ステップS1907において、CPU11は、ステップS1906で新規作成したフレンドリ名に該当するデータをRAM12の図7のリスティングデータに該当データを追加するとともに、ステップS1906で新規作成したフレンドリ名をテキストボックス109に追加し(リスティング追加)、ステップS1901に戻り、ユーザ指示を待機する。
また、ステップS1901で、図6の設定変更ボタン107又は設定追加ボタン105が押下されたと判定した場合には、ステップS1908において、リストボックス104で選択されているフレンドリ名をもとに、RAM12より図7のリスティングデータよりリストボックス104で選択されているフレンドリ名のDevmode実データを呼び出し、プリンタドライバの設定を細かく指定し変更できるUI(図示しない)を表示する。
次に、ステップS1909において、CPU11は、ステップS1908で新規に追加設定された設定に対して図15に示したようなフレンドリ名作成処理を実行し、新規に追加設定された又は変更された設定のフレンドリ名を自動作成する(但し、設定変更の場合はスキップする)。
次に、ステップS1910において、CPU11は、ステップS1909で新規作成したフレンドリ名に該当するデータをRAM12の図7のリスティングデータに追加修正するとともに、ステップS1909で新規作成したフレンドリ名をテキストボックス109に追加修正し(リスティング追加修正(但し、設定変更の場合はデータ修正))、ステップS1901に戻り、ユーザ指示を待機を終了する。
または、ステップS1901で、CPU11が、図6のOKボタン112またはキャンセルボタン111が押下されたと判定した場合には、本フローチャートの処理を終了する。
以下、図22を参照して、図2のステップS309,S312のプリンタドライバのインストール処理について説明する。
また、ステップS1901でCPU11が図6のOKボタン112またはキャンセルボタン111が押下されたと判定した場合には、本フローチャートの処理を終了する。
図22は、本発明の印刷制御装置における第8の制御処理の一例を示すフローチャートであり、図2のステップS309,S312のプリンタドライバのインストール処理に対応する。なお、このフローチャートの処理は、図1に示したCPU11がHDD14に格納されるプログラムをRAM12上にロードして実行することにより実現される。また、図中、S2201〜S2203は各ステップを示す。
まず、ステップS2201において、CPU11は、RAM12の図4の既存の仮想プリンタの情報をもとに、インストール対象のドライバ機種名に対応するプリンタドライバが未インストールか(未だ同一機種のプリンタドライバがインストールされていないか)否かを判定し、未インストールと判定した場合には、ステップS2203において、CPU11は、インストール対象の接続ポートに対して、インストール対象のドライバ機種名のプリンタドライバを新規にインストールして、インストール対象のドライバ機種名・接続ポートに対応するプリンタの標準設定のインストールを行い、本フローチャートの処理を終了する。
一方、ステップS2201で、CPU11が、インストール対象のドライバ機種名に対応するプリンタドライバが未インストールでない(既に同一機種のプリンタドライバがインストールされている)と判定した場合には、ステップS2202において、CPU11は、前記既にインストールされている同一機種のプリンタドライバをインストール対象の接続ポートに対するプリンタ設定にコピーすることで、インストール対象のドライバ機種名・接続ポートに対応するプリンタの標準設定のインストールを行い、本フローチャートの処理を終了する。
以上説明したように、本実施形態によれば、複数プリンタが存在する場合の管理が容易になるとともに、1つの実プリンタに対して複数仮想プリンタを用意する環境の運用方法をユーザに意識させず、且つ、該環境を積極的にユーザに提供することができるので、プリンタをより使いやすい環境をユーザに提供できる。
なお、本発明でインストール可能なプリンタは、コンピュータ10にローカル接続されるプリンタであっても、ネットワークを介して接続されるプリンタであっても、MFP(Multi Function peripheral)等の複合機であってもよい。
また、上記各フローチャートに示した処理に対応するセットアッププログラムは、CD-ROM15により提供されても、ネットワークを介して不図示のサーバにより提供されてもよい。
また、本実施形態で示した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
以下、図23に示すメモリマップを参照して本発明に係る印刷制御装置としての情報処理装置(図1のコンピュータ10)で読み取り可能なデータ処理プログラムの構成について説明する。
図23は、本発明に係る印刷制御装置としての情報処理装置(図1のコンピュータ10)で読み取り(読み出し)可能な各種データ処理プログラムを格納する記録媒体(記憶媒体)のメモリマップを説明する図である。
なお、特に図示しないが、記録媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報,作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、インストールするプログラムやデータが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
本実施形態における図2,図9,図11,図14,図15,図19,図21,図22に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,DVD−ROM,磁気テープ,不揮発性のメモリカード,ROM,EEPROM,シリコンディスク等を用いることができる。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
さらに、本発明を達成するためのソフトウェアによって表されるプログラムをネットワーク上のサーバ,データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。