(58)【調査した分野】(Int.Cl.,DB名)
前記接続は、TCP(Transmission Control Protocolの略)/IP(Internet Protocolの略)に従った接続である、請求項2に記載のプリンタ。
【発明を実施するための形態】
【0010】
(第1実施例)
(通信システム2の構成;
図1)
図1に示されるように、通信システム2は、プリンタ10と、PC50と、を備える。各デバイス10,50は、相互に通信可能である。
【0011】
(プリンタ10の構成)
プリンタ10は、印刷を実行可能な周辺機器(即ちPC50の周辺機器)である。プリンタ10は、操作部12と、表示部14と、通信インターフェース16と、印刷エンジン18と、制御部30と、を備える。各部12〜30は、バス線(符号省略)に接続されている。以下では、インターフェースのことを「I/F」と記載する。
【0012】
操作部12は、複数のボタンを備える。ユーザは、操作部12を操作することによって、様々な指示をプリンタ10に入力することができる。操作部12は、キャンセルボタン12aを備える。キャンセルボタン12aは、印刷のキャンセルを指示するキャンセル操作を検出することができる。表示部14は、様々な情報を表示するためのディスプレイである。表示部14は、いわゆるタッチパネルとしても機能(即ち操作部としても機能)する。変形例では、キャンセルボタン12aは、ハードボタンとして操作部12に設けられなくてもよく、ソフトボタンとして表示部14(即ち操作部として機能するタッチパネル)に設けられてもよい。
【0013】
通信I/F16は、PC50とのTCP(Transmission Control Protocolの略)/IP(Internet Protocolの略)に従った接続(以下では「TCP接続」と記載する)を確立するためのインターフェースである。本実施例では、通信I/F16は、有線通信を実行するための有線I/Fであるが、変形例では、無線通信を実行するための無線I/Fであってもよい。印刷エンジン18は、トナーを利用して印刷を実行するレーザ方式の印刷機構を備える。変形例では、印刷エンジン18は、レーザ方式の印刷機構に代えて、インクジェット方式の印刷機構を備えていてもよい。
【0014】
制御部30は、CPU32とメモリ34とを備える。CPU32は、メモリ34に格納されているプログラム36に従って、様々な処理を実行する。メモリ34は、揮発性メモリ、不揮発性メモリ等によって構成される。
【0015】
(PC50の構成)
PC50は、本実施例では、据置型の端末装置(例えばデスクトップPC等)であるが、変形例では、携帯電話(例えばスマートフォン)、PDA、ノートPC、タブレットPC等の可搬型の端末装置であってもよい。PC50は、プリンタ10に印刷を実行させるためのプリンタドライバ52を備える。以下では、プリンタドライバのことを単に「ドライバ」と記載することがある。
【0016】
ドライバは、専用ドライバと汎用ドライバとに大別される。専用ドライバは、あるモデルのプリンタに固有のプログラムである。専用ドライバは、当該プリンタが解釈可能な様々な要求を当該プリンタに送信することができる。プリンタ10のベンダは、プリンタ10のための専用ドライバをPC50のユーザに提供するので、PC50にインストールされているドライバ52は、プリンタ10のための専用ドライバであり得る。この場合、専用ドライバ52は、プリンタ10から受信される様々な要求(例えば後述の停止要求)を解釈することができ、当該要求に応じた処理を実行することができる。
【0017】
汎用ドライバは、複数モデルのプリンタに印刷を実行させることができるプログラムであり、通常、プリンタのベンダとは異なる事業者(例えばPC50にインストールされているOSプログラムのベンダ)によって提供される。本実施例のプリンタ10は、汎用ドライバから受信される印刷実行要求に応じて、印刷を実行することができる。従って、PC50にインストールされているドライバ52は、汎用ドライバであり得る。この場合、汎用ドライバ52は、プリンタ10から受信される一般的な要求(例えば印刷実行要求)を解釈することができるが、プリンタ10から受信される特殊な要求(例えば後述の停止要求)を解釈することができない。
【0018】
ドライバは、印刷実行要求をプリンタに送信する際に(即ちプリンタが印刷を開始する前に)、印刷対象の画像を表わす印刷データの総データサイズをプリンタに通知するドライバと、印刷データの総データサイズをプリンタに通知しないドライバと、に分類される。以下では、前者のドライバ、後者のドライバを、それぞれ、「通知ドライバ」、「非通知ドライバ」と呼ぶ。
【0019】
(プリンタの処理;
図2)
続いて、
図2を参照して、プリンタ10のCPU32によって実行される処理を説明する。なお、プリンタ10によって実行される全ての通信は、通信I/F16を介して実行される。従って、以下では、「通信I/F16を介して」という記載を省略する。
図2の処理は、プリンタ10の電源がONされると開始される。
【0020】
CPU32は、プリンタ10の電源がONされると、S5において、ホーム画面を表示部14に表示する。ホーム画面は、プリンタ10において予め決められている画面であり、例えば、印刷の実行を待機する画面、プリンタ10の設定を変更するための指示を検出するための画面等と言い換えることができる。本実施例では、ホーム画面は、例えば、プリンタ10が印刷を実行可能であることを示す文字列を含むメッセージと、プリンタ10内のトナーの残量を示す文字列を含むメッセージと、を備える。
【0021】
S10では、CPU32は、PC50から、TCP接続の確立を要求するための接続要求を受信することを監視する。CPU32は、PC50から接続要求を受信する場合(S10でYES)に、S15に進む。
【0022】
S15では、CPU32は、受信済みの接続要求に対する応答をPC50に送信して、PC50とのTCP接続を確立する。これにより、以後、プリンタ10とPC50との間では、TCP接続を利用した通信が実行される。
【0023】
S18では、CPU32は、ホーム画面に代えて連続的に印刷中画面を表示部14に表示する。印刷中画面は、印刷を実行することを示す文字列を含むメッセージを備える。
【0024】
S20では、CPU32は、PC50から印刷実行要求を受信する。ここで、PC50のドライバ52が通知ドライバである場合には、印刷実行要求は、印刷対象の画像を表わす印刷データの総データサイズを含む。一方、PC50のドライバ52が非通知ドライバである場合には、印刷実行要求は、印刷データの総データサイズを含まない。続いて、CPU32は、印刷データの受信を開始し、受信済みの印刷データを印刷エンジン18に供給する。これにより、印刷エンジン18は、印刷データによって表わされる画像の印刷を開始する。
【0025】
S25では、CPU32は、操作部12がキャンセル操作を検出することを監視する。CPU32は、ユーザによってキャンセルボタン12aが押下されることにより、操作部12がキャンセル操作を検出したと判断して(S25でYES)に、S30に進む。
【0026】
S30では、CPU32は、印刷のキャンセルに関連するキャンセル処理を実行する(後述の
図3参照)。
【0027】
S35では、CPU32は、S30で最後に表示される画面(例えば後述のキャンセル画面、案内画面等)に代えて連続的にキャンセル完了画面を表示部14に表示する。キャンセル完了画面は、印刷のキャンセルが完了したことを示す文字列を含むメッセージを備える。
【0028】
CPU32は、S35の処理が終了すると、S5に戻り、キャンセル完了画面に代えて連続的にホーム画面を表示部14に表示する。なお、変形例では、S35の処理は省略されてもよく、CPU32は、S30で最後に表示される画面(例えば後述のキャンセル画面、案内画面等)に代えて連続的にホーム画面を表示部14に表示してもよい。
【0029】
また、CPU32は、S25のキャンセル操作の監視と同時的に、S40において、キャンセル操作が実行されることなく、印刷が完了することを監視する。具体的には、CPU32は、まず、印刷データの全ての受信が完了したのか否かを判断する。CPU32は、PC50から印刷データの最後を示すデータを受信した場合に、印刷データの全ての受信が完了したと判断する。この場合、CPU32は、PC50から、TCP接続の切断を要求するための切断要求を受信し、切断要求に対する応答をPC50に送信する。これにより、PC50とのTCP接続が切断される。次いで、CPU32は、印刷エンジン18から印刷が完了したことを示す情報を取得したのか否かを判断する。CPU32は、印刷エンジン18から当該情報を取得した場合に、印刷が完了したと判断し(S40でYES)、S45に進む。
【0030】
S45では、CPU32は、印刷中画面に代えて連続的に印刷完了画面を表示部14に表示する。印刷完了画面は、印刷が完了したことを示す文字列を含むメッセージを備える。CPU32は、S45の処理が終了すると、S5に戻り、印刷完了画面に代えて連続的にホーム画面を表示部14に表示する。
【0031】
(キャンセル処理;
図3)
続いて、
図3を参照して、
図2のS30のキャンセル処理の内容を説明する。S100では、CPU32は、印刷を停止する。具体的には、CPU32は、PC50から受信された印刷データを印刷エンジン18に供給することを停止し、さらに、印刷の停止を指示するコマンドを印刷エンジン18に供給する。これにより、印刷エンジン18における印刷が停止される。また、CPU32は、PC50から印刷データを受信しても、印刷データを破棄する。ここで、「破棄」は、印刷データを印刷エンジン18に供給するための処理を実行しないことを意味する。
【0032】
なお、CPU32が、操作部12においてキャンセル操作が検出された際に、PC50とのTCP接続を強制的に切断して、PC50から印刷データを受信しないようにする構成が考えられる。しかしながら、このような構成を採用すると、PC50は、通信障害等を原因としてプリンタ10とのTCP接続が切断されたと判断して、プリンタ10とのTCP接続を再確立し、再確立されたTCP接続を利用して、印刷データをプリンタ10に再送信する。この場合、プリンタ10において、印刷のキャンセルが実行されたにも関わらず、同じ印刷が実行されてしまう。これを避けるために、本実施例では、CPU32は、PC50とのTCP接続を強制的に切断することなく、PC50から印刷データを受信して当該印刷データを破棄するという構成を採用する。
【0033】
キャンセル操作の実行時に未だに受信していない残りの印刷データのデータサイズが比較的に大きい場合には、CPU32は、残りの印刷データを長時間に亘って受信する。この場合、CPU32は、他のPCから印刷データを受信して印刷を実行することができない。これを避けるために、S105では、CPU32は、残りの印刷データの送信の停止を要求する停止要求をPC50に送信する。PC50のドライバ52が専用ドライバである場合、即ち、ドライバ52が停止要求を解釈可能である場合には、PC50では、停止要求に応じて、残りの印刷データの送信が停止される。一方、PC50のドライバ52が汎用ドライバである場合、即ち、ドライバ52が停止要求を解釈不可能な場合には、PC50では、残りの印刷データの送信が停止されない。
【0034】
S110では、CPU32は、未受信の印刷データのデータサイズを特定可能であるのか否かを判断する。具体的には、CPU32は、
図2のS20において、PC50から印刷データの総データサイズを含む印刷実行要求を受信済みであるのか否か、即ち、PC50のドライバ52が通知ドライバであるのか非通知ドライバであるのかを判断する。CPU32は、印刷データの総データサイズを含む印刷実行要求を受信済みであると判断する場合、即ち、ドライバ52が通知ドライバである場合(S110でYES)に、S115に進む。一方、CPU32は、印刷データの総データサイズを含まない印刷実行要求を受信済みであると判断する場合、即ち、ドライバ52が非通知ドライバである場合(S110でNO)に、S145に進む。
【0035】
S115では、CPU32は、未受信の印刷データを受信するための時間である残り受信時間を算出する。具体的には、CPU32は、印刷データの総データサイズから受信済みの印刷データのデータサイズを減算して、未受信の印刷データのデータサイズを算出する。そして、CPU32は、未受信の印刷データのデータサイズを、PC50とのTCP接続で利用されている通信速度で除算して、残り受信時間を算出する。
【0036】
S120では、CPU32は、算出済みの残り受信時間が予め決められている所定時間(例えば10秒)以上であるのか否かを判断する。CPU32は、残り受信時間が所定時間以上であると判断する場合(S120でYES)に、S125に進み、残り受信時間が所定時間以上でないと判断する場合(S120でNO)に、S140に進む。
【0037】
S140では、CPU32は、印刷中画面(
図2のS18参照)に代えて連続的にキャンセル画面を表示部14に表示する。キャンセル画面は、印刷がキャンセルされることを示す文字列を含むメッセージを備える。これにより、ユーザは、自身によって実行されたキャンセル操作に起因して印刷がキャンセルされることを知ることができる。
【0038】
S143では、CPU32は、PC50から、TCP接続の切断を要求するための切断要求を受信する。ここで、ドライバ52が専用ドライバである場合には、ドライバ52は、S105の停止要求を解釈して、残りの印刷データの送信を直ちに停止する。従って、S143では、CPU32は、残りの印刷データの全てを受信する前に、PC50から切断要求を受信する。また、ドライバ52が汎用ドライバである場合には、ドライバ52は、S105の停止要求を解釈不可能であり、残りの印刷データの送信を停止しない。従って、S143では、CPU32は、残りの印刷データの全てを受信した後に、PC50から切断要求を受信する。ただし、残り受信時間が所定時間未満であるので(S120でNO)、CPU32は、PC50から比較的に迅速に切断要求を受信する。
【0039】
S143が実行された後に、S135において、CPU32は、切断要求に対する応答をPC50に送信して、PC50とのTCP接続を切断する。これにより、印刷のキャンセルが完了する。S135の処理が終了すると、
図3の処理が終了する。
【0040】
一方、残り受信時間が所定時間以上である場合(S120でYES)には、S125において、CPU32は、キャンセル操作が実行されてから上記の所定時間が経過する前に、印刷中画面(
図2のS18参照)に代えて連続的に案内画面を表示部14に表示する。即ち、この場合、キャンセル画面(S140)が表示されることなく、案内画面が表示される。案内画面は、印刷がキャンセルされることを示す文字列を含むメッセージと、印刷データの送信の停止を指示する停止操作をPC50に実行することをユーザに促す文字列を含むメッセージと、を備える。後者のメッセージは、ユーザが停止操作をPC50にて実行すれば、印刷のキャンセルを迅速に完了させることを示す文字列を含む。これにより、ユーザは、停止操作をPC50に実行すべきことを知ることができる。
【0041】
S130では、CPU32は、PC50から切断要求を受信することを監視する。ここで、ドライバ52が専用ドライバである場合には、S130では、CPU32は、残りの印刷データの全てを受信する前に、PC50から切断要求を受信する。また、ドライバ52が汎用ドライバである場合には、S130では、CPU32は、残りの印刷データの全てを受信した後に、PC50から切断要求を受信し得る。この場合、残り受信時間が所定時間以上であるので(S120でYES)、CPU32は、長時間に亘って残りの印刷データを受信し得る。ただし、本実施例ではS125で案内画面が表示されるので、ユーザが案内画面に応じて停止操作をPC50に実行し得る。この場合、CPU32は、残りの印刷データの全てを受信する前に、PC50から切断要求を受信する。即ち、CPU32は、PC50から切断要求を迅速に受信することができる。CPU32は、PC50から切断要求を受信する場合(S130でYES)に、S135において、PC50とのTCP接続を切断する。
【0042】
また、S110でNOと判断される場合(即ち、ドライバ52が非通知ドライバである場合)には、S145において、CPU32は、印刷中画面(
図2のS18参照)に代えて連続的にキャンセル画面を表示部14に表示する。ここで表示されるキャンセル画面は、S140で表示される画面と同じである。
【0043】
S150では、CPU32は、キャンセル操作(
図2のS25)が実行されてから所定時間以内にPC50とのTCP接続が切断されたのか否かを判断する。ここでの所定時間は、S120で利用される所定時間(例えば10秒)と同じである。ドライバ52が汎用ドライバであることでS105の停止要求を解釈不可能であり、かつ、残りの印刷データのデータサイズが比較的に大きい場合には、TCP接続が切断されることなく所定時間が経過する。この場合、CPU32は、所定時間以内にTCP接続が切断されたと判断せず(S150でNO)、S125に進む。この場合、S125では、CPU32は、キャンセル画面に代えて連続的に案内画面を表示部14に表示する。
【0044】
一方、ドライバ52が専用ドライバである場合には、ドライバ52は、S105の停止要求に応じて残りの印刷データの送信を停止し、切断要求をプリンタ10に送信する。この場合、CPU32は、所定時間以内にTCP接続が切断されたと判断し(S150でYES)、案内画面を表示することなく、
図3の処理を終了する。また、ドライバ52が汎用ドライバであることでS105の停止要求を解釈不可能であっても、残りの印刷データのデータサイズが比較的に小さい場合には、ドライバ52は、残りの印刷データの全てを送信した後に、切断要求をプリンタ10に送信する。ただし、残りの印刷データのデータサイズが比較的に小さいので、CPU32は、PC50から比較的に迅速に切断要求を受信する。この場合も、CPU32は、所定時間以内にTCP接続が切断されたと判断し(S150でYES)、案内画面を表示することなく、
図3の処理を終了する。
【0045】
(具体例;
図4)
続いて、
図4を参照して、
図2及び
図3の処理によって実現される具体例を説明する。
図4の各ケースの横軸は時間を示す。横軸上のハッチングで示す部分は、プリンタ10がPC50から印刷データを受信している状態であることを示す。
【0046】
まず、本実施例の具体例を説明する前に、比較例のプリンタを説明する。比較例のプリンタは、時点Tsにおいて、PC50から印刷データの受信を開始し、印刷データの全てを受信する前に、時点Tcにおいて、キャンセル操作を検出する。この場合、プリンタは、印刷データを破棄してこれ以上の印刷を実行しないが、PC50から印刷データを受信し続ける。そして、プリンタは、時点Teにおいて、残りの印刷データの全てを受信した後に、PC50から切断要求を受信する。ここで、キャンセル操作の実行時に未だに受信していない残りの印刷データのデータサイズが比較的に大きい場合には、プリンタは、残りの印刷データを長時間に亘って受信する。この場合、プリンタは、他のPCから印刷データを受信して印刷を実行することができない。
【0047】
次いで、本実施例において、PC50のドライバ52が専用ドライバであるケースを説明する。プリンタ10は、時点Tcにおいて、キャンセル操作を検出する場合に、停止要求をPC50に送信する(
図3のS105)。この場合、PC50の専用ドライバ52は、時点T1において、残りの印刷データの送信を停止し、切断要求をプリンタ10に送信する。従って、プリンタ10は、時点Teまで印刷データを受信し続けることなく、印刷のキャンセルを迅速に完了することができる。
【0048】
続いて、本実施例において、PC50のドライバ52が汎用ドライバであるケースA〜Dを説明する。ケースAでは、汎用ドライバ52が非通知ドライバである。プリンタ10は、時点Tcにおいて、キャンセル操作を検出する場合に、停止要求をPC50に送信する(S105)。この場合、PC50の汎用ドライバ52は、停止要求を解釈不可能であり、残りの印刷データの送信を停止しない。プリンタ10は、未受信の印刷データのデータサイズを特定不可能であると判断し(S110でNO)、キャンセル画面を表示する(S145)。そして、プリンタ10は、時点Tcから所定時間以内にTCP接続が切断されないので(S150でNO)、案内画面を表示する(S125)。従って、ユーザは、停止操作をPC50に実行すべきことを知ることができるので、PC50への停止操作をする。この結果、PC50は、停止操作に応じて、時点T2において、残りの印刷データの送信を停止し、切断要求をプリンタ10に送信する。従って、プリンタ10は、時点Teまで印刷データを受信し続けることなく、印刷のキャンセルを迅速に完了することができる。
【0049】
ケースBでは、汎用ドライバ52が通知ドライバである。プリンタ10は、時点Tcにおいて、キャンセル操作を検出する場合に、未受信の印刷データのデータサイズを特定可能であり(S110でYES)、かつ、残り受信時間が所定時間以上であると判断し(S120でYES)、キャンセル画面を表示することなく、案内画面を表示する(S125)。従って、PC50への停止操作が実行され、この結果、PC50は、停止操作に応じて、時点T3において、残りの印刷データの送信を停止し、切断要求をプリンタ10に送信する。従って、プリンタ10は、時点Teまで印刷データを受信し続けることなく、印刷のキャンセルを迅速に完了することができる。
【0050】
ケースCでは、汎用ドライバ52が非通知ドライバであり、上記の比較例のケースと比べると、キャンセル操作の実行時に未だに受信していない残りの印刷データのデータサイズが小さい。プリンタ10は、時点Tcにおいて、キャンセル操作を検出する場合に、未受信の印刷データのデータサイズを特定不可能であると判断し(S110でNO)、キャンセル画面を表示する(S145)。残りの印刷データのデータサイズが小さいので、プリンタ10は、時点Tcから所定時間以内の時点T4において、印刷データの全ての受信を完了し、TCP接続を切断する(S150でYES)。この場合、プリンタ10は、案内画面を表示することなく、印刷のキャンセルを完了する。このように、キャンセル操作が実行されてから印刷のキャンセルが完了するまでの時間が短い状況では、案内画面が表示されないので、PC50への停止操作をユーザに実行させずに済む。これにより、例えば、印刷のキャンセルが完了した後(即ちTCP接続の切断後)のPC50への停止操作といった無駄な操作をユーザに実行させずに済む。
【0051】
ケースDでは、汎用ドライバ52が通知ドライバであり、上記のケースCと同様に、残りの印刷データのデータサイズが小さい。プリンタ10は、時点Tcにおいて、キャンセル操作を検出する場合に、未受信の印刷データのデータサイズを特定可能であると判断し(S110でYES)、残り受信時間が所定時間以上でないと判断し(S120でNO)、キャンセル画面を表示する(S140)。そして、プリンタ10は、案内画面を表示することなく、時点T5において、印刷データの全ての受信を完了し、TCP接続を切断する(S143)。本ケースでも、キャンセル操作が実行されてから印刷のキャンセルが完了するまでの時間が短い状況では、案内画面が表示されないので、PC50への停止操作をユーザに実行させずに済む。これにより、無駄な操作をユーザに実行させずに済む。
【0052】
(本実施例の効果)
本実施例では、プリンタ10は、キャンセル操作を検出する場合(
図2のS25でYES)に、案内画面を表示する(
図3のS125)。これに応じてユーザが停止操作をPC50に実行し得るので、PC50において残りの印刷データの送信が停止され得る。従って、プリンタ10がキャンセル操作の実行時に未だに受信していない残りの印刷データを長時間に亘って受信することを回避し得る。
【0053】
(対応関係)
PC50が、「外部装置」の一例である。S145のキャンセル画面、S140のキャンセル画面が、それぞれ、「第1のキャンセル画面」、「第2のキャンセル画面」の一例である。
図2のS20の処理が、「受信部」及び「印刷制御部」によって実行される処理の一例である。S15の処理、S30の処理が、それぞれ、「確立部」、「キャンセル処理制御部」によって実行される処理の一例である。S30の後のS5の処理が、「ホーム表示制御部」によって実行される処理の一例である。
図3のS105の処理、S110の処理、S120の処理、S125の処理、S140の処理、S145の処理、S150の処理が、それぞれ、「送信部」、「データサイズ判断部」、「時間判断部」、「第2のキャンセル表示制御部」、「第1のキャンセル表示制御部」、「切断判断部」、「案内表示制御部」によって実行される処理の一例である。
【0054】
(第2実施例)
続いて、
図3を参照して、第2実施例を説明する。第2実施例では、
図3のS150の処理の内容が第1実施例とは異なる。
【0055】
S150では、CPU32は、キャンセル操作(
図2のS25)が検出されてから所定時間以内に印刷データの全ての受信を完了したのか否かを判断する。具体的には、CPU32は、所定時間以内にPC50から印刷データの最後であることを示す最終データを受信する場合に、S150でYESと判断し、所定時間以内にPC50から最終データを受信しない場合に、S150でNOと判断する。なお、例えば、ドライバ52が専用ドライバである場合には、PC50は、停止要求に応じて印刷データの送信を停止する際に、最終データをプリンタ10に送信する。この場合、CPU32は、所定時間以内にPC50から最終データを受信するので、S150でYESと判断する。
【0056】
本実施例でも、第1実施例と同様の効果が得られる。本実施例では、S150の処理は、「受信判断部」によって実行される処理の一例である。
【0057】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
【0058】
(変形例1)
図3のS105〜S120、及び、S140〜S150の処理が省略されてもよい。この場合、CPU32は、
図2のS25でキャンセル操作を検出する場合に、S100を経て、S125において、案内画面を表示部14に表示する。本変形例でも、ユーザが停止操作をPC50に実行し得るので、プリンタ10がキャンセル操作の実行時に未だに受信していない残りの印刷データを長時間に亘って受信することを回避し得る。本変形例では、「第1のキャンセル表示制御部」、「切断判断部」、「受信判断部」、「ホーム表示制御部」、「データサイズ判断部」、「時間判断部」、「第2のキャンセル表示制御部」、「送信部」を省略可能である。
【0059】
(変形例2)CPU32は、
図3のS145において、キャンセル画面を表示した後に、上記の所定時間(例えば10秒)よりも短い特定時間(例えば3秒)が経過すると、キャンセル画面に代えて別の画面を表示し、その後、S150でNOと判断する場合に、S125において、案内画面を表示してもよい。上記の別の画面は、例えば、プリンタ10のベンダのロゴを示す画面であってもよいし、ユーザに待機を指示する画面であってもよい。即ち、「案内表示制御部」は、第1のキャンセル画面に代えて連続的に案内画面を表示しなくてもよい。
【0060】
(変形例3)プリンタ10とPC50との間にTCP/IPに従った接続が確立されなくてもよく、例えば、プリンタ10は、プリンタ10とPC50との間のIPに従った接続を利用して、UDP(User Datagram Protocolの略)に従った通信をPC50と実行してもよい。即ち、「接続」は、TCP/IPに従った接続に限られない。
【0061】
(変形例4)
図3のS145において、CPU32は、S140のキャンセル画面と同じ画面を表示部14に表示しなくてもよい。例えば、S140では、CPU32は、算出済みの残り受信時間を含むキャンセル画面を表示してもよい。ここで、キャンセル画面は、時間経過と共に残り受信時間が減算される様子を示すメッセージを含んでいてもよい。本変形例では、「第1のキャンセル画面」と「第2のキャンセル画面」とは異なる。
【0062】
(変形例5)「プリンタ」は、プリンタ10に限られず、複数個の画像処理(例えば印刷処理、及び、スキャン処理)を実行可能な多機能機であってもよい。
【0063】
(変形例6)上記の各実施例では、
図2、及び、
図3の各処理がソフトウェア(即ちプログラム36)によって実現されるが、これらの各処理のうちの少なくとも1つが論理回路等のハードウェアによって実現されてもよい。
【0064】
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。