JP6608175B2 - Information processing apparatus, control method, and program - Google Patents
Information processing apparatus, control method, and program Download PDFInfo
- Publication number
- JP6608175B2 JP6608175B2 JP2015110386A JP2015110386A JP6608175B2 JP 6608175 B2 JP6608175 B2 JP 6608175B2 JP 2015110386 A JP2015110386 A JP 2015110386A JP 2015110386 A JP2015110386 A JP 2015110386A JP 6608175 B2 JP6608175 B2 JP 6608175B2
- Authority
- JP
- Japan
- Prior art keywords
- job
- information
- external device
- executed
- external
- 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
Links
Images
Landscapes
- Facsimiles In General (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
Description
本発明は、情報処理装置、制御方法及びプログラムに関する。 The present invention relates to an information processing apparatus, a control method, and a program.
従来から、ジョブをプリンタ等の外部装置に送信することで、プリンタに当該ジョブに基づいた処理を行わせることが可能なパーソナルコンピュータ(以下、PCという。)等の情報処理装置が知られている。このようなPCを利用するユーザは、例えば、マイクロソフト社のWindows(登録商標)におけるジョブキューのグラフィカルユーザインタフェースを閲覧すれば、ジョブがプリンタへ送信されたか否かを知ることが出来る。 2. Description of the Related Art Conventionally, an information processing apparatus such as a personal computer (hereinafter referred to as a PC) that can cause a printer to perform processing based on the job by transmitting the job to an external apparatus such as a printer is known. . A user using such a PC can know whether or not a job has been transmitted to a printer by browsing a graphical user interface of a job queue in Windows (registered trademark) of Microsoft Corporation.
しかし、このとき、ユーザは、ジョブがプリンタへ送信されたことを知ることが出来ても、プリンタによってジョブの処理が完了したか否かを知ることができない。そこで、特許文献1では、プリンタによってジョブの処理が完了するまで、PCが備えるスプーラにジョブを保持させることで、ジョブの状態を監視する(以下、この処理をジョブ保持処理という。)ことができる技術が開示されている。 However, at this time, even if the user can know that the job has been transmitted to the printer, the user cannot know whether the job has been processed by the printer. Therefore, in Patent Document 1, the job status can be monitored by holding a job in a spooler provided in the PC until job processing is completed by the printer (hereinafter, this processing is referred to as job holding processing). Technology is disclosed.
しかしながら、受信したジョブをジョブキューにキューイングし、キューイングした順番にジョブを処理するプリンタ(ジョブキューを備えているプリンタ)にジョブを送信する場合にジョブ保持処理が実行されると、下記のような課題が起こる。 However, if job holding processing is executed when a received job is queued in a job queue and the job is transmitted to a printer that processes the jobs in the queued order (a printer having a job queue), Such a problem occurs.
ジョブキューを備えているプリンタは、複数のPCからジョブを受信し、受信した順番にジョブを処理することが可能である。ここでは、PC1がジョブ1及びジョブ2を、PC2がジョブ3をプリンタに対して送信する場合を想定する。PC1は、ジョブ1を送信する際にジョブ保持処理を実行すると、スプーラにジョブ1が保持されるため、ジョブ1の処理が完了するまでジョブ2を送信することができない。この状態で、PC2がジョブ3をプリンタに対して送信した場合、PC2がジョブ3を送信するよりも早くPC1がジョブ2を送信しようとしたにもかかわらず、プリンタは、ジョブ3を優先的に処理してしまう。このように、ジョブキューを備えているプリンタにジョブを送信する場合にジョブ保持処理が実行されると、ジョブの処理順番の追い越しが発生してしまう可能性があるという課題がある。 A printer having a job queue can receive jobs from a plurality of PCs and process the jobs in the order received. Here, it is assumed that the PC 1 transmits job 1 and job 2 and the PC 2 transmits job 3 to the printer. If the PC 1 executes the job holding process when transmitting the job 1, the job 1 is held in the spooler, and therefore the job 2 cannot be transmitted until the processing of the job 1 is completed. In this state, when the PC 2 transmits the job 3 to the printer, the printer gives priority to the job 3 even though the PC 1 tried to transmit the job 2 earlier than the PC 2 transmitted the job 3. It will be processed. As described above, when a job holding process is executed when a job is transmitted to a printer having a job queue, there is a possibility that the job processing order may be overtaken.
特許文献1は、ジョブ保持処理を行うか否かの判断において、ジョブの送信先であるプリンタがジョブキューを備えているか否かを考慮していない。そのため、特許文献1に開示された技術では、上記の課題が発生してしまうことを回避できないという課題がある。Patent Document 1 does not consider whether a printer that is a job transmission destination includes a job queue when determining whether to perform job holding processing. For this reason, the technique disclosed in Patent Document 1 has a problem that the above-described problem cannot be avoided.
本発明は、上記の課題を解決するためになされたもので、外部装置の能力に応じて適切な場合にジョブ保持処理を実行できる情報処理装置、制御方法及びプログラムを提供することを目的とする。 SUMMARY An advantage of some aspects of the invention is that it provides an information processing apparatus, a control method, and a program that can execute job holding processing when appropriate according to the capability of an external apparatus. .
そこで、上記目的を達成するために、本発明のプログラムは、
前記外部装置がジョブの処理順番を管理可能なジョブキューを備えているか否かを示す情報を含む能力情報を前記外部装置から取得する取得ステップと、
ジョブの送信指示を受け付ける受け付けステップと、
前記受け付けステップの前に実行された前記取得ステップにより前記外部装置から取得された前記能力情報をキャッシュ情報として保存する保存ステップと、
前記ジョブを管理し、管理している前記ジョブの送信が完了したか否かを認識する管理機能を有するスプーラが管理する前記ジョブを、前記受け付けステップの後に前記外部装置に送信する送信ステップと、
前記送信ステップにて送信した前記ジョブの処理が前記外部装置によって完了していない場合に、前記外部装置への前記ジョブの送信が完了したにもかかわらず前記スプーラに前記ジョブの送信が完了していないと認識させるジョブ保持処理を実行する処理ステップと、を実行させるためのプログラムであって、
新たに前記外部装置が接続したことを前記プログラムが検知できない第1接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付けステップにて受け付けられた場合、前記受け付けステップの後にも前記取得ステップを実行し、
前記第1接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付けステップにて受け付けられ、且つ前記受け付けステップの後に実行された前記取得ステップにて取得された前記能力情報に前記外部装置が前記ジョブキューを備えていることを示す情報が含まれる場合は、前記ジョブ保持処理を実行せず、前記第1接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付けステップにて受け付けられ、且つ前記受け付けステップの後に実行された前記取得ステップにて取得された前記能力情報に前記外部装置が前記ジョブキューを備えていることを示す情報が含まれない場合は、前記ジョブ保持処理を実行し、
新たに前記外部装置が接続したことを前記プログラムが検知できる第2接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付けステップにて受け付けられた場合、前記受け付けステップの後には前記取得ステップを実行せず、
前記第2接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付けステップにて受け付けられ、且つ前記キャッシュ情報に前記外部装置が前記ジョブキューを備えていることを示す情報が含まれる場合は、前記ジョブ保持処理を実行せず、前記第2接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付けステップにて受け付けられ、且つ前記キャッシュ情報に前記外部装置が前記ジョブキューを備えていることを示す情報が含まれない場合は、前記ジョブ保持処理を実行することを特徴とする。
Therefore, in order to achieve the above object, the program of the present invention
An acquisition step of acquiring from the external device capability information including information indicating whether or not the external device has a job queue capable of managing the job processing order;
A reception step for receiving a job transmission instruction;
A storing step of storing the capability information acquired from the external device by the acquiring step executed before the receiving step as cache information;
A transmission step to manage the job, to transmit the job to the spooler to manage with recognizing management function whether or not the transmission of the jobs managed has been completed, to the external device after the receiving step,
Wherein when the processing of the job transmitted by the transmission step is not completed by the external device, wherein not transmitting the job to the job the spooler even though the transmission is completed to the external device is completed A processing step for executing a job holding process to be recognized as a program,
An instruction to send the job to the external apparatus connected to the information processing apparatus via the first connection method in which the program cannot detect that the external apparatus is newly connected has been received in the receiving step. In the case, the acquisition step is executed even after the reception step,
In the acquisition step, an instruction to transmit the job to the external device connected to the information processing apparatus via the first connection method is received in the reception step, and executed after the reception step. If the acquired capability information includes information indicating that the external apparatus includes the job queue, the information processing apparatus does not execute the job holding process and does not execute the job holding process. An instruction to transmit the job to the connected external device is accepted in the accepting step, and the external device adds the job to the capability information obtained in the obtaining step executed after the accepting step. If not include information indicating that you have provided the queue, it executes the job holding process,
An instruction to send the job to the external apparatus connected to the information processing apparatus via the second connection method that allows the program to detect that the external apparatus is newly connected has been received in the receiving step. In this case, the acquisition step is not performed after the reception step,
An instruction to transmit the job to the external apparatus connected to the information processing apparatus via the second connection method is accepted in the accepting step, and the external apparatus includes the job queue in the cache information. The job holding process is not executed, and the job transmission instruction to the external device connected to the information processing apparatus via the second connection method is not included in the job holding process. accepted in accepting step, and the case where the external device to the cache information is not include information indicating that comprise the job queue, characterized and Turkey to perform the job retention process.
本発明の情報処理装置、制御方法及びプログラムによれば、外部装置の能力に応じて適切な場合にジョブ保持処理を実行できる。 According to the information processing apparatus, control method, and program of the present invention, job holding processing can be executed when appropriate according to the capability of an external apparatus.
以下に図面を参照して、本発明の好適な実施形態を例示的に説明する。ただし、本発明については、その趣旨を逸脱しない範囲で、当業者の通常の知識に基づいて、以下に記載する実施形態に対して適宜変更、改良が加えられたものについても本発明の範囲に入ることが理解されるべきである。 DESCRIPTION OF EXEMPLARY EMBODIMENTS Hereinafter, exemplary embodiments of the invention will be described with reference to the drawings. However, the present invention is also within the scope of the present invention, as long as it does not depart from the spirit of the present invention, and based on the ordinary knowledge of those skilled in the art, the embodiments described below are appropriately modified and improved. It should be understood to enter.
(第1実施形態)
本発明を適用した情報処理装置及び、本発明を適用した情報処理装置と接続する外部装置について説明する。本実施形態においては、情報処理装置として、パーソナルコンピュータ(以下、PCという。)を例示している。なお、情報処理装置は、PCのみならず、画像処理装置、携帯端末、スマートフォン、ノートPC、タブレット端末、PDA(Personal Digital Assistant)、デジタルカメラなど種々のものを適用可能である。また、本発明を適用した情報処理装置と接続する外部装置として、情報処理装置と通信可能なインクジェット方式のプリンタを例示している。なお、他にも外部装置として、インクジェット方式のプリンタ以外の画像処理装置、PC、携帯端末、スマートフォン、タブレット端末、PDA、デジタルカメラ、テレビ、スキャナ等を利用可能である。また、インクジェット方式のプリンタ以外の画像処理装置は、例えば、フルカラーレーザービームプリンタ、モノクロプリンタ、複写機やファクシミリ装置等の装置である。さらに、それらの装置は、マルチファンクションであってもシングルファンクションであっても良い。
(First embodiment)
An information processing apparatus to which the present invention is applied and an external apparatus connected to the information processing apparatus to which the present invention is applied will be described. In this embodiment, a personal computer (hereinafter referred to as a PC) is exemplified as the information processing apparatus. The information processing apparatus is not limited to a PC, and various apparatuses such as an image processing apparatus, a portable terminal, a smartphone, a notebook PC, a tablet terminal, a PDA (Personal Digital Assistant), and a digital camera can be applied. Further, as an external device connected to the information processing apparatus to which the present invention is applied, an ink jet printer that can communicate with the information processing apparatus is illustrated. In addition, an image processing apparatus other than an inkjet printer, a PC, a portable terminal, a smartphone, a tablet terminal, a PDA, a digital camera, a television, a scanner, or the like can be used as an external apparatus. The image processing apparatus other than the ink jet printer is, for example, an apparatus such as a full color laser beam printer, a monochrome printer, a copying machine, or a facsimile machine. Further, these devices may be multi-function or single function.
本実施形態における情報処理装置と、本実施形態における外部装置とによって構成された通信システムの構成について図1のブロック図を参照して説明する。また、本実施形態では以下の構成を例に記載するが、本実施形態は外部装置と通信を行うことが可能な情報処理装置に関して適用可能なものであり、特にこの図のとおりに機能を限定するものではない。 A configuration of a communication system including the information processing apparatus according to the present embodiment and the external apparatus according to the present embodiment will be described with reference to the block diagram of FIG. Further, in the present embodiment, the following configuration is described as an example, but the present embodiment is applicable to an information processing apparatus capable of communicating with an external device, and the function is particularly limited as shown in this figure. Not what you want.
PC110は、本実施形態における情報処理装置である。PC110は、入力I/F111、CPU112、ROM113、出力I/F114、外部記憶装置115、RAM116、入力装置117、出力装置118、入出力I/F119を有する。
The PC 110 is an information processing apparatus in the present embodiment. The PC 110 includes an input I /
CPU112は、システム制御部であり、PC110の全体を制御する。
The
ROM113は、CPU112が実行する制御プログラムやデータテーブル等の固定データを格納する。
The
外部記憶装置115は、オペレーティングシステム(以下、OSという。)やプリンタドライバ、その他各種のデータやソフトウェアを格納する。なお、本実施形態においては、例としてOSにWindows(登録商標)を使用しているものとする。
The
RAM116は、バックアップ電源を必要とするSRAM(Static Random Access Memory)等で構成され、図示しないデータバックアップ用の1次電池によってデータが保持されている。なお、RAM116は、データが消去されては困るプログラム制御変数等を格納する。また、RAM116は、ROM113や外部記憶装置115に保存される各種プログラムによってワークメモリーとして使用される。
The
入力装置117は、ユーザからの操作を受け付ける操作部に該当し、数値入力キー、モード設定キー、決定キー、取り消しキー、電源キー等のキー等から構成される。なお、入力装置117は、入力I/F111に接続されている。入力I/F111は、入力装置117を介してユーザからのデータ入力や動作指示を受け付けるためのインタフェースである。出力装置118は、データやPC110の状態を表示する表示部に該当し、LED(発光ダイオード)やLCD(液晶ディスプレイ)などから構成される。なお、出力装置118は、出力I/F114に接続されている。出力I/F114は、出力装置118がデータ表示やPC110の状態の通知を行うための制御を行うインタフェースである。なお、情報の表示と操作の受付を同一部材で行うことで、入力装置117及び出力装置118を同一の構成としても良い。
The
入出力I/F119は、接続インタフェース130を介して入出力I/F125と接続する。入出力I/F119と入出力I/F125とが接続することで、PC110とプリンタ120は相互に通信可能となる。なお、入出力I/F119は、本実施形態におけるポートに対応する。ポートとは、ポート同士を接続インタフェース130を介して接続することで、ポートを備える装置同士を通信可能にするためのものである。ポートの種類として、例えば、ネットワークを介した接続を行うためのネットワークポートや、プリンタとUSBによる接続を行うためのUSBポートがある。なお、ネットワークを介した接続において、ネットワークポートは、無線接続でダイレクトに接続しても良いし、有線ネットワーク上に設置したアクセスポイントを介して接続しても良い。また、ネットワークを介した接続は、例えば、有線LAN又はWireless LANによって行われる。また、接続のための通信方式としては、例えば、Wi−Fi(WirelessFidelity)やBluetooth(登録商標)や、NFC(Near Field Communication;ISO/IEC IS 18092)等が挙げられる。なお、ネットワークポートは、それぞれの通信方式、接続方式に応じて、個別に用意されていても良い。なお、本実施形態においては、PC110は、ポート1を用いてプリンタ120と接続しているものとする。
The input / output I /
接続インタフェース130は、例えば、USB、LAN等であるが、これらに限定されない。なお、通信は無線通信でダイレクトに通信しても良いし、有線ネットワーク上に設置したアクセスポイントを介して通信しても良い。通信方式としては、例えば、Wi−Fi(WirelessFidelity)やBluetooth(登録商標)や、NFC(Near Field Communication;ISO/IEC IS 18092)等が挙げられる。
The
プリンタ120は、本実施形態における外部装置である。プリンタ120は、RAM121、ROM122、プリントエンジン123、CPU124、入出力I/F125を有する。
The
CPU124は、システム制御部であり、プリンタ120の全体を制御する。
The
ROM122は、CPU124が実行する制御プログラムやデータテーブル等の固定データを格納する。
The
RAM121は、バックアップ電源を必要とするSRAM(Static Random Access Memory)等で構成され、図示しないデータバックアップ用の1次電池によってデータが保持されている。なお、RAM121は、データが消去されては困るプログラム制御変数等を格納する。また、RAM121は、CPU124のワークメモリーとして使用され、受信したデータの一時保存用バッファとしても利用される。
The
プリントエンジン123は、RAM121に保存されたデータ及び、PC110から受信した印刷ジョブに基づいて、インク等の記録剤を用いて紙等の記録媒体上に画像を形成し、印刷結果を出力する。
Based on the data stored in the
入出力I/F125は、接続インタフェース130を介して入出力I/F119と接続する。
The input / output I / F 125 is connected to the input / output I /
外部記憶装置115に格納されているソフトウェアの構成について、図2のブロック図を参照して説明する。図2に示す構成のうち、構成202、204乃至206がOSのモジュール、構成203、207及び208がプリンタドライバのモジュールとしているが、それぞれの構成は、OSとプリンタドライバのうちいずれのモジュールであってもいい。それぞれの構成が実行する処理は、CPU112が、それぞれの構成に対応するプログラムを外部記憶装置115から読みだしてRAM116にロードし、そのプログラムを実行することにより実現されるものとする。アプリケーション201は、外部記憶装置115に保存されており、印刷する有償コンテンツ等の画像情報や文字情報を含む描画情報、用紙サイズやレイアウト等の印刷設定情報等を含む印刷データを作成する。アプリケーション201が作成した印刷データは、OSの印刷サポート機能202を介しUIモジュール203から返却される印刷設定情報が付加され、スプールデータ206としてスプーラ204のジョブキュー205に一時的に保存される。スプーラ204は、ジョブ管理機能を有し、渡されたスプールデータ206を、スプールデータ206に応じた印刷ジョブの送信が完了したと認識するまで保持し管理する。具体的には、スプーラ204は、例えば、プリンタ毎に、印刷ジョブのサイズ、ジョブ名等を管理し、管理している情報をステータス表示アプリケーションに伝達することで、当該情報を出力装置118等に表示する。また、紙ジャムなどのエラー発生時に備え、印刷データを含むジョブそのものをジョブ終了まで保持するようにしても良い。なお、ジョブキュー205に保存されているスプールデータ206の情報は、例えば、グラフィックスドライバ207やUIモジュール203、アプリケーション201などを介して所定のインタフェース関数を用いて参照することできる。スプールデータ206は、グラフィックスドライバ207により、プリンタ120が解釈可能な印刷コマンドへ変換され、印刷ジョブが生成される。生成された印刷ジョブはスプーラ204からランゲージモニタ208へ送信される。ランゲージモニタ208は、印刷ジョブを特定サイズのパケットに区切り、入出力I/F119及び入出力I/F125を介して、プリンタ120に逐一送信する。なお、このとき、一回に送信するデータの大きさは、スプーラ204によって指示される。なお、スプーラ204は、当該指示を、アプリケーション201やUIモジュール203によって指示されることで実行する。また、ランゲージモニタ208の機能として、プリンタ120又はプリンタ120に投入されたジョブの状態の情報を取得する機能がある。なお、ジョブとは、例えば、印刷ジョブやスキャンジョブ、メンテナンスジョブ等である。PC110は、プリンタ120にジョブを送信することで、ジョブに応じた印刷やスキャン、メンテナンス等の処理を実行させる。
The configuration of software stored in the
図3は、本実施形態におけるポート初期化処理を示すフローチャートである。ポート初期化処理とは、PC110が、PC110が備えるポートに接続されているプリンタの能力情報及びDevice IDを取得し、取得した情報を、初期化を行うポートに対応付けて記憶する処理である。
FIG. 3 is a flowchart showing the port initialization process in this embodiment. The port initialization process is a process in which the
能力情報とは、プリンタの設定状況やケーパブリティを示す情報である。能力情報は、例えば、プリンタのシリアル番号等のプリンタに関する静的な情報や、プリンタの設定情報、プリンタがサポートしている機能の情報等で構成され、図10のようなXMLデータによって記載される。図10のXMLデータにおいて、statusタグは、問い合わせに対する応答結果を返しており、この例では問い合わせが成功したことを表している。また、deviceタグは、プリンタの基本情報を表しており、例えばmodelタグはプリンタの機種名を、serial numberタグはプリンタの識別番号を表している。さらに、silentmodeタグがプリンタがサイレントモードをサポートしているか否かを、queueタグが、プリンタがジョブキューを備えているか否かを表している。ジョブキューとは、ジョブをキューイングして保持するための構成であり、ジョブキューを備えているプリンタは、受信したジョブをジョブキューにキューイングし、キューイングした順番にジョブを処理することができる。さらに、printqualityタグが、プリンタがサポートしている印刷の品位レベルを、papersizeタグが、プリンタがサポートしている記録媒体のサイズを表している。さらに、optionhddタグが、オプションをサポートしているか否かを表している。オプションとは、プリンタ120に着脱できる装置のことであり、プリンタ120に装着することで、当該オプション装置に対応した機能をプリンタ120に付加させたり、従来の機能を拡張することができる。プリンタ120のオプションとして、例えば、増設メモリや給紙ユニット、Bluetooth(登録商標)ユニット等がある。また、プリンタ120に付加/拡張可能な機能として、例えば、保持可能な記録媒体の種類や枚数、Bluetooth(登録商標)通信、ジョブのキューイング機能等がある。
The capability information is information indicating the printer setting status and capability. The capability information includes, for example, static information about the printer such as a printer serial number, printer setting information, information on functions supported by the printer, and the like, and is described by XML data as shown in FIG. . In the XML data of FIG. 10, the status tag returns a response result to the inquiry, and in this example, the inquiry is successful. The device tag represents basic information of the printer. For example, the model tag represents the model name of the printer, and the serial number tag represents the printer identification number. Further, the silentmode tag indicates whether the printer supports the silent mode, and the queue tag indicates whether the printer has a job queue. A job queue is a configuration for queuing and holding jobs, and a printer equipped with a job queue can queue received jobs in the job queue and process the jobs in the queued order. it can. Further, the print quality tag represents the print quality level supported by the printer, and the papersize tag represents the size of the recording medium supported by the printer. Further, the option hdd tag indicates whether the option is supported. An option is a device that can be attached to and detached from the
なお、能力情報には、この他にも、カラー印刷やモノクロ印刷、両面印刷、フチ無し印刷、スキャン機能等に対応しているか否かの情報や、プリンタが対応している印刷データ形式の情報等を表しても良い。また、XML以外の記載方式によってこれらの情報を表しても良い。 In addition, the capability information includes information on whether color printing, monochrome printing, double-sided printing, borderless printing, scanning function, etc. are supported, and information on the print data format supported by the printer. Etc. may be expressed. Further, these pieces of information may be expressed by a description method other than XML.
また、Device IDとは、プリンタを識別するためのプリンタ固有の情報であり、例えば、シリアルナンバー等である。 The device ID is information unique to the printer for identifying the printer, such as a serial number.
ポート初期化処理は、例えば、OSが起動した場合や、プリンタドライバがインストールされた場合、PC110に接続されているプリンタが繋ぎ直された場合等に実行される。他にも、プリンタに対してジョブが送信される場合、プリンタドライバのUIが開かれた場合、アプリケーション201からプリンタの能力情報の取得要求が行われた場合等に実行される。ポート初期化処理を行うポートは、ポート初期化処理の実行要因によって決まる。例えば、OSが起動した場合にポート初期化処理が実行される場合は、ポート初期化処理は、プリンタが接続されている全てのポートに対して実行される。また、PC110に接続されているプリンタが繋ぎ直された場合やプリンタに対してジョブが送信される場合にポート初期化処理が実行される場合は、ポート初期化処理は、処理対象のプリンタが接続されているポートに対して実行される。
The port initialization process is executed, for example, when the OS is started, when a printer driver is installed, or when a printer connected to the
以下の説明において、ランゲージモニタ208が行う処理は、実際には、CPU112が、外部記憶装置115に格納されているランゲージモニタ208に対応するプログラムを実行することにより実現されるものとする。また、以下の説明においては、ポート初期化処理はポート1に対して行われるものとする。
In the following description, the processing performed by the
まず、S301にて、ランゲージモニタ208は、ポート1に接続されているプリンタ(プリンタ120)の能力情報の取得処理を実行する。S301の処理の詳細は、図4を用いて後述する。
First, in step S <b> 301, the
続いて、S302にて、ランゲージモニタ208は、プリンタ120のDevice IDを取得し、S301で取得した能力情報とポート1とに対応付けて、外部記憶装置115に不揮発に保存する。なお、Device IDは、例えば、ランゲージモニタ208がDevice IDを取得するためのコマンドをプリンタ120に送信することで、取得することができる。
Subsequently, in S302, the
次に、図4を用いて能力情報の取得処理の詳細を説明する。図4は、能力情報の取得処理の詳細を示すフローチャートである。以下の説明において、ランゲージモニタ208が行う処理は、実際には、CPU112が、外部記憶装置115に格納されているランゲージモニタ208に対応するプログラムを実行することにより実現されるものとする。なお、能力情報の取得処理の対象となるプリンタは、能力情報の取得処理の実行要因によって決まる。ポート初期化処理の際に実行される場合は、能力情報の取得処理は、初期化対象のポートに接続されているプリンタに対して実行される。後述するようなジョブの送信時に実行される場合は、能力情報の取得処理は、ジョブの送信先のプリンタに対して実行される。また、以下の説明においては、能力情報の取得処理はプリンタ120に対して実行されるものとする。
Next, details of the capability information acquisition process will be described with reference to FIG. FIG. 4 is a flowchart showing details of the capability information acquisition process. In the following description, the processing performed by the
まず、S401にて、ランゲージモニタ208は、プリンタ120の能力情報を取得する。本実施形態では、ランゲージモニタ208は、能力情報取得プロトコルに従ったXMLデータを含むユニキャストをプリンタ120に対して送信し、その後TCP通信を介してXMLデータを送受信することで、プリンタ120の能力情報を取得するものとする。なお、このとき、ランゲージモニタ208は、プリンタ120の能力情報を読み込みも行っている。
First, in step S <b> 401, the
続いて、S402にて、ランゲージモニタ208は、S401の処理が成功し、能力情報が取得できたか否かを判定する。能力情報が取得できたと判定した場合には、ランゲージモニタ208は、S403にて、取得した能力情報をキャッシュ情報として、プリンタ120が接続しているポート(ポート1)と対応付けて外部記憶装置115に不揮発に保存し、その後処理を終了する。一方、データ通信に失敗した場合等、能力情報が取得できなかったと判定した場合には、ランゲージモニタ208は、S404にて、ポート1に対応付けられて保存されているキャッシュ情報からプリンタ120の能力情報を読み込む。その後、ランゲージモニタ208は処理を終了する。なお、このとき、ランゲージモニタ208は、キャッシュ情報の読み込みに失敗した場合も、キャッシュ情報の読み込みに失敗した状態で処理を終了する。
Subsequently, in S402, the
図5は、ジョブの送信時の処理を示すフローチャートである。以下の説明において、ランゲージモニタ208が行う処理は、実際には、CPU112が、外部記憶装置115に格納されているランゲージモニタ208に対応するプログラムを実行することにより実現されるものとする。また、以下の説明においては、図5のフローチャートが示す処理は、ジョブをプリンタ120に送信する際に行われるものとする。
FIG. 5 is a flowchart showing processing at the time of job transmission. In the following description, the processing performed by the
まず、S501にて、ランゲージモニタ208は、プリンタ120のDevice IDを取得し、プリンタ120のDevice IDをプリンタ120が接続しているポート(ポート1)と対応付けて外部記憶装置115に不揮発に保存する。なお、このとき、ポート1と対応付けて前回保存したDevice IDは、S502の処理において利用するため、削除せずに保存しておく。
First, in step S <b> 501, the
続いて、S502にて、ランゲージモニタ208は、ポート1と対応付けて外部記憶装置115に不揮発に保存してある能力情報のキャッシュ情報が有効か無効かを判断する処理を実行する。キャッシュ情報が有効か無効かを判断する処理の詳細は、図6を用いて後述する。
In step S <b> 502, the
続いて、S503では、ランゲージモニタ208は、S501の処理の結果、キャッシュ情報が有効と判断されたか否かを判定する。S501において、キャッシュ情報が無効と判断された場合には、ランゲージモニタ208は、キャッシュ情報を参照すべきではないので、S504にてキャッシュ情報を削除し、S505にてプリンタ120の能力情報の取得処理を実行する。S505の能力情報の取得処理は、図4のフローチャートに示す処理と同様であるので説明を省略する。S501において、キャッシュ情報が有効と判断された場合には、ランゲージモニタ208は、S509にて、プリンタ120の能力情報が読み込まれているか否かを判定する。例えば、ポート1のポート初期化処理等の際に、プリンタ120の能力情報をすでに読み込んでいる場合には、ランゲージモニタ208は、プリンタ120の能力情報が読み込まれていると判定し、S506の処理を行う。一方、ポート1のポート初期化処理等の際に、プリンタ120の能力情報の読み込みに失敗している場合は、プリンタ120の能力情報が読み込まれていないと判定し、S510のキャッシュ情報読み込み処理を実行する。キャッシュ情報読み込み処理の詳細は、図7を用いて後述する。
In step S503, the
続いて、S506では、ランゲージモニタ208は、ジョブ保持処理を実行するか否かを判断する処理を実行する。ジョブ保持処理とは、実際にはジョブの送信が完了していても、スプーラ204に対しては、ジョブの送信が完了していないと通知することで、ジョブをジョブキュー205に残す処理をいう。ジョブ保持処理を実行することで、ランゲージモニタ208は、ランゲージモニタ208の機能によってプリンタ120がジョブの処理を完了するまで、当該ジョブの状態を監視することができる。具体的には、ランゲージモニタ208は、ジョブの状態として、ジョブ処理におけるエラーの有無やジョブの処理が完了したか否かを監視することができる。なお、ジョブ保持処理を実行するか否かを判断する処理の詳細は、図8を用いて後述する。
Subsequently, in S506, the
続いて、S507では、ランゲージモニタ208は、S506における処理の結果に応じて、ジョブの送信及びジョブ保持処理を行う。ジョブの送信及びジョブ保持処理の詳細は、図9を用いて後述する。
In step S507, the
続いて、S508では、ランゲージモニタ208は、プリンタ120のDevice IDをプリンタ120が接続しているポートと対応付けて外部記憶装置115に不揮発に保存し、処理を終了する。
In step S <b> 508, the language monitor 208 stores the device ID of the
また、近年、オプションを脱着させることにより、ケーパビリティを任意にカスタマイズできるプリンタが知られている。このようなオプションをサポートしているプリンタの能力情報は、オプションの脱着によって変化することがある。そのため、現在接続しているプリンタがオプションをサポートしているプリンタである場合、キャッシュ情報として保存した能力情報と、プリンタの現在の能力情報とが乖離している可能性があり、ランゲージモニタ208は、キャッシュ情報を利用すべきでない。 In recent years, printers that can arbitrarily customize capabilities by attaching / detaching options have been known. The capability information of a printer that supports such an option may change depending on the attachment / detachment of the option. Therefore, when the currently connected printer is a printer that supports the option, there is a possibility that the capability information stored as the cache information and the current capability information of the printer are different from each other. , Cache information should not be used.
また、PC110に接続されているプリンタが入れ替わった際には、当該プリンタが接続していたポートに対応付けて保存されていた能力情報は、新たに接続したプリンタの能力情報に更新される必要がある。しかし、所定の接続方式によって外部装置と接続するポートは、接続するプリンタが入れ替わったことを検知できない。そのようなポートは、接続するプリンタが入れ替わった場合でも、ポート初期化処理が実行されず、そのポートに対応付けられた能力情報が更新されない。そのため、現在接続しているプリンタが、接続するプリンタが入れ替わったことを検知できないポートに接続しているプリンタである場合、事前にキャッシュ情報として保存した能力情報と、プリンタの現在の能力情報とが乖離している可能性がある。そのため、ランゲージモニタ208は、キャッシュ情報を利用すべきでない。そこで、本実施形態では、能力情報のキャッシュ情報を利用する処理を行う場合は、まず、キャッシュ情報が有効か無効かを判断する処理を実行し、無効と判断した場合に、再度能力情報の取得処理を実行する。
Further, when the printer connected to the
図6を用いて、キャッシュ情報が有効か無効かを判断する処理の詳細を説明する。以下の説明において、ランゲージモニタ208が行う処理は、実際には、CPU112が、外部記憶装置115に格納されているランゲージモニタ208に対応するプログラムを実行することにより実現されるものとする。また、以下の説明においては、図6のフローチャートが示す処理は、ジョブをプリンタ120に送信する際に行われるものとする。
Details of processing for determining whether the cache information is valid or invalid will be described with reference to FIG. In the following description, the processing performed by the
まず、S601では、ランゲージモニタ208は、保存されている能力情報のキャッシュ情報から、プリンタ120がオプションをサポートしているか否かを判定する。S601にて、オプションをサポートしていると判定した場合には、当該判定に用いた能力情報がプリンタ120の能力情報であってもキャッシュ情報を利用すべきでないため、ランゲージモニタ208は、S606にてキャッシュ情報は無効と判断する。また、S601にて、オプションをサポートしていないと判定した場合には、ランゲージモニタ208は、S602の処理を行う。
First, in step S601, the
S602では、ランゲージモニタ208は、プリンタ120が、プリンタの接続時にポート初期化処理が実行されるポートに接続されているか否かを判定する。前述したように、ポートの種類によっては、接続するプリンタが入れ替わったことを検知できないものがある。そのようなポートは、接続するプリンタが入れ替わった場合でも、ポート初期化処理が実行されず、そのポートに対応付けられた能力情報が更新されない。接続するプリンタが入れ替わったことを検知でき、プリンタの接続時にポート初期化処理が起動されるポートは、例えば、USBポートである。一方、接続するプリンタが入れ替わったことを検知できず、プリンタの接続時にポート初期化処理が起動されないポートは、例えば、ネットワークポートである。プリンタ120が、プリンタの接続時にポート初期化処理が起動されるポートに接続している場合には、当該プリンタが接続した時にポート初期化処理が行われ、キャッシュ情報の更新が行われている。さらに、S601の判定によって、ポート初期化処理が行われた後に、オプションの着脱によってプリンタの能力情報が変化することがないことも確認されている。よって、ランゲージモニタ208は、S601にて、ポート初期化処理が実行されるポートに接続されていると判定した場合には、S605にて、キャッシュ情報は有効と判断する。一方、ランゲージモニタ208は、S601にて、ポート初期化処理が実行されるポートに接続されていないと判定した場合には、S603の処理を行う。なお、S601における判定は、例えば、ポート名やポートモニタのモジュール名から、プリンタ120が接続しているポートの種別を識別した後、プリンタ120が接続しているポート(ポート1)がUSBポートか否かを判定することによって行われる。または、キャッシュ情報がいずれのポートに対応付けられて保存されているかを識別し、そのポートがUSBポートか否かを判定することによって行われても良い。
In step S602, the
プリンタ120が、プリンタの接続時にポート初期化処理が実行されるポートに接続されていない場合は、プリンタの入れ替えが行われたにもかかわらず、キャッシュ情報として保存している能力情報の更新が行われていない可能性がある。そこで、S603では、ランゲージモニタ208は、プリンタ120と、キャッシュ情報として保存している能力情報の提供元であるプリンタが同一か否かを判定する。プリンタが同一でないと判定した場合、キャッシュ情報として保存している能力情報の更新が行われていないことから新たに能力情報を取得する必要があるため、ランゲージモニタ208は、S604にて、キャッシュ情報は無効と判断する。一方、プリンタが同一であると判定した場合、ランゲージモニタ208は、S605にて、キャッシュ情報は有効と判定する。この判定は、例えば、ランゲージモニタ208が、S501にて直前に取得したDevice IDと、S501にて取得する前に保存していたDevice IDとを比較することで行われる。S501にて直前に取得したDevice IDは、プリンタ120のDevice IDに対応する。また、S501にて取得する前に保存していたDevice IDは、キャッシュ情報として保存している能力情報の提供元であるプリンタのDevice IDに対応する。なお、この判定は、ランゲージモニタ208が、プリンタのシリアルナンバー等、プリンタを一意に示す識別情報や、プリンタの機種名で比較することによって行われても良い。また、シリアルナンバーや機種名の等の情報は、Device IDに含まれる情報であっても良い。
If the
なお、S603の処理を行わない構成としても良い。この場合、キャッシュ情報が有効か無効かの判断の精度は下がるが、S501の処理を実行する必要がなくなり、PC110の負荷を減らすことができる。
A configuration in which the process of S603 is not performed may be employed. In this case, the accuracy of determining whether the cache information is valid or not decreases, but it is not necessary to execute the process of S501, and the load on the
本実施形態では、ランゲージモニタ208は、ジョブの送信先のプリンタの能力情報が変化するか否かを判定することで、キャッシュ情報が有効か無効かを判断する。さらに、本実施形態では、ランゲージモニタ208は、ジョブの送信先のプリンタとキャッシュ情報として保存している能力情報の提供元であるプリンタが同一か否かを判定することで、キャッシュ情報が有効か無効かを判断する。このような形態とすることで、ランゲージモニタ208は、現在の情報と乖離した無効な情報を利用してしまうことを回避することができる。さらに、本実施形態では、S504及びS505に示したように、図6のフローチャートが示す処理においてキャッシュ情報が無効と判断された場合は、能力情報の取得処理を実行する。このような形態とすることで、キャッシュ情報が無効であった場合にも、有効な情報を再度取得することができる。さらに、本実施形態では、図6のフローチャートが示す処理においてキャッシュ情報が有効と判断された場合は、能力情報の取得処理を実行しない。能力情報の取得処理は、PC110及び能力情報を提供するプリンタの双方にとって負荷がかかる。しかし、このように、キャッシュ情報が有効であり能力情報の取得処理が必要ない場合には能力情報の取得処理を実行しない形態とすることで、本実施形態では、PC110及びプリンタの負荷を軽減することができる。
In this embodiment, the
なお、キャッシュ情報が有効か無効かを判断する処理は、ジョブを送信する情報処理装置だけでなく、接続している外部装置に関するキャッシュ情報を利用する種々の処理を実行する情報処理装置に適用することが可能である。キャッシュ情報を利用する処理として、例えば、情報処理装置に接続している外部装置の状態をユーザに通知する処理等が挙げられる。 The process for determining whether the cache information is valid or invalid applies not only to the information processing apparatus that transmits the job, but also to the information processing apparatus that executes various processes that use the cache information related to the connected external device. It is possible. Examples of processing using cache information include processing for notifying the user of the state of an external device connected to the information processing device.
図7を用いて、キャッシュ情報読み込み処理の詳細を説明する。以下の説明において、ランゲージモニタ208が行う処理は、実際には、CPU112が、外部記憶装置115に格納されているランゲージモニタ208に対応するプログラムを実行することにより実現されるものとする。また、以下の説明においては、図7のフローチャートが示す処理は、ジョブがプリンタ120に送信される際に行われるものとする。
Details of the cache information reading process will be described with reference to FIG. In the following description, the processing performed by the
まず、S701では、ランゲージモニタ208は、能力情報の取得処理において保存した、プリンタ120に接続されているポート(ポート1)に対応付けられて保存されているキャッシュ情報を読み込む。なお、このとき、キャッシュ情報がユーザにより意図的に削除された場合や、外部記憶装置115の空き容量不足などで一度もキャッシュ情報の生成に成功していない場合等、キャッシュ情報の読み込みに失敗する場合がある。そこで、ランゲージモニタ208は、S702にて、キャッシュ情報の読み込みに成功したか否かを判定する。キャッシュ情報の読み込みに成功した場合には、ランゲージモニタ208は、キャッシュ情報読み込み処理を終了する。一方、キャッシュ情報の読み込みに成功しなかった場合には、ランゲージモニタ208は、S703にて、前述した方法と同様にしてプリンタ120から能力情報を取得する。その後、ランゲージモニタ208は、S704にて、取得した能力情報をキャッシュ情報としてポート1に対応付けて不揮発に保存する。
First, in step S <b> 701, the language monitor 208 reads the cache information stored in association with the port (port 1) connected to the
図8を用いて、ジョブ保持処理を実行するか否かを判断する処理の詳細を説明する。以下の説明において、ランゲージモニタ208が行う処理は、実際には、CPU112が、外部記憶装置115に格納されているランゲージモニタ208に対応するプログラムを実行することにより実現されるものとする。また、以下の説明においては、図8のフローチャートが示す処理は、ジョブをプリンタ120に送信する際に行われるものとする。
Details of the process for determining whether to execute the job holding process will be described with reference to FIG. In the following description, the processing performed by the
ランゲージモニタ208は、プリンタ120と双方向通信できない場合、ジョブの状態を監視することができない。そのため、まず、ランゲージモニタ208は、S801にて、プリンタ120と双方向通信できるか否かを判定する。S801の判定は、例えば、ランゲージモニタ208が、プリンタドライバの設定が片方向通信でプリンタ120と通信する設定になっていないか否かを判定することによって行われる。なお、S801の判定は、ランゲージモニタ208が、プリンタ120が接続しているポート(ポート1)が、ランゲージモニタ208がサポートしているポートであるか否かを判定することによって行われても良い。このとき、例えば、ランゲージモニタ208は、ポート1のポート名が、ランゲージモニタ208がサポートしているポートを示す所定の文字列を含むか否かを判定する。また、S801の判定は、ランゲージモニタ208が、期待する全ての情報をプリンタ120から取得できたか否かを判定することによって行われても良い。ランゲージモニタ208が期待する情報には、例えば、プリンタ120が備えるインクの残量情報や、仕向け情報などがある。ランゲージモニタ208は、双方向通信できると判定した場合、S802の処理を行い、双方向通信できないと判定した場合、S804にて、ジョブ保持処理を実行しないと判断する。
The language monitor 208 cannot monitor the job status when it cannot communicate with the
受信したジョブをジョブキューにキューイングし、キューイングした順番にジョブを処理するプリンタ(ジョブキューを備えているプリンタ)にジョブを送信する場合にジョブ保持処理が実行されると、ジョブの処理順番の追い越しが発生する可能性がある。このため、ランゲージモニタ208は、プリンタ120がジョブキューを備えている場合には、ジョブ保持処理を実行すべきでない。そこで、ランゲージモニタ208は、S802にて、S505又はS510にて読み込んだプリンタ120の能力情報を参照して、プリンタ120がジョブキューをサポート(ジョブをキューイングできる機能を保持)しているか否かを判定する。ランゲージモニタ208は、プリンタ120がキューを備えていると判定した場合には、S804にて、ジョブ保持処理を実行しないと判断する。一方、ランゲージモニタ208は、プリンタ120がキューを備えていないと判定した場合には、S803にて、ジョブ保持処理を実行すると判断する。なお、このとき、ネットワークトラブル等でプリンタ120から能力情報を取得できない場合や、能力情報にキューを備えているか否かの情報が含まれていない場合等、プリンタ120がキューを備えているか否かを判定できない場合がある。この場合には、ランゲージモニタ208は、S805にて、ジョブ保持処理を実行しないと判断する。
When job holding processing is executed when a job is sent to a printer that queues received jobs to the job queue and the jobs are processed in the queued order (a printer having a job queue), the job processing order There is a possibility that overtaking will occur. Therefore, the language monitor 208 should not execute job holding processing when the
このように、本実施形態では、ランゲージモニタ208は、ジョブの送信先のプリンタがジョブキューを備えているか否かによってジョブ保持処理を実行するか否かを切り替える。さらに、本実施形態では、ランゲージモニタ208は、ジョブの送信先のプリンタがジョブキューを備えているか不明な場合は、ジョブ保持処理を実行しない。このような形態とすることで、ランゲージモニタ208は、ジョブキューを備えているプリンタにジョブを送信する場合にジョブ保持処理を実行した際に生じえる課題を回避することができ、適切な場合にジョブ保持処理を実行できる。なお、S502の処理を実行しない場合は、ジョブ保持処理を実行するか否かを判断する処理は、キャッシュ情報を参照することによって行われても良いし、直前に能力情報の取得処理を行い、取得した能力情報を参照することによって行われても良い。
As described above, in this embodiment, the language monitor 208 switches whether or not to execute the job holding process depending on whether or not the job transmission destination printer has a job queue. Further, in the present embodiment, the
図9を用いてジョブの送信の処理及びジョブ保持処理の詳細を説明する。以下の説明において、スプーラ204又はランゲージモニタ208が行う処理は、実際には、CPU112が、外部記憶装置115に格納されているスプーラ204又はランゲージモニタ208に対応するプログラムを実行することにより実現されるものとする。また、以下の説明においては、図9のフローチャートが示す処理は、スプーラ204から、プリンタ120へのジョブの送信の開始の指示を表すコマンドが出力され、ランゲージモニタ208がその出力を受信した際に行われるものとする。なお、その後は、実際の印刷データやメンテナンスコマンドなどのデータがランゲージモニタ208に対して出力されることとなる。また、ランゲージモニタ208は、スプーラ204から指示されるサイズのデータを逐一送信することで、ジョブを分割しながらプリンタ120に送信する。
Details of job transmission processing and job holding processing will be described with reference to FIG. In the following description, the processing performed by the
まず、ランゲージモニタ208は、S901にて、ジョブをプリンタ120に送信するための最後のデータ送信か否かを判定する。この処理は、ランゲージモニタ208が、スプーラ204から受信する、データ送信を指示するためのコマンドを解析することにより判別することができる。
First, in step S <b> 901, the
最後のデータ送信でないと判定した場合は、まだジョブ保持処理を実行する必要はないため、ランゲージモニタ208は、S902にて、指示されたサイズのデータをプリンタ120に送信し、再びS901の処理を行う。
If it is determined that it is not the last data transmission, it is not necessary to execute the job holding process yet. Therefore, in S902, the language monitor 208 transmits the instructed size data to the
一方、S901〜S902の処理が繰り返されることにより、最後のデータ送信であると判定した場合は、ランゲージモニタ208は、S903にて、ジョブの全てのデータを送信したか否かを判定する。最初にS903の判定を行う場合においては、最後のデータ送信が完了していないので、ランゲージモニタ208は、S904にて、指示されたサイズのデータをプリンタ120に送信する。
On the other hand, when it is determined that the last data transmission is performed by repeating the processing of S901 to S902, the
その後、ランゲージモニタ208は、S905にて、S506の処理において、ジョブ保持処理を実行すると判断されたか否かを判定する。S506の処理において、ジョブ保持処理を実行すると判断されなかった場合、ランゲージモニタ208は、S910にて、ジョブの送信が完了したことをスプーラ204に通知する。スプーラ204は、ランゲージモニタ208から当該通知を受けることで、対象のジョブを管理外とする。具体的には、スプーラ204は、ジョブキュー205から対象とするジョブそのもの又はジョブの情報を削除/無効化する。一方、S506の処理において、ジョブ保持処理を実行すると判断された場合、ランゲージモニタ208は、S906にて、プリンタ120からジョブの状態の情報を取得する。その後、ランゲージモニタ208は、S907にて、S906にて取得した情報をステータス表示アプリケーションに伝達するべく、S906にて取得した情報を所定の記憶領域に書き込む。なお、ステータス表示アプリケーションは、印刷要求元のアプリケーション201であっても良いし、印刷要求元のアプリケーション201とは別のアプリケーションであっても良いし、UIモジュール203であっても良い。ステータス表示アプリケーションは、S906にて取得した情報を表示することで、出力装置118等に表示し、ユーザにジョブの状態の情報を通知する。
Thereafter, the
続いて、ランゲージモニタ208は、S908にて、プリンタ120によってジョブの処理が完了したか否かを判定する。この判定は、例えば、プリンタ120から取得される、印刷中のデータのページ番号を示すステータスを取得することによって行われる。このステータスは、印刷を行っていない間は値を持たない(例えば零)ため、それによりジョブの処理が完了したか否かを判定することができる。ジョブの処理が完了していないと判定した場合、ランゲージモニタ208は、S909にて、ジョブの送信が完了していないことをスプーラ204に通知する。この処理は、例えば、ランゲージモニタ208がデータ送信を指示するためのコマンドに対する戻り値として、指定されたサイズ未満のバイトの値をスプーラ204に対して返すことで行われる。通常、ランゲージモニタ208は、戻り値としてプリンタ120へ送信した正確なバイト数を返す。このようにすることで、スプーラ204は、ジョブの送信が正しく行われたことを認識することができる。しかし、ここでは、ランゲージモニタ208は、戻り値として、指定されたサイズ未満のバイトの値をスプーラ204に対して返すことで、スプーラ204にジョブの送信が正しく行われなかったと認識させる。スプーラ204は、データの送信が完了していないと認識しているため、未出力バイトのデータの送信指示を再び出力してくる。しかし、ランゲージモニタ208は、既に全データを送信済みであるため、(S903でYes)、実際のプリンタ120へのデータ送信は行わず、再びジョブの状態を取得する(S906)ことができる。このような形態とすることで、ランゲージモニタ208は、ジョブ保持処理を実行している間は、ユーザにジョブの状態の情報を通知することができる。
Subsequently, the
ランゲージモニタ208は、S901乃至S907の処理を繰り返し、プリンタ120がジョブの処理を完了したことに応じて(S908でYES)、ジョブの送信が完了したことをスプーラ204に通知する。具体的には、ランゲージモニタ208は、スプーラ204への戻り値として、正確な値を返信する。このような形態とすることで、スプーラ204が管理しているジョブの送信の完了時間と、プリンタ120による実際のジョブの処理の完了時間をほぼ一致させることができ、ユーザにジョブの処理の完了時間を通知することができる。
The
以上で説明したように、本実施形態では、送信先のプリンタがジョブキューを備えているか否かに応じて、ジョブ保持処理を実行するか否かを切り替える。このような形態とすることで、PC110は、適切な場合にジョブ保持処理を実行することができ、ユーザの利便性を向上させることができる。
As described above, in the present embodiment, whether to execute the job holding process is switched depending on whether the destination printer has a job queue. By adopting such a configuration, the
<その他の実施形態>
上述の実施形態では、図2に示されるような、PC110にインストールされる各ソフトウェアモジュールが協働した形態を説明してきたが、これを応用した形態も想定される。例えば、ランゲージモニタ208が別のPCにインストールされている形態であっても良い。この場合には、ランゲージモニタ208とスプーラ204とがプロセス間通信を行うことにより、上述の実施形態と同様の効果を得ることが出来る。
<Other embodiments>
In the above-described embodiment, the form in which the software modules installed in the
上述の実施形態では、ランゲージモニタ208や、スプーラ204の各々のソフトウェアモジュールを別々に示したが、例えば、1プロセスで実行される1ソフトウェアモジュールによっても、上述の実施形態と同様の効果を得ることが出来る。
In the above-described embodiment, the software modules of the
上述の実施形態では、Version3プリンタドライバを用いた形態を説明した。なお、近年、Windows(登録商標)8では、Version4プリンタドライバと呼ばれる、Version3プリンタドライバと異なるプリンタドライバ構成が採用された。新しいプリンタドライバを構成するモジュール群はランゲージモニタが含まれていない。そこで、Version4プリンタドライバにおいては、フィルタと呼ばれる構成によってランゲージモニタと同様の機能を実現しても良い。 In the above-described embodiment, the mode using the Version 3 printer driver has been described. In recent years, Windows (registered trademark) 8 has adopted a printer driver configuration called a Version 4 printer driver, which is different from the Version 3 printer driver. Language modules are not included in the modules that make up the new printer driver. Therefore, in the Version 4 printer driver, the same function as the language monitor may be realized by a configuration called a filter.
上述の実施形態のジョブ保持処理を実行するか否かの判断において、送信するジョブの種類を参照しても良い。例えば、プリンタ120の電源のON又はOFFを指示する電源制御処理、動作音モード等のプリンタ120の動作モード設定処理等をプリンタ120に実行させるためのメンテナンスジョブを送信する場合は、ジョブ保持処理を実行しないように判断しても良い。
In determining whether or not to execute the job holding process according to the above-described embodiment, the type of job to be transmitted may be referred to. For example, when transmitting a maintenance job for causing the
上述の実施形態の効果を実現できれば、上述の実施形態のフローチャートの処理の順番を入れ替えても良いし、その全ての処理を実行しなくても良いし、処理の内容を変更しても良い。例えば、ランゲージモニタ208は、S506の処理を実行せず、S905の処理においてS506と同様の処理を実行してもいい。
As long as the effects of the above-described embodiment can be realized, the processing order of the flowcharts of the above-described embodiment may be changed, all of the processing may not be executed, or the processing content may be changed. For example, the
上述の実施形態は、上述の実施形態の1以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを実行する処理でも実現可能である。また、上述の実施形態は、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。 The above-described embodiment supplies a program that realizes one or more functions of the above-described embodiment to a system or apparatus via a network or a storage medium, and one or more processors in the computer of the system or apparatus execute the program This process can be realized. The above-described embodiments can also be realized by a circuit (for example, ASIC) that realizes one or more functions.
110 PC
120 プリンタ
204 スプーラ
208 ランゲージモニタ
110 PC
120
Claims (14)
前記外部装置がジョブの処理順番を管理可能なジョブキューを備えているか否かを示す情報を含む能力情報を前記外部装置から取得する取得ステップと、
ジョブの送信指示を受け付ける受け付けステップと、
前記受け付けステップの前に実行された前記取得ステップにより前記外部装置から取得された前記能力情報をキャッシュ情報として保存する保存ステップと、
前記ジョブを管理し、管理している前記ジョブの送信が完了したか否かを認識する管理機能を有するスプーラが管理する前記ジョブを、前記受け付けステップの後に前記外部装置に送信する送信ステップと、
前記送信ステップにて送信した前記ジョブの処理が前記外部装置によって完了していない場合に、前記外部装置への前記ジョブの送信が完了したにもかかわらず前記スプーラに前記ジョブの送信が完了していないと認識させるジョブ保持処理を実行する処理ステップ
と、を実行させるためのプログラムであって、
新たに前記外部装置が接続したことを前記プログラムが検知できない第1接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付けステップにて受け付けられた場合、前記受け付けステップの後にも前記取得ステップを実行し、
前記第1接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付けステップにて受け付けられ、且つ前記受け付けステップの後に実行された前記取得ステップにて取得された前記能力情報に前記外部装置が前記ジョブキューを備えていることを示す情報が含まれる場合は、前記ジョブ保持処理を実行せず、
前記第1接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付けステップにて受け付けられ、且つ前記受け付けステップの後に実行された前記取得ステップにて取得された前記能力情報に前記外部装置が前記ジョブキューを備えていることを示す情報が含まれない場合は、前記ジョブ保持処理を実行し、
新たに前記外部装置が接続したことを前記プログラムが検知できる第2接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付けステップにて受け付けられた場合、前記受け付けステップの後には前記取得ステップを実行せず、
前記第2接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付けステップにて受け付けられ、且つ前記キャッシュ情報に前記外部装置が前記ジョブキューを備えていることを示す情報が含まれる場合は、前記ジョブ保持処理を実行せず、前記第2接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付けステップにて受け付けられ、且つ前記キャッシュ情報に前記外部装置が前記ジョブキューを備えていることを示す情報が含まれない場合は、前記ジョブ保持処理を実行することを特徴とするプログラム。 In the computer of the information processing device connected to the external device,
An acquisition step of acquiring from the external device capability information including information indicating whether or not the external device has a job queue capable of managing the job processing order;
A reception step for receiving a job transmission instruction;
A storing step of storing the capability information acquired from the external device by the acquiring step executed before the receiving step as cache information;
Transmitting the job managed by a spooler having a management function for recognizing whether or not transmission of the managed job is completed, and transmitting the job to the external device after the receiving step;
When the processing of the job transmitted in the transmission step is not completed by the external device, the transmission of the job to the spooler is completed despite the completion of the transmission of the job to the external device. A processing step for executing a job holding process to be recognized as a program,
An instruction to send the job to the external apparatus connected to the information processing apparatus via the first connection method in which the program cannot detect that the external apparatus is newly connected has been received in the receiving step. In the case, the acquisition step is executed even after the reception step,
In the acquisition step, an instruction to transmit the job to the external device connected to the information processing apparatus via the first connection method is received in the reception step, and executed after the reception step. If the acquired capability information includes information indicating that the external device includes the job queue, the job holding process is not executed,
In the acquisition step, an instruction to transmit the job to the external device connected to the information processing apparatus via the first connection method is received in the reception step, and executed after the reception step. If the acquired capability information does not include information indicating that the external device includes the job queue, the job holding process is executed,
An instruction to send the job to the external apparatus connected to the information processing apparatus via the second connection method that allows the program to detect that the external apparatus is newly connected has been received in the receiving step. In this case, the acquisition step is not performed after the reception step,
An instruction to transmit the job to the external apparatus connected to the information processing apparatus via the second connection method is accepted in the accepting step, and the external apparatus includes the job queue in the cache information. The job holding process is not executed, and the job transmission instruction to the external device connected to the information processing apparatus via the second connection method is not included in the job holding process. The program, which is received in the receiving step and executes the job holding process when the cache information does not include information indicating that the external device includes the job queue.
前記第1接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付けステップにて受け付けられ、且つ前記キャッシュ情報に対応する能力情報の提供元の前記外部装置と前記第1接続方式を介して前記情報処理装置が接続している前記外部装置とが異ならない場合、前記受け付けステップの後には前記取得ステップを実行しないことを特徴とする請求項1に記載のプログラム。 The transmission instruction of the job to the external device connected to the information processing apparatus via the first connection method is received in the reception step, and the capability information provider corresponding to the cache information If the external device is different from the external device to which the information processing device is connected via the first connection method, the acquisition step is executed after the receiving step,
The transmission instruction of the job to the external device connected to the information processing apparatus via the first connection method is received in the reception step, and the capability information provider corresponding to the cache information The acquisition step is not executed after the accepting step when the external device is not different from the external device to which the information processing apparatus is connected via the first connection method. The program described.
前記第1接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付けステップにて受け付けられ、前記キャッシュ情報に対応する能力情報の提供元の前記外部装置と前記第1接続方式を介して前記情報処理装置が接続している前記外部装置とが異ならず、且つ前記キャッシュ情報に前記外部装置が前記ジョブキューを備えていることを示す情報が含まれない場合は、前記ジョブ保持処理を実行することを特徴とする請求項2に記載のプログラム。 An instruction to send the job to the external apparatus connected to the information processing apparatus via the first connection method is accepted in the accepting step, and the external of the provider of capability information corresponding to the cache information Information indicating that the external device includes the job queue is not included in the cache information and the external device to which the information processing device is connected via the first connection method is not different. The job holding process is not executed,
An instruction to send the job to the external apparatus connected to the information processing apparatus via the first connection method is accepted in the accepting step, and the external of the provider of capability information corresponding to the cache information The cache information includes information indicating that the external device is not different from the external device connected to the information processing device via the first connection method, and the cache information includes the job queue. 3. The program according to claim 2, wherein when there is no job, the job holding process is executed.
前記オプションの着脱によって能力が変化する可能性がある前記外部装置への前記ジョブの送信指示が前記受け付けステップにて受け付けられ、且つ前記受け付けステップの後に実行された前記取得ステップにて取得された前記能力情報に前記外部装置が前記ジョブキューを備えていることを示す情報が含まれない場合は、前記ジョブ保持処理を実行することを特徴とする請求項4に記載のプログラム。 The transmission instruction of the job to the external device whose capability may change due to the attachment / detachment of the option is received in the reception step, and acquired in the acquisition step executed after the reception step When the capability information includes information indicating that the external device includes the job queue, the job holding process is not executed,
The transmission instruction of the job to the external device whose capability may change due to the attachment / detachment of the option is received in the reception step, and acquired in the acquisition step executed after the reception step 5. The program according to claim 4, wherein if the capability information does not include information indicating that the external apparatus includes the job queue, the job holding process is executed.
前記外部装置がジョブの処理順番を管理可能なジョブキューを備えているか否かを示す情報を含む能力情報を前記外部装置から取得する取得手段と、
ジョブの送信指示を受け付ける受け付け手段と、
前記受け付け手段により前記ジョブの送信指示が受け付けられる前に前記取得手段により前記外部装置から取得された前記能力情報をキャッシュ情報として保存する保存手段と、
前記ジョブを管理し、管理している前記ジョブの送信が完了したか否かを認識する管理機能を有するスプーラが管理する前記ジョブを、前記受け付け手段により前記ジョブの送信指示が受け付けられた後に前記外部装置に送信する送信手段と、
前記送信手段が送信した前記ジョブの処理が前記外部装置によって完了していない場合に、前記外部装置への前記ジョブの送信が完了したにもかかわらず前記スプーラに前記ジョブの送信が完了していないと認識させるジョブ保持処理を実行する処理手段と、を有し、
新たに前記外部装置が接続したことを前記所定のプログラムが検知できない第1接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付け手段によって受け付けられた場合、前記ジョブの送信指示が前記受け付け手段によって受け付けられた後にも前記取得手段によって前記能力情報を取得し、
前記第1接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付け手段によって受け付けられ、且つ前記ジョブの送信指示が前記受け付け手段によって受け付けられた後に前記取得手段によって取得された前記能力情報に前記外部装置が前記ジョブキューを備えていることを示す情報が含まれる場合は、前記ジョブ保持処理を実行せず、前記第1接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付け手段によって受け付けられ、且つ前記ジョブの送信指示が前記受け付け手段によって受け付けられた後に前記取得手段によって取得された前記能力情報に前記外部装置が前記ジョブキューを備えていることを示す情報が含まれない場合は、前記ジョブ保持処理を実行し、
新たに前記外部装置が接続したことを前記所定のプログラムが検知できる第2接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付け手段によって受け付けられた場合、前記ジョブの送信指示が前記受け付け手段によって受け付けられた後には前記取得手段によって前記能力情報を取得せず、
前記第2接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付け手段によって受け付けられ、且つ前記キャッシュ情報に前記外部装置が前記ジョブキューを備えていることを示す情報が含まれる場合は、前記ジョブ保持処理を実行せず、前記第2接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付け手段によって受け付けられ、且つ前記キャッシュ情報に前記外部装置が前記ジョブキューを備えていることを示す情報が含まれない場合は、前記ジョブ保持処理を実行することを特徴とする情報処理装置。 An information processing apparatus connected to an external device and having a predetermined program ,
Acquisition means for acquiring from the external device capability information including information indicating whether or not the external device has a job queue capable of managing the job processing order;
Receiving means for receiving a job transmission instruction;
Storage means for storing the capability information acquired from the external device by the acquisition means as cache information before the transmission instruction of the job is received by the reception means;
The job managed by the spooler having a management function for recognizing whether or not the transmission of the managed job is completed is managed after the job transmission instruction is received by the receiving unit. A transmission means for transmitting to an external device;
When the processing of the job transmitted by the transmission unit is not completed by the external device, transmission of the job to the spooler is not completed even though transmission of the job to the external device is completed Processing means for executing job holding processing to be recognized as,
An instruction to transmit the job to the external apparatus connected to the information processing apparatus via the first connection method in which the predetermined program cannot detect that the external apparatus is newly connected is received by the receiving unit. When the job transmission instruction is received by the receiving unit, the capability information is acquired by the acquiring unit,
After an instruction to send the job to the external apparatus connected to the information processing apparatus via the first connection method is accepted by the accepting means, and an instruction to send the job is accepted by the accepting means When the capability information acquired by the acquisition unit includes information indicating that the external device includes the job queue, the job holding process is not executed, and the first connection method is used to execute the job holding process. The capability acquired by the acquisition unit after an instruction to transmit the job to the external device to which the information processing apparatus is connected is received by the reception unit, and the transmission instruction of the job is received by the reception unit If the information does not include information indicating that the external device has the job queue, Run the job holding process,
An instruction to transmit the job to the external device connected to the information processing apparatus is received by the receiving unit via the second connection method in which the predetermined program can detect that the external apparatus is newly connected. If the transmission instruction of the job is received by the receiving unit, the capability information is not acquired by the acquiring unit,
An instruction to transmit the job to the external apparatus connected to the information processing apparatus via the second connection method is received by the receiving unit, and the external apparatus includes the job queue in the cache information. The job holding process is not executed, and the job transmission instruction to the external device connected to the information processing device via the second connection method is not accepted. An information processing apparatus that executes the job holding process when the cache information does not include information indicating that the external apparatus includes the job queue.
前記外部装置がジョブの処理順番を管理可能なジョブキューを備えているか否かを示す情報を含む能力情報を前記外部装置から取得する取得ステップと、
ジョブの送信指示を受け付ける受け付けステップと、
前記受け付けステップの前に実行された前記取得ステップにより前記外部装置から取得された前記能力情報をキャッシュ情報として保存する保存ステップと、
前記ジョブを管理し、管理している前記ジョブの送信が完了したか否かを認識する管理機能を有するスプーラが管理する前記ジョブを、前記受け付けステップの後に前記外部装置に送信する送信ステップと、
前記送信ステップにて送信した前記ジョブの処理が前記外部装置によって完了していない場合に、前記外部装置への前記ジョブの送信が完了したにもかかわらず前記スプーラに前記ジョブの送信が完了していないと認識させるジョブ保持処理を実行する処理ステップと、を有し、
新たに前記外部装置が接続したことを前記所定のプログラムが検知できない第1接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付けステップにて受け付けられた場合、前記受け付けステップの後にも前記取得ステップを実行し、
前記第1接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付けステップにて受け付けられ、且つ前記受け付けステップの後に実行された前記取得ステップにて取得された前記能力情報に前記外部装置が前記ジョブキューを備えていることを示す情報が含まれる場合は、前記ジョブ保持処理を実行せず、
前記第1接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付けステップにて受け付けられ、且つ前記受け付けステップの後に実行された前記取得ステップにて取得された前記能力情報に前記外部装置が前記ジョブキューを備えていることを示す情報が含まれない場合は、前記ジョブ保持処理を実行し、
新たに前記外部装置が接続したことを前記所定のプログラムが検知できる第2接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付けステップにて受け付けられた場合、前記受け付けステップの後には前記取得ステップを実行せず、
前記第2接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付けステップにて受け付けられ、且つ前記キャッシュ情報に前記外部装置が前記ジョブキューを備えていることを示す情報が含まれる場合は、前記ジョブ保持処理を実行せず、
前記第2接続方式を介して前記情報処理装置が接続している前記外部装置への前記ジョブの送信指示が前記受け付けステップにて受け付けられ、且つ前記キャッシュ情報に前記外部装置が前記ジョブキューを備えていることを示す情報が含まれない場合は、前記ジョブ保持処理を実行することを特徴とする制御方法。 A control method connected to an external device and executed in an information processing apparatus having a predetermined program ,
An acquisition step of acquiring from the external device capability information including information indicating whether or not the external device has a job queue capable of managing the job processing order;
A reception step for receiving a job transmission instruction;
A storing step of storing the capability information acquired from the external device by the acquiring step executed before the receiving step as cache information;
Transmitting the job managed by a spooler having a management function for recognizing whether or not transmission of the managed job is completed, and transmitting the job to the external device after the receiving step;
When the processing of the job transmitted in the transmission step is not completed by the external device, the transmission of the job to the spooler is completed despite the completion of the transmission of the job to the external device. And a processing step for executing a job holding process to be recognized as
An instruction to transmit the job to the external apparatus connected to the information processing apparatus via the first connection method in which the predetermined program cannot detect that the external apparatus is newly connected is received in the reception step. If so, the acquisition step is executed after the reception step,
In the acquisition step, an instruction to transmit the job to the external device connected to the information processing apparatus via the first connection method is received in the reception step, and executed after the reception step. If the acquired capability information includes information indicating that the external device includes the job queue, the job holding process is not executed,
In the acquisition step, an instruction to transmit the job to the external device connected to the information processing apparatus via the first connection method is received in the reception step, and executed after the reception step. If the acquired capability information does not include information indicating that the external device includes the job queue, the job holding process is executed,
An instruction to transmit the job to the external apparatus connected to the information processing apparatus via the second connection method that allows the predetermined program to detect that the external apparatus is newly connected is received in the reception step. If it is, do not execute the acquisition step after the acceptance step,
An instruction to transmit the job to the external apparatus connected to the information processing apparatus via the second connection method is accepted in the accepting step, and the external apparatus includes the job queue in the cache information. If the job information is included, the job holding process is not executed,
An instruction to transmit the job to the external apparatus connected to the information processing apparatus via the second connection method is accepted in the accepting step, and the external apparatus includes the job queue in the cache information. When the information indicating that the job is stored is not included, the job holding process is executed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015110386A JP6608175B2 (en) | 2015-05-29 | 2015-05-29 | Information processing apparatus, control method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015110386A JP6608175B2 (en) | 2015-05-29 | 2015-05-29 | Information processing apparatus, control method, and program |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2016224704A JP2016224704A (en) | 2016-12-28 |
JP2016224704A5 JP2016224704A5 (en) | 2018-07-05 |
JP6608175B2 true JP6608175B2 (en) | 2019-11-20 |
Family
ID=57748288
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015110386A Active JP6608175B2 (en) | 2015-05-29 | 2015-05-29 | Information processing apparatus, control method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6608175B2 (en) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4659531B2 (en) * | 2005-06-28 | 2011-03-30 | キヤノン株式会社 | Job status monitoring system, job status monitoring method, program, and storage medium |
JP5679740B2 (en) * | 2010-08-26 | 2015-03-04 | キヤノン株式会社 | Peripheral device control system, peripheral device, information processing device, and control method |
-
2015
- 2015-05-29 JP JP2015110386A patent/JP6608175B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2016224704A (en) | 2016-12-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7355147B2 (en) | application program | |
US8773691B2 (en) | Printing control apparatus, printing control method, and storage medium | |
US8823990B2 (en) | Print job distribution within a printing system | |
US20160274822A1 (en) | Image forming apparatus, image processing system, and method | |
JP2022141656A (en) | Server system, printing device, control method, and communication system | |
JP2023053961A (en) | System and control method | |
JP6371697B2 (en) | Information processing apparatus, print control method, and program | |
JP5926514B2 (en) | Print control apparatus, print control method, and program | |
JP2013073369A (en) | Print control system, print control method, image processor and print control program | |
JP2017204139A (en) | Update application and update method | |
JP2012155401A (en) | Printing system, printing device, control method of printing system, control method of printing device, and program | |
JP6602053B2 (en) | Information processing apparatus, control method, and program | |
US10277765B2 (en) | Information processing device, control method, and program | |
JP6608175B2 (en) | Information processing apparatus, control method, and program | |
US11403048B2 (en) | Print control device, print control method, and non-transitory computer-readable storage medium storing print control program which converts and generates second printing data based on custom setting value | |
JP2019174999A (en) | Printing system, printing method, image forming apparatus, its control method, and program | |
JP2013196259A (en) | Data processor, data processing system and program | |
US9158489B1 (en) | Buffering a print instruction before its transferred to a printing apparatus | |
JP7439973B2 (en) | Program sets, programs, and information processing equipment | |
US10691382B2 (en) | Information processing device, method of controlling information processing device, and non-transitory computer-readable recording medium containing instructions realizing printer driver | |
JP2016018226A (en) | User terminal, image forming apparatus, server device, printing system, user terminal control method, image forming apparatus control method, server device control method, and program | |
JP2022109423A (en) | Support program | |
JP2014108545A (en) | Printer, control method of printer and program | |
JP2006173905A (en) | Job management device, job management system, job management method, and control program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180517 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180521 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180521 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20181109 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20181211 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190212 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190514 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190712 |
|
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: 20190924 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20191023 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6608175 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |