JP4930811B2 - 印刷制御プログラム、監視プログラム、及び印刷制御方法 - Google Patents

印刷制御プログラム、監視プログラム、及び印刷制御方法 Download PDF

Info

Publication number
JP4930811B2
JP4930811B2 JP2010102267A JP2010102267A JP4930811B2 JP 4930811 B2 JP4930811 B2 JP 4930811B2 JP 2010102267 A JP2010102267 A JP 2010102267A JP 2010102267 A JP2010102267 A JP 2010102267A JP 4930811 B2 JP4930811 B2 JP 4930811B2
Authority
JP
Japan
Prior art keywords
location information
printer
information
setting
port
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2010102267A
Other languages
English (en)
Other versions
JP2011232938A (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.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2010102267A priority Critical patent/JP4930811B2/ja
Priority to US13/073,389 priority patent/US8760689B2/en
Priority to CN201110112574.4A priority patent/CN102236536B/zh
Publication of JP2011232938A publication Critical patent/JP2011232938A/ja
Application granted granted Critical
Publication of JP4930811B2 publication Critical patent/JP4930811B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/082Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1224Client or server resources management
    • G06F3/1225Software update, e.g. print driver, modules, plug-ins, fonts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Description

本発明は、印刷制御プログラム、監視プログラム、及び印刷制御方法に関する。
従来、プリンタの複数の機種で共通に用いられるプリンタドライバである共通プリンタドライバが知られている(例えば、特許文献1参照)。共通プリンタドライバでは、ユーザによって選択されたプリンタのIPアドレスが設定されている論理的な印刷ポート(例えばTCP/IPポート)を「使用する印刷ポート」として設定し、その印刷ポートを用いて印刷を行っている。
特開2009−301127号公報
ところで、共通プリンタドライバ自体はユーザ権限で実行されることが可能であるが、一般に印刷ポートの設定はユーザ権限では行えない。この場合、ユーザに管理者権限を与えれば共通プリンタドライバから印刷ポートを設定できるが、ユーザに管理者権限を与えることは管理上望ましくない。
従来はこのような共通プリンタドライバをユーザ権限で実行させる場合の印刷ポートの設定の問題について十分に検討されていなかった。
本発明は上記のような事情に基づいて完成されたものであって、共通プリンタドライバをユーザ権限で実行させても印刷ポートを設定できる印刷制御プログラム、監視プログラム、及び印刷制御方法を提供することを目的とする。
第1の発明は、通信ネットワークを介して1以上のプリンタと通信可能に接続されているコンピュータで実行される印刷制御プログラムであって、当該印刷制御プログラムは、プリンタの複数の機種で共通に用いられる共通プリンタドライバと監視プログラムとを備えて構成されており、前記共通プリンタドライバは、1以上の前記プリンタの中からいずれかのプリンタを選択する選択手段と、前記選択手段によって選択されたプリンタの前記通信ネットワーク上の所在を示す所在情報を設定情報に書き込む書き込み手段として前記コンピュータを機能させ、前記監視プログラムは、前記設定情報を監視して前記所在情報の書き込みを検出する書き込み監視手段と、前記書き込み監視手段によって前記所在情報の書き込みが検出された場合に、当該書き込まれた所在情報が設定されている論理的な印刷ポートを、使用する印刷ポートとして設定するポート設定手段として前記コンピュータを機能させる。
この発明は、共通プリンタドライバがユーザ権限で実行され、監視プログラムがシステム権限で実行されていて、ユーザの権限に関わらず監視プログラムを実行できることを前提にしている。
この発明によると、共通プリンタドライバが設定情報に所在情報を書き込むと、書き込んだ所在情報が設定されている論理的な印刷ポートが監視プログラムによって「使用する印刷ポート」として設定されるので、共通プリンタドライバは選択されたプリンタの所在情報を設定情報に書き込むことにより、ユーザ権限で実行されても印刷ポートを設定できる。
第2の発明は、第1の発明の印刷制御プログラムであって、前記書き込み手段は、前記選択手段によって選択されたプリンタの前記所在情報が既に前記設定情報に書き込まれている場合は、既に書き込まれている前記所在情報を削除して新たに書き込む。
この発明によると、選択されたプリンタの所在情報が既に設定情報に書き込まれている場合は、その所在情報を削除して新たに書き込むことにより、設定情報に所在情報が書き込まれたことを監視手段に検出させる。そのため、既に設定情報に所在情報が書き込まれているプリンタが再度選択されてもそのプリンタの所在情報が設定されている印刷ポートを「使用する印刷ポート」として設定できる。
第3の発明は、第1又は第2の発明の印刷制御プログラムであって、前記共通プリンタドライバは、前記設定情報から前記所在情報を削除する所在情報削除手段として前記コンピュータを機能させ、前記監視プログラムは、前記設定情報を監視して前記所在情報の削除を検出する削除監視手段と、前記削除監視手段によって前記所在情報の削除が検出された場合に、当該削除された所在情報が設定されている前記印刷ポートを削除するポート削除手段として前記コンピュータを機能させる。
この発明によると、共通プリンタドライバは設定情報から所在情報を削除することにより、ユーザ権限で実行されても印刷ポートを削除できる。
第4の発明は、第3の発明の印刷制御プログラムであって、前記所在情報削除手段は、削除した前記所在情報を表わす削除情報を前記設定情報に書き込み、前記ポート削除手段は、前記削除情報が表す前記所在情報が設定されている前記印刷ポートを削除する。
この発明によると、削除した所在情報を表わす削除情報を設定情報に書き込むことにより、ポート削除手段はどの所在情報が削除されたかを知ることができる。
第5の発明は、第3又は第4の発明の印刷制御プログラムであって、前記所在情報削除手段は、前記設定情報に前記所在情報が書き込まれている各前記プリンタについて印刷可能な状態であるか否かを判断し、印刷不可能な状態であると判断した前記プリンタの前記所在情報を前記設定情報から削除する。
この発明によると、印刷不可能なプリンタの所在情報が設定されている印刷ポートを削除することにより、無用な印刷ポートが残ってしまわないようにすることができる。
第6の発明は、第1〜第5のいずれかの発明の印刷制御プログラムであって、前記コンピュータは表示装置を備え、前記書き込み手段は、前記選択手段によって選択されたプリンタが備える印刷機能を表わす印刷機能情報を当該プリンタから取得し、前記所在情報と前記印刷機能情報とを対応付けて前記設定情報に書き込み、前記選択手段は、前記通信ネットワークに接続されている1以上の前記プリンタをそのプリンタの前記印刷機能情報とともに前記表示装置に表示してユーザにプリンタを選択させるものであり、この表示において、前記所在情報が前記設定情報に書き込まれているプリンタの場合は前記設定情報から前記印刷機能情報を読み込んで表示し、前記所在情報が前記設定情報に書き込まれていないプリンタの場合はそのプリンタから前記印刷機能情報を取得して表示する。
この発明によると、所在情報と印刷機能情報とを対応付けて設定情報に書き込み、それらを表示装置に表示することにより、ユーザが自身の目的に応じたプリンタを選択し易くなる。
第7の発明は、第1〜第6のいずれかの発明の印刷制御プログラムであって、前記コンピュータは表示装置を備え、前記共通プリンタドライバは、印刷条件を設定するための設定画面を前記表示装置に表示してユーザに印刷条件を設定させる印刷条件設定手段として前記コンピュータを機能させ、前記書き込み手段は、前記選択手段によって選択されたプリンタの前記所在情報と前記設定手段で設定された印刷条件とを対応付けて前記設定情報に書き込み、前記印刷条件設定手段は、前記選択されたプリンタに対する次回の印刷条件の設定において、当該プリンタの前記所在情報に対応付けられて前記設定情報に書き込まれている印刷条件を前記設定画面に初期値として表示する。
この発明によると、前回設定した印刷条件を初期値として表示することにより、次回の印刷において前回と同様の印刷条件を設定する場合に設定の手間を低減できる。
第8の発明は、監視プログラムであって、通信ネットワークを介して1以上のプリンタと通信可能に接続されているコンピュータを、前記プリンタの前記通信ネットワーク上の所在を示す所在情報が書き込まれる設定情報を監視して前記所在情報の書き込みを検出する書き込み監視手段と、前記書き込み監視手段によって前記所在情報の書き込みが検出された場合に、当該書き込まれた所在情報が設定されている論理的な印刷ポートを、使用する印刷ポートとして設定するポート設定手段として機能させる。
この発明によると、共通プリンタドライバは選択されたプリンタの所在情報を設定情報に書き込むことにより、ユーザ権限で実行されても印刷ポートを設定できる。
第9の発明は、通信ネットワークを介して1以上のプリンタと通信可能に接続されているコンピュータを用いた印刷制御方法であって、1以上の前記プリンタの中からいずれか1つのプリンタを選択するプリンタ選択段階と、前記プリンタ選択段階で選択されたプリンタの前記通信ネットワーク上の所在を示す所在情報を設定情報に書き込む書き込み段階と、前記設定情報を監視して前記所在情報の書き込みを検出する書き込み監視段階と、前記書き込み監視段階において前記所在情報の書き込みが検出された場合に、当該書き込まれた所在情報が設定されている論理的な印刷ポートを、使用する印刷ポートとして設定するポート設定段階と、を含む。
この発明によると、共通プリンタドライバは選択されたプリンタの所在情報を設定情報に書き込むことにより、ユーザ権限で実行されても印刷ポートを設定できる。
本発明によれば、共通プリンタドライバをユーザ権限で実行させても印刷ポートを設定できる。
本発明の実施形態1に係るコンピュータのブロック図。 印刷ポートの設定を説明するための模式図。 印刷制御プログラムの論理的構成を示すブロック図。 TCP/IPポートを追加する処理の流れを示すフローチャート。 TCP/IPポートを削除する処理の流れを示すフローチャート。
<実施形態1>
本発明の実施形態1を図1ないし図5によって説明する。
(1)コンピュータの構成
図1は、本発明の実施形態1に係るコンピュータの電気的構成を示すブロック図である。コンピュータ1(以下「PC」という)は、CPU11、ROM12、RAM13、記憶部14、ディスプレイ駆動回路15、USBインタフェース(USB I/F)16、ネットワークインタフェース(NW I/F)17などを備えて構成されている。
CPU11(選択手段、書き込み手段、監視手段、ポート設定手段、所在情報削除手段、削除監視手段、ポート削除手段、印刷条件設定手段の一例)は、ROM12や記憶部14に記憶されている各種のプログラムを実行することによってPC1の各部を制御する。ROM12にはCPU11によって実行される各種のプログラムやデータなどが記憶されている。RAM13はCPU11が各種の処理を実行するための主記憶装置として用いられる。
記憶部14は、ハードディスクやフラッシュメモリなどの不揮発性の記憶媒体を用いて各種のプログラムやデータを記憶する外部記憶装置である。記憶部14には、オペレーティングシステム(OS)、アプリケーションプログラム(以下「アプリケーション」という)、印刷制御プログラム、INIファイル(設定情報の一例)などが記憶されている。本実施形態ではOSとしてMicrosoft社のWINDOWS(登録商標)を例に説明する。なお、OSはWINDOWS(登録商標)に限られるものではない。
ディスプレイ駆動回路15(選択手段の一例)は、表示装置18(CRT、液晶ディスプレイなど)を駆動する回路であり、ケーブルを介して表示装置18と接続されている。
USBインタフェース16(選択手段の一例)は例えばUSB(Universal Serial Bus)ホストインタフェースとして構成されており、USBケーブルを介して入力装置19(マウス、キーボードなど)などの機器と接続される。
ネットワークインタフェース17はLANやインターネットなどの通信ネットワーク3を介して1以上のプリンタ2と通信可能に接続されている。
プリンタ2(2a〜2d)は、紙などの被記録媒体に電子写真方式、インクジェット方式などで画像を形成する装置である。複数のプリンタ2は異なるメーカーのものであったり、同一メーカーの互いに異なる機種であったりする。
(2)印刷ポートの設定
図2は、印刷制御プログラム50による印刷ポートの設定を説明するための模式図である。ここでは印刷ポートとしてTCP/IPポートを例に説明する。TCP/IPポートはTCP/IPネットワークを介してプリンタと通信するための論理的な通信ポートである。なお、TCP/IPポートはWINDOWSでは標準TCP/IPポートと呼ばれている。
印刷ポートの設定はポートモニタ44を介して行われる。ポートモニタ44はWINDOWSの一部として提供されるプログラムであり、管理者権限を有するユーザによって実行されるプログラム以外からの命令は受け付けないプログラムである。
ポートモニタ44は、印刷制御プログラム50からポート追加命令を受けると、そのポート追加命令で指定されているIPアドレス(通信ネットワーク3上の所在を示す所在情報の一例)が設定されているTCP/IPポート45を追加する。
また、ポートモニタ44はIPアドレスが異なる複数のTCP/IPポート45を追加することができ、印刷制御プログラム50からのポート切替命令を受けていずれかのTCP/IPポート45を有効にする。
いずれかのTCP/IPポート45が有効な状態で印刷制御プログラム50からプリントスプーラ43に印刷データが出力されると、ポートモニタ44によってその印刷データが取得され、有効なTCP/IPポート45(「使用する印刷ポート」の一例)に出力される。
また、ポートモニタ44は印刷制御プログラム50からポート削除命令を受けると、そのポート削除命令で指定されているIPアドレスが設定されているTCP/IPポート45を削除する。
(3)印刷制御プログラムの論理的構成
図3は、印刷制御プログラム50の論理的構成を示すブロック図である。印刷制御プログラム50は、共通プリンタドライバ51と、監視プログラム52と、INIファイル53とを備えて構成されている。
(3−1)共通プリンタドライバ
共通プリンタドライバ51は機種の異なる複数のプリンタ2で共通に用いられるプリンタドライバである。共通プリンタドライバ51はユーザ権限で実行されるプログラムであり、前述したようにポートモニタ44は管理者権限を有するユーザによって実行されるプログラム以外からの命令は受け付けないので、共通プリンタドライバ51から直接ポートモニタ44にポートの追加や削除を行わせることはできない。
共通プリンタドライバ51は、プリンタ選択モジュール51a、印刷条件設定モジュール51b、印刷データ生成モジュール51c、書き込みモジュール51d、所在情報削除モジュール51eなどを備えて構成されている。
プリンタ選択モジュール51aは、PC1と同じサブネットに接続されているプリンタ2を検索し、検索した1以上のプリンタ2の中からいずれか1つのプリンタ2をユーザに選択させるためのモジュールである。
具体的には例えば、プリンタ選択モジュール51aはユーザがプリンタ2を選択するための図示しないプリンタ選択画面を表示装置18に表示し、検索したプリンタ2のプリンタ名をプリンタ選択画面に一覧表示する。また、プリンタ選択モジュール51aは検索したプリンタ2が備える印刷機能を表わす印刷機能情報がINIファイル53に書き込まれている場合はINIファイル53からその印刷機能情報を読み出し、一方、INIファイル53に書き込まれていない場合はプリンタ2からそのプリンタ2の印刷機能情報を取得してプリンタ名とともにプリンタ選択画面に表示する。
印刷条件設定モジュール51bはプリンタ選択モジュール51aから呼び出されるモジュールであり、ユーザが印刷条件を設定するための図示しない印刷条件設定画面(設定画面の一例)を表示装置18に表示する。同一メーカーのプリンタ2であっても機種によって印刷機能が異なるので、印刷条件設定画面で設定可能な印刷条件も機種によって異なる。印刷条件設定モジュール51bは選択されたプリンタ2の印刷機能情報をINIファイル53から読み出し、そのプリンタ2が備える印刷機能に対する印刷条件のみを設定可能に印刷条件設定画面を表示する。
印刷データ生成モジュール51cは、アプリケーション41から出力された印刷命令と、印刷条件設定モジュール51bで設定された印刷条件とに基づいて印刷データを生成するモジュールである。
より具体的には、図2に示すようにアプリケーション41はGDI42に印刷命令(GDI命令)を出力し、GDI42はその印刷命令を描画命令(DDI命令)に変換して共通プリンタドライバ51に出力する。印刷データ生成モジュール51cはその描画命令と印刷条件とに基づいて印刷データを生成する。
書き込みモジュール51dは、プリンタ選択モジュール51aで選択されたプリンタ2のIPアドレスと、そのプリンタ2の印刷機能情報とを対応付けてINIファイル53に書き込むモジュールである。
所在情報削除モジュール51eは、INIファイル53にIPアドレスが書き込まれている各プリンタ2が現在印刷可能な状態であるか否かを判断し、印刷不可能な状態であると判断したプリンタ2のIPアドレスをINIファイル53から削除するとともに、削除したIPアドレスを示す削除情報をINIファイル53に書き込むモジュールである。
所在情報削除モジュール51eは例えばアプリケーション41からプリンタ選択モジュール51aが呼び出された直後に実行され、プリンタ選択モジュール51aは所在情報削除モジュール51eによって印刷可能な状態であると判断されたプリンタ2のみをプリンタ選択画面に一覧表示する。
プリンタ2が現在印刷可能な状態であるか否かは、例えばプリンタ2との通信が可能な状態であれば印刷可能な状態であると判断してもよいし、通信が可能な状態であり、且つプリンタ2にセットされているインクや被記録媒体の残量が所定量以上であれば印刷可能な状態であると判断してもよい。
(3−2)監視プログラム
監視プログラム52はWindowsサービスと呼ばれる常駐プログラムとして実行されるプログラムであり、INIファイル53を監視してポートモニタ44にポートの追加や削除を行わせる。監視プログラム52はシステム権限で実行されるプログラムであるため、ユーザの権限に関わらずポートモニタ44にポートの追加や削除を行わせることができる。
監視プログラム52は、監視モジュール52a、ポート設定モジュール52b、ポート削除モジュール52cなどを備えて構成されている。
監視モジュール52aは、INIファイル53を常時監視してINIファイル53へのIPアドレスの書き込みやINIファイル53からのIPアドレスの削除を検出するモジュールである。
ポート設定モジュール52bは、監視モジュール52aによってINIファイル53へのIPアドレスの書き込みが検出された場合に、INIファイル53に書き込まれたIPアドレスが設定されているTCP/IPポート45を「使用する印刷ポート」として設定するモジュールである。
具体的には、ポート設定モジュール52bはINIファイル53に書き込まれたIPアドレスを指定してポートモニタ44にポート追加命令を出力し、追加したTCP/IPポート45を有効にするためのポート切替命令をポートモニタ44に出力する。
ポート削除モジュール52cは、監視モジュール52aによってINIファイル53からのIPアドレスの削除が検出された場合に、INIファイル53から削除されたIPアドレスが設定されているTCP/IPポート45を削除するモジュールである。
具体的には、ポート削除モジュール52cはINIファイル53から削除されたIPアドレスを指定してポートモニタ44にポート削除命令を出力する。
(3−3)INIファイル
INIファイル53はWINDOWSにおいて各種の設定に用いられるINIファイル形式で記述されている。INIファイルの基本構成は次の通りである。
[セクション名]
キー=値
[セクション名]はINIファイル内を複数のセクションに区切る行であり、セクション名にはそのセクションのタイトルとなる文字列が記述される。「キー」には設定項目の項目名が記述され、「値」には「キー」に記述されている設定項目に設定する設定値が記述される。
図示する例のINIファイル53には[Common]セクションと[IP_XXX.XXX.XXX.XXX]セクションとが記述されている。
[IP_XXX.XXX.XXX.XXX]セクションは書き込みモジュール51dによって書き込まれるセクションであり、XXX.XXX.XXX.XXX部分には選択されたプリンタ2のIPアドレスが記述される。設定項目にはそのIPアドレスが付与されているプリンタ2が備える印刷機能を表わす印刷機能情報が記述される。
「Model」、「Color」、及び「Duplex」は印刷機能情報の一例である。「Model」にはプリンタ2のモデル名が記述される。「Color」にはプリンタ2がカラー印刷に対応しているか否かを示す値が1(カラー印刷に対応している)、又は0(カラー印刷に対応していない)で記述される。「Duplex」にはプリンタ2が両面印刷に対応しているか否かを示す値が1(両面印刷に対応している)、又は0(両面印刷に対応していない)で記述される。
INIファイル53には複数の[IP_XXX.XXX.XXX.XXX]セクションを記述することができる。書き込みモジュール51dは選択されたプリンタ2についての[IP_XXX.XXX.XXX.XXX]セクションをINIファイル53の一番最後に記述する。選択されたプリンタ2の[IP_XXX.XXX.XXX.XXX]セクションを一番最後に記述することにより、監視プログラム52は複数の[IP_XXX.XXX.XXX.XXX]セクションがあっても直近に選択されたプリンタ2を知ることができる。
また、既に[IP_XXX.XXX.XXX.XXX]セクションが記述されているプリンタ2が再度選択された場合は、書き込みモジュール51dは既に記述されている[IP_XXX.XXX.XXX.XXX]セクションを削除し、そのプリンタ2の[IP_XXX.XXX.XXX.XXX]セクションをINIファイル53の一番最後に記述し直す。これにより、監視プログラム52は直近に選択されたプリンタ2を知ることができる。
[Common]セクションは所在情報削除モジュール51eによって削除情報が記述されるセクションである。[Common]セクションには「Deleted」と「DeletedIP」という設定項目が記述される。
「Deleted」にはINIファイル53からIPアドレスが削除されたか否かが1(削除された)、又は0(削除されていない)で記述される。「Deleted」には初期値として0が設定されている。「DeletedIP」は削除されたIPアドレスが記述される項目である。印刷不可能なプリンタ2が複数ある場合はその数だけ「DeletedIP」が記述される。
(4)印刷ポートの設定の流れ
次に、TCP/IPポート45の設定の流れについて説明する。ここでは理解を容易にするためTCP/IPポート45の追加と削除とを別々に説明する。
(4−1)印刷ポートの追加の流れ
図4は、TCP/IPポート45の追加の流れを示すシーケンスチャートである。本処理はユーザがアプリケーション41から共通プリンタドライバ51のプリンタ選択モジュール51aを呼び出すと開始される。
ここで、監視プログラム52はPC1が起動されたときに自動で起動されており、常に一定時間間隔でINIファイル53を監視しているものとする。
S101及びS104は、監視プログラム52がINIファイル53を監視するステップである。監視プログラム52は一定時間間隔(例えば1秒間隔)でOSからINIファイル53の最終更新日時(年月日時分秒)を取得し、前回取得した最終更新日時から変化がなければ一定時間が経過した後に再び最終更新日時を取得する。ここではS101とS104との間でユーザがプリンタ2を選択し、S104で監視プログラム52により最終更新日時の変化が検出される場合を例に説明する。
S102では、ユーザは共通プリンタドライバ51によって表示されるプリンタ選択画面でプリンタ2を選択する。また、必要であればユーザはプリンタ選択画面から印刷条件設定画面を呼び出して印刷条件を設定する。
S103では、共通プリンタドライバ51はS102で選択されたプリンタ2のIPアドレスをINIファイル53に書き込む。INIファイル53を保存するとOSによってINIファイル53の最終更新日時が更新される。
S104では、監視プログラム52は前回の最終更新日時の取得から一定時間が経過したタイミングでOSから最終更新日時を取得する。S103で最終更新日時が更新されているので、S104では監視プログラム52によって最終更新日時の変化が検出される。監視プログラム52は最終更新日時の変化を検出した場合はS105以降の処理を実行する。
S105では、監視プログラム52はINIファイル53の一番最後に記述されている[IP_XXX.XXX.XXX.XXX]セクションからプリンタ2のIPアドレスを読み込む。
S106では、監視プログラム52はポートモニタ44が提供するAPIを呼び出し、S105で読み込んだIPアドレスを指定してポートモニタ44にポート追加命令を出力する。
S107では、ポート追加命令を受けたポートモニタ44は指定されているIPアドレスが設定されているTCP/IPポート45を追加し、その実行結果(成功/失敗)を監視プログラム52に戻り値として返す。
ここで、実行結果として失敗が返る場合とは、そのIPアドレスが設定されているTCP/IPポート45が既に存在している場合である。
S108では、監視プログラム52はポートモニタ44が提供するAPIを呼び出し、S106で追加したTCP/IPポート45(実行結果が失敗である場合は既に存在しているTCP/IPポート45)を指定してポートモニタ44にポート切替命令を出力する。
S109では、ポート切替命令を受けたポートモニタ44は指定されているIPアドレスが設定されているTCP/IPポート45を有効にし、その実行結果(成功/失敗)を監視プログラム52に戻り値として返す。
(4−2)印刷ポートの削除の流れ
図5は、TCP/IPポート45の削除の流れを示すシーケンスチャートである。本処理はユーザがアプリケーション41から共通プリンタドライバ51のプリンタ選択モジュール51aを呼び出すと開始される。ここでは図4と実質的に同一の処理には同一の符号を付して説明を省略する。
S201では、共通プリンタドライバ51はINIファイル53にIPアドレスが書き込まれている各プリンタ2が現在印刷可能な状態であるか否かを判断する。印刷不可能な状態であると判断した場合は、共通プリンタドライバ51はS202以降の処理を実行する。
S202では、共通プリンタドライバ51は印刷不可能な状態であると判断したプリンタ2のIPアドレスが記述されている[IP_XXX.XXX.XXX.XXX]セクションをINIファイル53から削除するとともに、「Deleted」に1を書き込み、更に、「DeletedIP」にそのプリンタ2のIPアドレスを書き込む。INIファイル53を保存するとOSによってINIファイル53の最終更新日時が更新される。
S203では、監視プログラム52は先ずINIファイル53から「Deleted」の値を読み込み、値が1(IPアドレスが削除された)であるか否かを判断する。ここでは値が1であるので、監視プログラム52はINIファイル53から「DeletedIP」の値(削除されたIPアドレス)を読み込む。
S204では、監視プログラム52はポートモニタ44が提供するAPIを呼び出し、S203で読み込んだIPアドレスを指定してポートモニタ44にポート削除命令を出力する。
S205では、ポート削除命令を受けたポートモニタ44はそのIPアドレスが設定されているTCP/IPポート45を削除し、その実行結果(成功/失敗)を監視プログラム52に戻り値として返す。
S206では、監視プログラム52はINIファイル53から削除情報を削除する。具体的には、監視プログラム52は「Common」セクションの「Deleted」に0を書き込み、「DeletedIP」からIPアドレスを削除する。
(5)実施形態の効果
以上説明した本発明の実施形態1に係る印刷制御プログラム50によると、共通プリンタドライバ51がINIファイル53にIPアドレスを書き込むと、書き込んだIPアドレスが設定されているTCP/IPポート45が監視プログラム52によって「使用するTCP/IPポート」として設定されるので、共通プリンタドライバ51はプリンタ2のIPアドレスをINIファイル53に書き込むことにより、ユーザ権限で実行されてもTCP/IPポート45を設定できる。これにより、共通プリンタドライバ51からTCP/IPポート45を設定できるようにするためにユーザに管理者権限を与えなくてよい。
更に、印刷制御プログラム50によると、選択されたプリンタ2のIPアドレスが既にINIファイル53に書き込まれている場合は、そのIPアドレスを削除して新たに書き込むことにより、INIファイル53にIPアドレスが書き込まれたことを印刷制御プログラム50に検出させる。これにより、既にINIファイル53にIPアドレスが書き込まれているプリンタ2が再度選択されてもそのプリンタ2のIPアドレスが設定されている印刷ポートを「使用する印刷ポート」として設定できる。
更に、印刷制御プログラム50によると、共通プリンタドライバ51はINIファイル53からIPアドレスを削除することにより、ユーザ権限で実行されてもTCP/IPポート45を削除できる。
更に、印刷制御プログラム50によると、INIファイル53から削除したIPアドレスを表わす削除情報をINIファイル53に書き込むことにより、監視プログラム52はINIファイル53からどのIPアドレスが削除されたかを知ることができる。
更に、印刷制御プログラム50によると、印刷不可能なプリンタ2のIPアドレスが設定されているTCP/IPポート45を削除することにより、無用なTCP/IPポート45が残ってしまわないようにすることができる。
更に、印刷制御プログラム50によると、IPアドレスと印刷機能情報とを対応付けてINIファイル53に書き込み、それらをプリンタ選択画面に表示するので、ユーザは自身の目的に応じたプリンタ2を選択し易くなる。
また、本発明の実施形態1に係る監視プログラム52によると、共通プリンタドライバ51は選択されたプリンタ2のIPアドレスをINIファイル53に書き込むことにより、ユーザ権限で実行されてもTCP/IPポート45を設定できる。
<他の実施形態>
本発明は上記記述及び図面によって説明した実施形態に限定されるものではなく、例えば次のような実施形態も本発明の技術的範囲に含まれる。
(1)上記実施形態では所在情報としてIPアドレスを例に説明したが、所在情報はノード名であってもよい。ノード名とは機器を一意に特定可能な情報のことをいい、TCP/IPネットワークではドメイン名に相当する。ドメイン名はDNS(Domain Name System)に問い合わせることによってIPアドレスに変換されるので、機器を一意に特定できる。
(2)上記実施形態ではINIファイル53に印刷機能情報を書き込む場合を例に説明したが、印刷条件設定画面で設定された印刷条件を書き込んでもよい。そして、選択されたプリンタ2に対する印刷条件を設定するとき、そのプリンタ2のIPアドレスに対応付けられてINIファイル53に書き込まれている印刷条件を初期値として印刷条件設定画面に表示してもよい。これにより、次回の印刷条件の設定において前回と同様の印刷条件を設定する場合に設定の手間を低減できる。
(3)上記実施形態では設定情報としてINIファイルを例に説明したが、OSとしてMicrosoft社のWINDOWSを用いる場合はレジストリを設定情報として用いてもよい。
1・・・コンピュータ
2(2a〜2d)・・・プリンタ
3・・・通信ネットワーク
45・・・TCP/IPポート
50・・・印刷制御プログラム
51・・・共通プリンタドライバ
51a・・・プリンタ選択モジュール
51b・・・印刷条件設定モジュール
51c・・・印刷データ生成モジュール
51d・・・書き込みモジュール
51e・・・所在情報削除モジュール
52・・・監視プログラム
52a・・・監視モジュール
52b・・・ポート設定モジュール
52c・・・ポート削除モジュール
53・・・INIファイル

Claims (9)

  1. 通信ネットワークを介して1以上のプリンタと通信可能に接続されているコンピュータで実行される印刷制御プログラムであって、
    当該印刷制御プログラムは、プリンタの複数の機種で共通に用いられる共通プリンタドライバと監視プログラムとを備えて構成されており、
    前記共通プリンタドライバは、
    1以上の前記プリンタの中からいずれかのプリンタを選択する選択手段と、
    前記選択手段によって選択されたプリンタの前記通信ネットワーク上の所在を示す所在情報を設定情報に書き込む書き込み手段として前記コンピュータを機能させ、
    前記監視プログラムは、
    前記設定情報を監視して前記所在情報の書き込みを検出する書き込み監視手段と、
    前記書き込み監視手段によって前記所在情報の書き込みが検出された場合に、当該書き込まれた所在情報が設定されている論理的な印刷ポートを、使用する印刷ポートとして設定するポート設定手段として前記コンピュータを機能させる、印刷制御プログラム。
  2. 請求項1に記載の印刷制御プログラムであって、
    前記書き込み手段は、前記選択手段によって選択されたプリンタの前記所在情報が既に前記設定情報に書き込まれている場合は、既に書き込まれている前記所在情報を削除して新たに書き込む、印刷制御プログラム。
  3. 請求項1又は請求項2に記載の印刷制御プログラムであって、
    前記共通プリンタドライバは、
    前記設定情報から前記所在情報を削除する所在情報削除手段として前記コンピュータを機能させ、
    前記監視プログラムは、
    前記設定情報を監視して前記所在情報の削除を検出する削除監視手段と、
    前記削除監視手段によって前記所在情報の削除が検出された場合に、当該削除された所在情報が設定されている前記印刷ポートを削除するポート削除手段として前記コンピュータを機能させる、印刷制御プログラム。
  4. 請求項3に記載の印刷制御プログラムであって、
    前記所在情報削除手段は、削除した前記所在情報を表わす削除情報を前記設定情報に書き込み、
    前記ポート削除手段は、前記削除情報が表す前記所在情報が設定されている前記印刷ポートを削除する、印刷制御プログラム。
  5. 請求項3又は請求項4に記載の印刷制御プログラムであって、
    前記所在情報削除手段は、前記設定情報に前記所在情報が書き込まれている各前記プリンタについて印刷可能な状態であるか否かを判断し、印刷不可能な状態であると判断した前記プリンタの前記所在情報を前記設定情報から削除する、印刷制御プログラム。
  6. 請求項1乃至請求項5のいずれか一項に記載の印刷制御プログラムであって、
    前記コンピュータは表示装置を備え、
    前記書き込み手段は、前記選択手段によって選択されたプリンタが備える印刷機能を表わす印刷機能情報を当該プリンタから取得し、前記所在情報と前記印刷機能情報とを対応付けて前記設定情報に書き込み、
    前記選択手段は、前記通信ネットワークに接続されている1以上の前記プリンタをそのプリンタの前記印刷機能情報とともに前記表示装置に表示してユーザにプリンタを選択させるものであり、この表示において、前記所在情報が前記設定情報に書き込まれているプリンタの場合は前記設定情報から前記印刷機能情報を読み込んで表示し、前記所在情報が前記設定情報に書き込まれていないプリンタの場合はそのプリンタから前記印刷機能情報を取得して表示する、印刷制御プログラム。
  7. 請求項1乃至請求項6のいずれか一項に記載の印刷制御プログラムであって、
    前記コンピュータは表示装置を備え、
    前記共通プリンタドライバは、
    印刷条件を設定するための設定画面を前記表示装置に表示してユーザに印刷条件を設定させる印刷条件設定手段として前記コンピュータを機能させ、
    前記書き込み手段は、前記選択手段によって選択されたプリンタの前記所在情報と前記設定手段で設定された印刷条件とを対応付けて前記設定情報に書き込み、
    前記印刷条件設定手段は、前記選択されたプリンタに対する次回の印刷条件の設定において、当該プリンタの前記所在情報に対応付けられて前記設定情報に書き込まれている印刷条件を前記設定画面に初期値として表示する、印刷制御プログラム。
  8. 通信ネットワークを介して1以上のプリンタと通信可能に接続されているコンピュータを、
    前記プリンタの前記通信ネットワーク上の所在を示す所在情報が書き込まれる設定情報を監視して前記所在情報の書き込みを検出する書き込み監視手段と、
    前記書き込み監視手段によって前記所在情報の書き込みが検出された場合に、当該書き込まれた所在情報が設定されている論理的な印刷ポートを、使用する印刷ポートとして設定するポート設定手段として機能させる監視プログラム。
  9. 通信ネットワークを介して1以上のプリンタと通信可能に接続されているコンピュータを用いた印刷制御方法であって、
    1以上の前記プリンタの中からいずれか1つのプリンタを選択するプリンタ選択段階と、
    前記プリンタ選択段階で選択されたプリンタの前記通信ネットワーク上の所在を示す所在情報を設定情報に書き込む書き込み段階と、
    前記設定情報を監視して前記所在情報の書き込みを検出する書き込み監視段階と、
    前記書き込み監視段階において前記所在情報の書き込みが検出された場合に、当該書き込まれた所在情報が設定されている論理的な印刷ポートを、使用する印刷ポートとして設定するポート設定段階と、
    を含む印刷制御方法。
JP2010102267A 2010-04-27 2010-04-27 印刷制御プログラム、監視プログラム、及び印刷制御方法 Active JP4930811B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2010102267A JP4930811B2 (ja) 2010-04-27 2010-04-27 印刷制御プログラム、監視プログラム、及び印刷制御方法
US13/073,389 US8760689B2 (en) 2010-04-27 2011-03-28 Computer readable device storing print control program, print control apparatus and print control method
CN201110112574.4A CN102236536B (zh) 2010-04-27 2011-04-26 打印控制设备、打印控制方法及监视方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010102267A JP4930811B2 (ja) 2010-04-27 2010-04-27 印刷制御プログラム、監視プログラム、及び印刷制御方法

Publications (2)

Publication Number Publication Date
JP2011232938A JP2011232938A (ja) 2011-11-17
JP4930811B2 true JP4930811B2 (ja) 2012-05-16

Family

ID=44815584

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010102267A Active JP4930811B2 (ja) 2010-04-27 2010-04-27 印刷制御プログラム、監視プログラム、及び印刷制御方法

Country Status (3)

Country Link
US (1) US8760689B2 (ja)
JP (1) JP4930811B2 (ja)
CN (1) CN102236536B (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5619649B2 (ja) * 2011-02-17 2014-11-05 シャープ株式会社 情報処理装置、画像出力システム、プログラムおよび記録媒体
JP2012216166A (ja) 2011-03-28 2012-11-08 Canon Inc 情報処理装置、その方法、及びプログラム
JP5790215B2 (ja) * 2011-07-05 2015-10-07 株式会社リコー 印刷装置管理装置
JP6080683B2 (ja) * 2013-05-20 2017-02-15 株式会社沖データ 機能記述作成プログラム及び機能記述作成システム
JP6171587B2 (ja) * 2013-06-04 2017-08-02 富士ゼロックス株式会社 画像形成装置及びプログラム
JP6090187B2 (ja) * 2014-01-31 2017-03-08 ブラザー工業株式会社 電子機器およびプログラム
JP6433378B2 (ja) 2015-05-29 2018-12-05 キヤノン株式会社 情報処理装置、情報処理方法、及びコンピュータプログラム
CN106557285B (zh) * 2015-09-25 2020-07-24 腾讯科技(深圳)有限公司 打印方法和装置
JP6756102B2 (ja) * 2015-12-28 2020-09-16 セイコーエプソン株式会社 情報処理装置、情報処理装置の情報処理方法、及び、情報処理システム
JP2019018348A (ja) * 2017-07-11 2019-02-07 キヤノン株式会社 印刷装置、情報処理方法及びプログラム
JP7259426B2 (ja) * 2019-03-12 2023-04-18 株式会社リコー 情報処理装置、及びプログラム
CN111857612B (zh) * 2020-06-24 2022-07-12 厦门汉印电子技术有限公司 基于gdi的驱动功能模块配置方法、装置、设备及存储介质

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09128172A (ja) * 1995-11-06 1997-05-16 Nissin Electric Co Ltd プリンタサーバ
JP2003058443A (ja) * 2001-08-20 2003-02-28 Canon Inc 情報処理装置およびネットワーク設定方法および記憶媒体
US6982804B2 (en) 2001-10-31 2006-01-03 Hewlett-Packard Development Company, L.P. Intelligent printer settings
JP2005122275A (ja) * 2003-10-14 2005-05-12 Canon Inc 情報処理装置及び方法及びプログラム
JP3821138B2 (ja) * 2004-04-23 2006-09-13 コニカミノルタビジネステクノロジーズ株式会社 ポート設定変更装置、ポート設定変更制御プログラム及びポート設定変更方法
JP4847212B2 (ja) * 2006-05-29 2011-12-28 キヤノン株式会社 情報処理装置、印刷制御方法、プログラム及びコンピュータ可読の記憶媒体
US20080180712A1 (en) 2007-01-30 2008-07-31 Ricoh Company Ltd. Universal print driver with full discovery
JP4991402B2 (ja) * 2007-06-11 2012-08-01 キヤノン株式会社 情報処理装置、印刷設定方法、プログラム
JP2009301127A (ja) 2008-06-10 2009-12-24 Seiko Epson Corp プリンタドライバプログラム及び印刷指示装置

Also Published As

Publication number Publication date
CN102236536B (zh) 2016-03-23
CN102236536A (zh) 2011-11-09
US20110261400A1 (en) 2011-10-27
US8760689B2 (en) 2014-06-24
JP2011232938A (ja) 2011-11-17

Similar Documents

Publication Publication Date Title
JP4930811B2 (ja) 印刷制御プログラム、監視プログラム、及び印刷制御方法
JP6874405B2 (ja) 情報処理装置、プログラム、システム
US8640148B2 (en) Information processing apparatus, information processing method and storage medium
US8264743B2 (en) Information processor, information processing method, and recording medium
JP4485997B2 (ja) 印刷制御装置、印刷制御システム、印刷制御方法、印刷制御プログラム及び記録媒体
JP5321929B2 (ja) ユニバーサルデバイスドライバ、デバイス制御プログラム、情報処理装置、サーバ装置、及び、方法
JP5293035B2 (ja) データ処理装置、データ処理方法、プログラムおよび記録媒体
US20110261396A1 (en) Control device for managing drivers
US20080068655A1 (en) Data processing apparatus and recording medium
JP5370265B2 (ja) 共通プリンタドライバ、及び印刷ポートの管理方法
JP2008159033A (ja) 電子機器および情報処理システム
US20110214120A1 (en) Installer and method of installing printer driver
US20120236354A1 (en) Information processing apparatus, information processing method, and program
US10248366B2 (en) Information processing device, information processing system, and information processing method
US8448192B2 (en) Computer readable medium storing a universal driver, method of controlling a device and apparatus
US9058132B2 (en) Information processing apparatus, control method, and computer-readable medium
JP6840986B2 (ja) 印刷管理装置及びプログラム
JP2006268586A (ja) 処理態様指定情報変換プログラム及び処理態様指定情報変換方法
KR101352851B1 (ko) 유니버셜 프린터 드라이버를 이용하는 인쇄 환경에서화상형성장치의 프린터 드라이버를 설치하는 방법 및 장치
KR101279438B1 (ko) 유니버셜 프린터 드라이버를 사용하는 인쇄 환경에서화상형성장치의 프린터 드라이버를 설치하는 방법 및 장치
JP2008171096A (ja) 更新機能を有する情報処理装置
US8108565B2 (en) Host apparatus connected to image forming apparatus, remote configuration system including the same and remote configuration method using host apparatus
KR20050122022A (ko) 프린터 드라이버를 구비한 인쇄제어장치 및 그를 이용한인쇄옵션 제어방법
US20080133743A1 (en) Electronic apparatus and information processing system
US7752347B2 (en) Computer readable medium recording an information providing program, information providing device, and method for providing information

Legal Events

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120119

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

R150 Certificate of patent or registration of utility model

Ref document number: 4930811

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150224

Year of fee payment: 3