(57)【要約】【課題】不要なポートを削除しつつ印刷が開始されるまでの待ち時間が長くなることを抑制できる共通プリンタドライバ、及び印刷ポートの管理方法を提供する。【解決手段】共通プリンタドライバであって、１以上のプリンタの中からいずれかのプリンタを選択する選択処理と、選択処理で選択されたプリンタと通信するための論理的な印刷ポートの生成をオペレーティングシステムに要求する生成要求処理と、生成要求処理によって生成された印刷ポートの使用履歴を記録する記録処理（Ｓ１０２）と、使用履歴に基づいて印刷ポートが必要であるか否かを判断し、不要であると判断した印刷ポートの削除をオペレーティングシステムに要求する削除要求処理（Ｓ１０３〜Ｓ１１０）と、を実行させる。【選択図】図５
2011248610.tif 000002
【特許請求の範囲】
【請求項１】
１以上のプリンタと通信可能に接続され、オペレーティングシステムを実行する印刷制御装置に、
１以上の前記プリンタの中からいずれかのプリンタを選択する選択処理と、
前記選択処理で選択されたプリンタと通信するための論理的な印刷ポートの生成を前記オペレーティングシステムに要求する生成要求処理と、
前記生成要求処理によって生成された前記印刷ポートの使用履歴を記録する記録処理と、
前記使用履歴に基づいて前記印刷ポートが必要であるか否かを判断し、不要であると判断した前記印刷ポートの削除を前記オペレーティングシステムに要求する削除要求処理と、
を実行させる共通プリンタドライバ。
【請求項２】
請求項１に記載の共通プリンタドライバであって、
１つの前記印刷ポートは複数のプリンタドライバから共有可能であり、
前記削除要求処理において、不要であると判断した前記印刷ポートが他のプリンタドライバと共有されている場合はその印刷ポートの削除を要求しない、共通プリンタドライバ。
【請求項３】
請求項１又は２に記載の共通プリンタドライバであって、
削除しない印刷ポートを記憶部に登録する登録処理を実行させ、
前記削除要求処理において、不要であると判断した前記印刷ポートが前記記憶部に登録されている場合はその印刷ポートの削除を要求しない、共通プリンタドライバ。
【請求項４】
請求項１乃至請求項３のいずれか一項に記載の共通プリンタドライバであって、
当該共通プリンタドライバは前記削除要求処理とは異なる所定の処理を実行する場合に起動されるものであり、
前記削除要求処理は、前記所定の処理が実行される前、及び／又は後に実行される、共通プリンタドライバ。
【請求項５】
請求項１乃至請求項４のいずれか一項に記載の共通プリンタドライバであって、
前記記録処理において、前記印刷ポートが使用された時を前記使用履歴に記録し、
前記削除要求処理において、最後に使用された時からの経過時間が所定時間以上である印刷ポートを不要な印刷ポートと判断する、共通プリンタドライバ。
【請求項６】
１以上のプリンタと通信可能に接続される印刷制御装置における印刷ポートの管理方法であって、
１以上の前記プリンタの中からいずれかのプリンタを選択する選択段階と、
前記選択段階において選択されたプリンタと通信するための論理的な印刷ポートを生成する生成段階と、
前記生成段階において生成された前記印刷ポートの使用履歴を記録する記録段階と、
前記使用履歴に基づいて前記印刷ポートが必要であるか否かを判断し、不要であると判断した前記印刷ポートを削除する削除段階と、
を含む印刷ポートの管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、共通プリンタドライバ、及び印刷ポートの管理方法に関する。
【背景技術】
【０００２】
従来、利用者によって選択されたプリンタに印刷データを送出するためのポートを生成し、生成したポートの持つ情報を用いてそのプリンタに印刷データを送出した後、生成したポートを削除する印刷システムが知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−１１６６６号公報（段落［０００９］〜［００１０］）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の印刷システムによると、印刷データを送出した後に毎回ポートを削除するので、印刷の際に毎回ポートを生成しなければならず、印刷が開始されるまでの待ち時間が長くなるという問題がある。
【０００５】
本発明は上記のような事情に基づいて完成されたものであって、不要なポートを削除しつつ印刷が開始されるまでの待ち時間が長くなることを抑制できる共通プリンタドライバ、及び印刷ポートの管理方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
第１の発明は、共通プリンタドライバであって、１以上のプリンタと通信可能に接続され、オペレーティングシステムを実行する印刷制御装置に、１以上の前記プリンタの中からいずれかのプリンタを選択する選択処理と、前記選択処理で選択されたプリンタと通信するための論理的な印刷ポートの生成を前記オペレーティングシステムに要求する生成要求処理と、前記生成要求処理によって生成された前記印刷ポートの使用履歴を記録する記録処理と、前記使用履歴に基づいて前記印刷ポートが必要であるか否かを判断し、不要であると判断した前記印刷ポートの削除を前記オペレーティングシステムに要求する削除要求処理と、を実行させる。
この発明によると、不要であると判断した印刷ポートを削除する一方、必要な印刷ポートは削除しないので、不要であると判断した印刷ポートを削除しつつ、必要な印刷ポートを使用して印刷する際に印刷が開始されるまでの待ち時間が長くなることを抑制できる。
【０００７】
第２の発明は、第１の発明の共通プリンタドライバであって、１つの前記印刷ポートは複数のプリンタドライバから共有可能であり、前記削除要求処理において、不要であると判断した前記印刷ポートが他のプリンタドライバと共有されている場合はその印刷ポートの削除を要求しない。
本発明に係る共通プリンタドライバにとっては不要な印刷ポートであっても他のプリンタドライバにとっては必要な印刷ポートである場合もある。本発明の構成によれば、他のプリンタドライバと共有されている印刷ポートを不用意に削除することを防ぐことができる。
【０００８】
第３の発明は、第１又は第２の発明の共通プリンタドライバであって、削除しない印刷ポートを記憶部に登録する登録処理を実行させ、前記削除要求処理において、不要であると判断した前記印刷ポートが前記記憶部に登録されている場合はその印刷ポートの削除を要求しない。
使用履歴に基づいて判断した場合には不要と判断される印刷ポートであっても削除されないようにしたい場合もある。
この発明によると、削除しない印刷ポートを記憶部に登録することにより、その印刷ポートが不要と判断されても削除されないようにできる。
【０００９】
第４の発明は、第１〜第３のいずれかの発明の共通プリンタドライバであって、当該共通プリンタドライバは前記削除要求処理とは異なる所定の処理を実行する場合に起動されるものであり、前記削除要求処理は、前記所定の処理が実行される前、及び／又は後に実行される。
この発明によると、所定の処理が実行される前、及び／又はされた後に印刷ポートの削除が行われるので、ユーザは印刷ポートを削除するためにわざわざ共通プリンタドライバを起動させなくてよい。これにより、ユーザの利便性が向上する。
【００１０】
第５の発明は、第１〜第４のいずれかの発明の共通プリンタドライバであって、前記記録処理において、前記印刷ポートが使用された時を前記使用履歴に記録し、前記削除要求処理において、最後に使用された時からの経過時間が所定時間以上である印刷ポートを不要な印刷ポートと判断する。
この発明によると、所定時間以上使用されなかった印刷ポートを不要な印刷ポートとして削除できる。
【００１１】
第６の発明は、１以上のプリンタと通信可能に接続され、オペレーティングシステムを実行する印刷制御装置における印刷ポートの管理方法であって、１以上の前記プリンタの中からいずれかのプリンタを選択する選択段階と、前記選択段階において選択されたプリンタと通信するための論理的な印刷ポートの生成を前記オペレーティングシステムに要求する生成要求段階と、前記生成要求段階において生成された前記印刷ポートの使用履歴を記録する記録段階と、前記使用履歴に基づいて前記印刷ポートが必要であるか否かを判断し、不要であると判断した前記印刷ポートの削除を前記オペレーティングシステムに要求する削除要求段階と、を含む。
この発明によると、不要なポートを削除しつつ印刷が開始されるまでの待ち時間が長くなることを抑制できる。
【発明の効果】
【００１２】
本発明によれば、不要なポートを削除しつつ印刷が開始されるまでの待ち時間が長くなることを抑制できる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施形態１に係るコンピュータの電気的構成を示すブロック図。
【図２】印刷ポートの生成を説明するための模式図。
【図３】共通プリンタドライバの論理的構成を示すブロック図。
【図４】印刷を行う際に表示される各種のウィンドウの一例を示す模式図。
【図５】印刷処理の流れを示すフローチャート。
【発明を実施するための形態】
【００１４】
＜実施形態１＞
本発明の実施形態１を図１ないし図５によって説明する。
（１）コンピュータの構成
図１は、本発明の実施形態１に係るコンピュータ（印刷制御装置の一例）の電気的構成を示すブロック図である。コンピュータ１（以下「ＰＣ」という）は、ＣＰＵ１１ａ、ＲＯＭ１１ｂ、ＲＡＭ１１ｃ、計時部１１ｄ、記憶部１１ｅ、ディスプレイ駆動回路１１ｆ、ＵＳＢインタフェース１１ｇ（ＵＳＢ  Ｉ／Ｆ）、ネットワークインタフェース１１ｈ（ＮＷ  Ｉ／Ｆ）などを備えて構成されている。
【００１５】
ＣＰＵ１１ａは、ＲＯＭ１１ｂや記憶部１１ｅに記憶されている各種のプログラムを実行することによってＰＣ１の各部を制御する。ＲＯＭ１１ｂにはＣＰＵ１１ａによって実行される各種のプログラムやデータなどが記憶されている。ＲＡＭ１１ｃはＣＰＵ１１ａが各種の処理を実行するための主記憶装置として用いられる。
【００１６】
計時部１１ｄは、現在時刻を取得するためのタイマを備えている。
記憶部１１ｅは、ハードディスクやフラッシュメモリなどの不揮発性の記憶媒体を用いて各種のプログラムやデータを記憶する外部記憶装置である。記憶部１１ｅには、オペレーティングシステム（ＯＳ）、ワードプロセッサや表計算などのアプリケーションプログラム（以下「アプリケーション」という）、共通プリンタドライバ、使用履歴ファイル、ポート登録ファイルなどが記憶される。本実施形態ではＯＳとしてＭｉｃｒｏｓｏｆｔ社のＷＩＮＤＯＷＳ（登録商標）を例に説明する。なお、ＯＳはＷＩＮＤＯＷＳ（登録商標）に限られるものではない。
【００１７】
ディスプレイ駆動回路１１ｆは、表示装置２（ＣＲＴ、液晶ディスプレイなど）を駆動する回路であり、ケーブルを介して表示装置２と接続されている。
ＵＳＢインタフェース１１ｇは例えばＵＳＢ（Universal Serial Bus）ホストインタフェースとして構成されており、ＵＳＢケーブルを介して入力装置３（マウス、キーボードなど）などの機器と接続される。
ネットワークインタフェース１１ｈはＬＡＮやインターネットなどの通信ネットワーク５を介して１以上のプリンタ４と通信可能に接続されている。
【００１８】
プリンタ４（４ａ〜４ｄ）は、紙などの被記録媒体に電子写真方式、インクジェット方式などで画像を形成する装置である。複数のプリンタ４は異なるメーカーのものであったり、同一メーカーの互いに異なる機種であったりする。以降の説明において単にプリンタ４というときはプリンタ４ａ〜４ｄのいずれか１台のプリンタのことをいう。
【００１９】
（２）印刷ポートの生成、削除
図２は、印刷ポートの生成、削除を説明するための模式図である。ここでは印刷ポートとしてＴＣＰ／ＩＰポートを例に説明する。ＴＣＰ／ＩＰポートは通信ネットワーク５を介してプリンタ４と通信するための論理的な通信ポートである。なお、ＴＣＰ／ＩＰポートはＷＩＮＤＯＷＳでは標準ＴＣＰ／ＩＰポートと呼ばれている。
【００２０】
ＴＣＰ／ＩＰポート３６の生成はポートモニタ３５を介して行われる。ポートモニタ３５はＷＩＮＤＯＷＳの一部として提供されるプログラムである。ポートモニタ３５は共通プリンタドライバ３４からポート追加命令を受けると、そのポート追加命令で指定されているポート名が設定されているＴＣＰ／ＩＰポート３６が存在していなければ、指定されているポート名とそのポート追加命令で指定されているＩＰアドレス（通信ネットワーク５上の所在を示す所在情報）とを用いてＴＣＰ／ＩＰポート３６を追加（生成）する。
【００２１】
ＴＣＰ／ＩＰポート３６はポート名が異なる限り同時に複数存在することができ、ポートモニタ３５は共通プリンタドライバ３４からポート切替命令を受けると、そのポート切替命令で指定されているポート名が設定されているＴＣＰ／ＩＰポート３６を有効にする。
また、ポートモニタ３５は共通プリンタドライバ３４からポート削除命令を受けると、そのポート削除命令で指定されているポート名が設定されているＴＣＰ／ＩＰポート３６を削除する。
【００２２】
（３）共通プリンタドライバの論理的構成
図３は、共通プリンタドライバ３４の論理的構成を示すブロック図である。図３には共通プリンタドライバ３４によって用いられる使用履歴ファイル３４ｇ、及びポート登録ファイル３４ｈも併せて示している。
【００２３】
共通プリンタドライバ３４は、機種の異なる複数のプリンタ４で共通に用いることのできるプリンタドライバである。共通プリンタドライバ３４は、プリンタ選択モジュール３４ａ、生成要求モジュール３４ｂ、印刷データ生成モジュール３４ｃ、記録モジュール３４ｄ、削除要求モジュール３４ｅ、登録モジュール３４ｆを備えて構成されている。
【００２４】
プリンタ選択モジュール３４ａは、通信ネットワーク５に接続されているプリンタ４の中からいずれか１台のプリンタ４をユーザに選択させるためのモジュールである。
【００２５】
生成要求モジュール３４ｂは、選択されたプリンタ４と通信するためのＴＣＰ／ＩＰポート３６の生成をポートモニタ３５に要求するモジュールである。具体的には、生成要求モジュール３４ｂは選択されたプリンタ４のＩＰアドレスと生成するポート名とを指定してポートモニタ３５にポート追加命令を出力するとともに、当該ポート名を指定してポートモニタ３５にポート切替命令を出力する。
【００２６】
生成するポート名は、ＩＰアドレスが同じである限り常に同じ名前とする。つまり、共通プリンタドライバ３４では、ＩＰアドレスが同じである限り、一台のプリンタ４について名前が異なる複数のＴＣＰ／ＩＰポート３６は生成されない。
また、ポート名には、共通プリンタドライバ３４から生成されたＴＣＰ／ＩＰポート３６とそれ以外のＴＣＰ／ＩＰポート３６とを識別可能にするために、共通プリンタドライバ３４に固有の文字列（例えば"ｄｒｖ３４"）を含めるものとする。
【００２７】
なお、共通プリンタドライバ３４から生成されたＴＣＰ／ＩＰポート３６を識別する方法は上述した方法に限られるものではなく、例えば共通プリンタドライバ３４から生成されたＴＣＰ／ＩＰポート３６のポート名をファイルに記録しておき、そのファイルにポート名が記録されているＴＣＰ／ＩＰポート３６を共通プリンタドライバ３４から生成されたＴＣＰ／ＩＰポート３６としてもよい。
【００２８】
印刷データ生成モジュール３４ｃは、アプリケーション３１から出力された印刷命令と、ユーザにより設定された印刷条件とに基づいて印刷データを生成し、生成した印刷データをプリントスプーラ３３に出力するモジュールである。
【００２９】
記録モジュール３４ｄは、印刷が行われたときに、計時部１１ｄから現在時刻（年月日時分秒）を取得するとともに、現在選択されているプリンタ４で使用するＴＣＰ／ＩＰポート３６のポート名（現在選択されているプリンタ４のＩＰアドレスが設定されているＴＣＰ／ＩＰポート３６のポート名であって共通プリンタドライバ３４から生成されたＴＣＰ／ＩＰポート３６のポート名）をＯＳから取得し、取得したポート名と現在時刻（使用時刻）とを対応付けて使用履歴ファイル３４ｇに記録するモジュールである。
【００３０】
削除要求モジュール３４ｅは、使用履歴ファイル３４ｇに基づいてＴＣＰ／ＩＰポート３６が必要であるか否かを判断し、不要であると判断したＴＣＰ／ＩＰポート３６の削除をポートモニタ３５に要求するモジュールである。具体的には、削除要求モジュール３４ｅは不要であると判断したＴＣＰ／ＩＰポート３６のポート名を指定してポートモニタ３５にポート削除命令を出力する。
【００３１】
登録モジュール３４ｆは、削除しないＴＣＰ／ＩＰポート３６のポート名をポート登録ファイル３４ｈに登録するモジュールである。
【００３２】
使用履歴ファイル３４ｇは記録モジュール３４ｄによって生成されるファイルであり、現在選択されているプリンタ４で使用するＴＣＰ／ＩＰポート３６のポート名とそのプリンタ４が最後に使用された使用時刻とが記録される。ポート名とＴＣＰ／ＩＰポート３６とは一体一に対応しているので、使用履歴ファイル３４ｇはＴＣＰ／ＩＰポート３６の使用履歴を記録するファイルであるともいえる。
【００３３】
ポート登録ファイル３４ｈは登録モジュール３４ｆによって生成されるファイルであり、削除しないＴＣＰ／ＩＰポート３６のポート名が登録される。
【００３４】
（４）印刷の流れ
図４は、印刷を行う際に表示される各種のウィンドウの一例を示す模式図である。以下の説明において単に「共通プリンタドライバ３４」というときは共通プリンタドライバ３４を実行するＣＰＵ１１ａのことをいうものとする。アプリケーション３１についても同様である。
【００３５】
アプリケーション３１によって表示されるメニューでユーザが印刷を選択すると、アプリケーション３１はプリンタ４の選択や印刷条件の設定などを行うための印刷設定ウィンドウ４０を表示装置２に表示する。
印刷設定ウィンドウ４０でユーザが［ＯＫ］ボタン４０ａをクリックすると、アプリケーション３１は選択されているプリンタ４のプリンタドライバにＯＳを介して印刷命令を出力する。
【００３６】
また、印刷設定ウィンドウ４０には［プロパティ］ボタン４０ｂが設けられている。ユーザが［プロパティ］ボタン４０ｂをクリックすると、アプリケーション３１は選択されているプリンタ４のプリンタドライバを呼び出す。共通プリンタドライバ３４は特定のプリンタ４に対応するものではないので、共通プリンタドライバ３４を呼び出す場合はプリンタ４に替えて共通プリンタドライバ３４を直接選択する。以下、共通プリンタドライバ３４が選択されたものとして説明する。
【００３７】
ユーザが共通プリンタドライバ３４を選択して［プロパティ］ボタン４０ｂをクリックすると、アプリケーション３１から共通プリンタドライバ３４が呼び出される。呼び出された共通プリンタドライバ３４は先ず表示装置２にプリンタ選択ウィンドウ５０を表示する。
【００３８】
次に、共通プリンタドライバ３４はＰＣ１と同じサブネットに接続されているプリンタ４のうち共通プリンタドライバ３４による印刷が可能なプリンタ４を検索し、検索したプリンタ４のＩＰアドレスやプリンタ名をプリンタ選択ウィンドウ５０に一覧表示する。
【００３９】
そして、共通プリンタドライバ３４は、各プリンタ４で使用するＴＣＰ／ＩＰポート３６のポート名（各プリンタ４のＩＰアドレスが設定されているＴＣＰ／ＩＰポート３６のポート名であって共通プリンタドライバ３４から生成されたＴＣＰ／ＩＰポート３６のポート名）をＯＳから取得し、取得したポート名がポート登録ファイル３４ｈに登録されているか否かに応じてプリンタ選択ウィンドウ５０に「未」、又は「登録済」を表示する。この時点でＴＣＰ／ＩＰポート３６が生成されていないプリンタ４の場合は「未」が表示されるものとする。
【００４０】
なお、図４では省略しているが、プリンタ選択ウィンドウ５０ではプリンタ４が備える一般的な印刷機能に対する印刷条件（用紙サイズ、カラー／モノクロ、両面印刷など）を設定することもできる。
【００４１】
ユーザは一覧表示されたプリンタ４の中からいずれかのプリンタ４を任意に選択することができる（選択処理）。いずれかのプリンタ４が選択されている状態でユーザが［ＯＫ］ボタン５０ａをクリックすると、共通プリンタドライバ３４は選択されたプリンタ４と通信するためのＴＣＰ／ＩＰポート３６の生成をポートモニタ３５に要求し（生成要求処理）、その後、プリンタ選択ウィンドウ５０を閉じる。［キャンセル］ボタン５０ｂがクリックされた場合はＴＣＰ／ＩＰポート３６の生成を要求することなくプリンタ選択ウィンドウ５０が閉じられる。
【００４２】
ここで、ユーザは必ずしも毎回プリンタ４を選択する必要はなく、前回と同じプリンタ４に印刷させる場合はプリンタ選択ウィンドウ５０を表示させる必要はない。したがって、共通プリンタドライバ３４は印刷の度に毎回ＴＣＰ／ＩＰポート３６の生成を要求するものではない。
【００４３】
また、プリンタ選択ウィンドウ５０では、ユーザは削除しないＴＣＰ／ＩＰポート３６のポート名を登録することもできる。いずれかのプリンタ４が選択されている状態でユーザが［登録］ボタン５０ｃをクリックすると、共通プリンタドライバ３４は選択されているプリンタ４で使用するＴＣＰ／ＩＰポート３６のポート名をポート登録ファイル３４ｈに登録する（登録処理）。図示するようにプリンタ選択ウィンドウ５０には登録の解除を行うための［登録解除］ボタン５０ｄも表示される。なお、ＴＣＰ／ＩＰポート３６が未だ生成されていないプリンタ４が選択されている状態で［登録］ボタン５０ｃがクリックされた場合はエラーメッセージを表示するものとする。
【００４４】
プリンタ選択ウィンドウ５０が閉じられると、印刷設定ウィンドウ４０に制御が戻る。印刷設定ウィンドウ４０でユーザが［ＯＫ］ボタン４０ａをクリックすると、前述したようにアプリケーション３１から共通プリンタドライバ３４に印刷命令が出力される。共通プリンタドライバ３４は印刷命令が出力されると以下に説明する印刷処理を開始する。
【００４５】
図５は、印刷処理の流れを示すフローチャートである。
Ｓ１０１では、共通プリンタドライバ３４は、アプリケーション３１から出力された印刷命令と、ユーザにより設定された印刷条件とに基づいて印刷データを生成し、生成した印刷データをプリントスプーラ３３に出力する。
【００４６】
図２に示すように、プリントスプーラ３３に出力した印刷データはポートモニタ３５に出力され、ポートモニタ３５は現在有効なＴＣＰ／ＩＰポート３６（現在選択されているプリンタ４で使用するＴＣＰ／ＩＰポート３６）にその印刷データを出力する。ＴＣＰ／ＩＰポート３６に出力された印刷データは当該ＴＣＰ／ＩＰポート３６に設定されているＩＰアドレスが付与されているプリンタ４に通信ネットワーク５を経由して送信される。
【００４７】
Ｓ１０２では、共通プリンタドライバ３４は選択されているプリンタ４で使用するＴＣＰ／ＩＰポート３６のポート名と現在時刻とを対応付けて使用履歴ファイル３４ｇに記録する（記録処理）。なお、既にそのポート名が使用履歴ファイル３４ｇに記録されている場合はそのポート名に対応付けられている使用時刻を現在時刻で更新するものとする。
【００４８】
次に説明するＳ１０３〜Ｓ１１０の処理は、使用履歴に基づいてＴＣＰ／ＩＰポートが必要であるか否かを判断し、不要であると判断したＴＣＰ／ＩＰポートの削除をポートモニタ３５に要求する処理である（削除要求処理）。
【００４９】
Ｓ１０３では、共通プリンタドライバ３４は、先ず共通プリンタドライバ３４から生成されたＴＣＰ／ＩＰポート３６のうち現在選択されているプリンタ４で使用するＴＣＰ／ＩＰポート３６以外のＴＣＰ／ＩＰポート３６（「他のＴＣＰ／ＩＰポート３６」という）のポート名をＯＳから取得する。具体的には例えば、ＷＩＮＤＯＷＳの場合は各ＴＣＰ／ＩＰポート３６に設定されているポート名がレジストリに登録されるので、共通プリンタドライバ３４はレジストリからそれらのポート名（前述した固有の文字列が含まれているもののみ）を取得する。
共通プリンタドライバ３４は１以上のポート名を取得できた場合は他のＴＣＰ／ＩＰポート３６が存在していると判断してＳ１０４に進み、ポート名を取得できなかった場合は他のＴＣＰ／ＩＰポート３６が存在していないと判断して処理を終了する。
【００５０】
Ｓ１０４では、共通プリンタドライバ３４はＳ１０３で取得したポート名の中から一つを選択する。Ｓ１０４の処理が２回目以降である場合はＳ１０３で取得したポート名のうち未だ選択していないポート名を選択するものとする。
【００５１】
Ｓ１０５では、共通プリンタドライバ３４はＳ１０４で選択したポート名が使用履歴ファイル３４ｇに記録されているか否かを判断し、使用履歴ファイル３４ｇに記録されている場合はＳ１０６に進み、記録されていない場合はＳ１０７に進む。
【００５２】
Ｓ１０６では、共通プリンタドライバ３４は先ず使用履歴ファイル３４ｇからＳ１０４で選択したポート名に対応付けられている使用時刻を取得する。次に、共通プリンタドライバ３４は取得した使用時刻から現在時刻までの経過時間が所定時間以上であるか否かを判定し、所定時間以上である場合は不要なＴＣＰ／ＩＰポート３６であると判断してＳ１０７に進み、所定時間未満である場合は必要なＴＣＰ／ＩＰポート３６であると判断してＳ１１０に進む。
【００５３】
Ｓ１０７では、共通プリンタドライバ３４はＳ１０４で選択したポート名がポート登録ファイル３４ｈに登録されているか否かを判断し、登録されていない場合はＳ１０８に進み、登録されている場合は後述するＳ１０８〜Ｓ１０９の処理をスキップしてＳ１１０に進む。登録されている場合はＳ１０９の処理がスキップされるので、Ｓ１０４で選択したポート名が設定されているＴＣＰ／ＩＰポート３６は不要であっても削除されないことになる。
【００５４】
Ｓ１０８では、共通プリンタドライバ３４はＳ１０４で選択したポート名が設定されているＴＣＰ／ＩＰポート３６が他のプリンタドライバと共有されているか否かを判断するための情報をＯＳから取得し、取得した情報に基づいて他のプリンタドライバと共有されているか否かを判断し、共有されていない場合はＳ１０９に進み、共有されている場合は後述するＳ１０９の処理をスキップしてＳ１１０に進む。共有されている場合はＳ１０９の処理がスキップされるので、Ｓ１０４で選択したポート名が設定されているＴＣＰ／ＩＰポート３６は不要であっても削除されないことになる。
【００５５】
Ｓ１０９では、共通プリンタドライバ３４はＳ１０４で選択したポート名が設定されているＴＣＰ／ＩＰポート３６の削除をポートモニタ３５に要求する。
【００５６】
Ｓ１１０では、共通プリンタドライバ３４はＳ１０３で取得した全てのポート名の選択が終了したか否かを判断し、終了している場合は印刷処理を終了し、終了していない場合はＳ１０４に戻って処理を繰り返す。
【００５７】
（５）実施形態の効果
以上説明した本発明の実施形態１に係る共通プリンタドライバ３４によると、不要であると判断したＴＣＰ／ＩＰポート３６を削除する一方、必要なＴＣＰ／ＩＰポート３６（本実施形態では現在選択されているＴＣＰ／ＩＰポート３６、及び使用履歴ファイル３４ｇに記録されている使用時刻から現在時刻までの経過時間が所定時間未満であるＴＣＰ／ＩＰポート３６）は削除しないので、不要であると判断したＴＣＰ／ＩＰポート３６を削除しつつ、必要なＴＣＰ／ＩＰポート３６を使用して印刷する際に印刷が開始されるまでの待ち時間が長くなることを抑制できる。
【００５８】
更に、共通プリンタドライバ３４によると、ＴＣＰ／ＩＰポート３６が使用された時の現在時刻を使用履歴ファイル３４ｇに記録し、最後に使用された時からの経過時間が所定時間以上であるＴＣＰ／ＩＰポート３６を不要なＴＣＰ／ＩＰポート３６と判断するので、所定時間以上使用されなかったＴＣＰ／ＩＰポート３６を不要なＴＣＰ／ＩＰポート３６として削除できる。
【００５９】
更に、共通プリンタドライバ３４によると、不要であると判断したＴＣＰ／ＩＰポート３６が他のプリンタドライバと共有されている場合はそのＴＣＰ／ＩＰポート３６の削除を要求しない。共通プリンタドライバ３４にとっては不要なＴＣＰ／ＩＰポート３６であっても他のプリンタドライバにとっては必要なＴＣＰ／ＩＰポート３６である場合もある。共通プリンタドライバ３４によると、他のプリンタドライバと共有されているＴＣＰ／ＩＰポート３６を不用意に削除することを防ぐことができる。
【００６０】
更に、共通プリンタドライバ３４によると、ポート登録ファイル３４ｈにポート名が登録されているＴＣＰ／ＩＰポート３６については不要であると判断しても削除を要求しない。これは、使用履歴に基づいて判断した場合には不要と判断されるＴＣＰ／ＩＰポート３６であっても削除されないようにしたい場合もあるからである。
例えば、一時的に使用しなくてなってもいずれ使用することが分かっている場合などである。この場合、一時的に使用しないことによってそのプリンタ４のＴＣＰ／ＩＰポート３６が削除されてしまうと、そのプリンタ４を使用するときになって印刷が開始されるまでの時間が長くなってしまう。
共通プリンタドライバ３４によると、削除しないＴＣＰ／ＩＰポート３６をポート登録ファイル３４ｈに登録することにより、そのＴＣＰ／ＩＰポート３６が削除されないようにできる。
【００６１】
更に、共通プリンタドライバ３４は、Ｓ１０１の印刷処理（所定の処理の一例）を実行する場合に起動されるものであり、削除要求処理は印刷処理（より正確には印刷処理、及び記録処理）が実行された後に実行されるので、ユーザはＴＣＰ／ＩＰポート３６の削除を指示するためにわざわざ共通プリンタドライバ３４を起動させなくてよい。これにより、ユーザの利便性が向上する。
【００６２】
＜他の実施形態＞
本発明は上記記述及び図面によって説明した実施形態に限定されるものではなく、例えば次のような実施形態も本発明の技術的範囲に含まれる。
【００６３】
（１）上記実施形態では最後に使用された時からの経過時間が所定時間以上であるＴＣＰ／ＩＰポート３６を不要なＴＣＰ／ＩＰポート３６と判断する場合を例に説明したが、例えば使用頻度（単位時間当たりの使用回数）に基づいて判断してもよい。
具体的には例えば、ＴＣＰ／ＩＰポート３６が使用された時刻を記録していき、印刷（Ｓ１０１）が実行された時から遡って所定時間以内に記録されている時刻の数が所定数以下であるポート名が設定されているＴＣＰ／ＩＰポート３６を不要なＴＣＰ／ＩＰポート３６と判断してもよい。
【００６４】
（２）上記実施形態では印刷（Ｓ１０１）や記録処理（Ｓ１０２）が実行された後にＴＣＰ／ＩＰポート３６の削除要求処理を実行しているが、削除要求処理をどのタイミングで実行するかは適宜選択可能であり、例えば、プリンタ４の選択、ＴＣＰ／ＩＰポート３６の生成要求、ＴＣＰ／ＩＰポート３６の登録などの処理の前、あるいはそれらの処理の後に実行してもよいし、いずれか一つの処理の前又は後のタイミングではなく、複数のタイミングで実行してもよい。
【符号の説明】
【００６５】
１・・・コンピュータ
４（４ａ〜４ｄ）・・・プリンタ
５・・・通信ネットワーク
３１・・・アプリケーション
３４・・・共通プリンタドライバ
３４ａ・・・プリンタ選択モジュール
３４ｂ・・・生成要求モジュール
３４ｃ・・・印刷データ生成モジュール
３４ｄ・・・記録モジュール
３４ｅ・・・削除要求モジュール
３４ｆ・・・登録モジュール
３４ｇ・・・使用履歴ファイル
３４ｈ・・・ポート登録ファイル
３５・・・ポートモニタ
３６・・・ＴＣＰ／ＩＰポート
【図１】
2011248610.tif 000003
【図２】
2011248610.tif 000004
【図３】
2011248610.tif 000005
【図４】
2011248610.tif 000006
【図５】
2011248610.tif 000007