説明

プリンター

【課題】アプリケーションプログラムとデバイスドライバーがホストにインストールされなくとも、そのホストからそのアプリケーションプログラムを使用した印刷を可能とし、さらに、アプリケーションプログラムの動作保証が困難な状態でアプリケーションプログラムが動作することを防止することを可能とするプリンターを提供すること。
【解決手段】プリンターでは、アプリケーションプログラムがパソコン上で実行されると、プリンターの通常記憶領域への定期的なアクセスが行われ(S22)、そのアクセスに失敗したときに(S23:YES)、そのアプリケーションプログラムが終了する(S25)。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、USBを介してホストに接続されるプリンターに関するものである。
【背景技術】
【0002】
従来、パソコンでは、プリンターを接続して使用する際には、そのプリンターで印刷させる編集物をそのパソコンにインストールされているエディタで作成することが行われている。
【0003】
このとき、そのプリンターのデバイス・ドライバーは、パソコンにインストロールされ、パソコンのエディタとそのプリンターとの間に介在し、そのパソコンのエディタで作成された編集物を、出力先であるそのプリンターに応じたデータ形式に変換しながら、そのプリンターに出力する。これにより、そのパソコンのエディタで作成された編集物をそのプリンターにおいて印刷することができる(下記特許文献1参照)。
【特許文献1】特開2007−140597号公報(第4頁)
【発明の開示】
【発明が解決しようとする課題】
【0004】
従って、例えば、そのプリンターの多彩な機能を簡単に利用できる専用エディタがそのプリンターとともにアプリケーションプログラムとして提供されている場合は、その専用エディタを使用するためには、そのパソコンにその専用エディタをインストールしなくてはならない。
さらに、専用デバイスドライバーが提供されている場合にも、同様にして、その専用デバイスドライバーをパソコンにインストロールしなくてはならない。
【0005】
もっとも、昨今のセキュリティ意識の高まり等によって、情報システムに管理責任者が設けられるようになり、その管理責任者の許可がなければ、そのパソコンにソフトのインストールができないケースが多くなってきている。このように、パソコンにソフトをインストールすることが気軽にできない状況では、そのパソコンで作成した編集物であっても、そのプリンターの多彩な機能を利用して印刷しようとすれば、そのパソコンにその専用エディタとその専用デバイスドライバーがインストールされていないと、大変に面倒なことであった。
【0006】
特に、そのプリンターが持ち運びに便利なものであれば、その特徴が生かされないので、このような状況は、ユーザー・フレンドリーな製品の一般への浸透が進む現在では、そのユーザーに対し、使い勝手が悪い印象を強く与えてしまう。
【0007】
そこで、本発明は、上述した点を鑑みてなされたものであり、アプリケーションプログラムとデバイスドライバーがホストにインストールされなくとも、そのホストからそのアプリケーションプログラムを使用した印刷を可能とし、さらに、アプリケーションプログラムの動作保証が困難な状態でアプリケーションプログラムが動作することを防止し或いは、アプリケーションプログラムで印刷データを作成中に自動的に電源がオフされても、その電源オフの直前に作成していた印刷データをアプリケーションプログラム再開時に再現させることを可能とするプリンターを提供することを課題とする。
【課題を解決するための手段】
【0008】
この課題を解決するために成された請求項1に係る発明は、プリンターであって、USBポートと、通常記憶領域を有するメモリと、前記メモリの通常記憶領域外に置かれ、前記USBポートに接続されたPCに対し、前記メモリ内の通常記憶領域をリムーバブルドライブとして認識させるとともに前記メモリ内の通常記憶領域へのアクセスを管理するための管理テーブルと、前記管理テーブルによって前記メモリの通常記憶領域内の一部があてがわれ、アプリケーションプログラムの実行ファイルが記憶された第1のメモリ領域と、前記管理テーブルによって前記メモリの通常記憶領域内の一部があてがわれ、前記アプリケーションプログラムで作成された印刷データを含むことが可能な命令ファイルが書き込まれる第2のメモリ領域と、前記第2のメモリ領域に書き込まれた命令ファイル内の印刷データに基づいて印刷を行う印刷手段と、前記メモリと前記印刷手段とを制御するプロセッサとを備え、前記プロセッサは、(a)受信した命令ファイルに基づき前記第2のメモリ領域内の命令ファイルを更新し、(b) その更新された命令ファイルを解析して前記印刷データを取り出し、前記アプリケーションプログラムの実行ファイルが前記PCに読み出されて、前記PC上で実行されると、前記アプリケーションプログラムは、以下の制御を実行し、(1)前記メモリの通常記憶領域へ定期的にアクセスし、(2)前記アクセスに失敗したときに、当該アプリケーションプログラム自身を終了する、ことを特徴する。
【0009】
また、請求項2に係る発明は、プリンターであって、USBポートと、通常記憶領域を有するメモリと、前記メモリの通常記憶領域外に置かれ、前記USBポートに接続されるとともにテンポラリフォルダとレジストリを有するPCに対し、前記メモリ内の通常記憶領域をリムーバブルドライブとして認識させるとともに前記メモリ内の通常記憶領域へのアクセスを管理するための管理テーブルと、前記管理テーブルによって前記メモリの通常記憶領域内の一部があてがわれ、アプリケーションプログラムの実行ファイルが記憶された第1のメモリ領域と、前記管理テーブルによって前記メモリの通常記憶領域内の一部があてがわれ、前記アプリケーションプログラムで作成された印刷データを含むことが可能な命令ファイルが書き込まれる第2のメモリ領域と、前記第2のメモリ領域に書き込まれた命令ファイル内の印刷データに基づいて印刷を行う印刷手段と、前記管理テーブルによって前記メモリの通常記憶領域内の一部があてがわれ、当該プリンターのステータス情報を含む通知ファイルが書き込まれる第3のメモリ領域と、前記メモリ及び前記印刷手段を制御するプロセッサとを備え、前記プロセッサは、電池の残量が所定量未満になったときから所定時間後に前記電池からの電力供給をオフにする自動電源オフ処理を行い、前記プロセッサは、(a)受信した命令ファイルに基づき前記第2のメモリ領域内の命令ファイルを更新し、(b) その更新された命令ファイルを解析して前記印刷データを取り出し、前記アプリケーションプログラムの実行ファイルが前記PCに読み出されて、前記PC上で実行されると、前記アプリケーションプログラムは、前記通知ファイルを検出後は、以下の制御を実行し、(1)前記ステータス情報として前記自動電源オフ処理が開始した旨の情報が前記通知ファイルに含まれているか否かを判断し、(2)前記自動電源オフ処理が開始した旨の情報が前記通知ファイルに含まれていると判断した場合には、(2−1)前記テンポラリフォルダに前記印刷データをバックアップ印刷データとして記憶し、(2−2)前記アプリケーションプログラムが前記PCに次回読み出されて実行されるときに前記テンポラリフォルダから前記バックアップ印刷データを読み出す次回起動時読出情報を、前記レジストリに記憶する、ことを特徴する。
【0010】
また、請求項3に係る発明は、請求項2に記載するプリンターであって、前記アプリケーションプログラムは、以下の(I)〜(V)の制御を実行することにより、前記(1)〜(2)の制御を実現し、(I)前記通知ファイルを受信した際に、前記ステータス情報として前記自動電源オフ処理が開始した旨の情報が前記通知ファイルに含まれていると判断すれば、前記PCに「継続」・「保存して終了」・「終了」の選択肢を表示し、(II)前記選択肢のうち「継続」をユーザーが選択したと判断すれば、前記自動電源オフ処理を解除する旨の制御命令を当該プリンターへ送信し、(III)前記選択肢のうち「保存して終了」をユーザーが選択したと判断すれば、ファイル保存ダイアログを表示し、(IV)前記選択肢のうち「終了」をユーザーが選択したと判断すれば、当該アプリケーションプログラム自身を終了し、(V)前記3つの選択肢の処理が正常終了すれば、(V−1)前記テンポラリフォルダから前記バックアップ印刷データを削除し、(V−2)前記レジストリから前記次回起動時読出情報を削除する、
ことを特徴する。
【0011】
また、請求項4に係る発明は、請求項3に記載するプリンターであって、前記アプリケーションプログラムは、以下の(VI)〜(VII)の制御を実行し、(VI)ユーザーが前記選択肢のうち「保存して終了」を選択した後にファイル保存ダイアログをキャンセルしたと判断すれば、前記自動電源オフ処理を解除する旨の制御命令を当該プリンターへ送信し、(VI)前記選択肢のうち「継続」・「保存して終了」・「終了」のいずれもユーザーが選択することなく、前記(I)から前記所定時間が経過し、当該プリンターで前記電池からの電力供給がオフされる直前に当該アプリケーションプログラム自身を終了する、ことを特徴する。
【0012】
また、請求項5に係る発明は、請求項2に記載するプリンターであって、前記アプリケーションプログラムは、以下の(i)〜(ii)の制御を実行することにより、前記(1)〜(2)の制御を実現し、(i)前記命令ファイルを印刷開始命令を含ませた状態で当該プリンターに送信するときに、(i−1)前記テンポラリフォルダに前記印刷データをバックアップ印刷データとして記憶し、(i−2)前記アプリケーションプログラムが前記PCに次回読み出されて実行されたときに前記バックアップ印刷データを前記テンポラリフォルダから読み出す次回起動時読出情報を、前記レジストリに記憶し、(ii)前記通知ファイルを受信したときに、前記ステータス情報として前記印刷開始命令による印刷が前記印刷手段によって正常に行われた旨の情報が当該受信通知ファイルに含まれていると判断すれば、(ii−1)前記テンポラリフォルダから前記バックアップ印刷データを削除し、(ii−2)前記レジストリから前記次回起動時読出情報を削除する、ことを特徴する。
【発明の効果】
【0013】
すなわち、請求項1に係る本発明のプリンターでは、USBポートに接続されたPCに対し、メモリ内の通常記憶領域へのアクセスを管理するための管理テーブルにより、本発明のプリンター(のメモリ内の通常記憶領域)をUSBマス・ストレージ・クラスのデバイスであるリムーバブルドライブとして認識させる。従って、メモリの通常記憶領域内の一部である第1のメモリ領域に記憶されたアプリケーションプログラムの実行ファイルは、PCからの通常のアクセス操作でPCに読み出させることができる。よって、PCにアプリケーションプログラムがインストールされなくとも、そのPCでそのアプリケーションプログラムを実行することが可能となる。
【0014】
そして、PC上のアプリケーションプログラムで作成された印刷データを含むことが可能な命令ファイルは、PCからの通常のアクセスで、メモリの通常記憶領域内の一部である第2のメモリ領域に書き込まれることができる。一方、プロセッサは、メモリの通常記憶領域内の一部である第2のメモリ領域に書き込まれた命令ファイル内の印刷データを取り出して印刷手段に印刷させる。
【0015】
この点、プロセッサは、PC上のアプリケーションプログラムで作成された印刷データを含むことが可能な命令ファイルをPCから受信すると、メモリの通常記憶領域内の一部である第2のメモリ領域内の命令ファイルを更新し、その更新された命令ファイルを解析して印刷データを取り出す。これにより、アプリケーションプログラム及びデバイスドライバーがPCにインストロールされなくても、PCからそのアプリケーションプログラムを使用した印刷を可能とする。
【0016】
さらに、請求項1に係る本発明のプリンターでは、アプリケーションプログラムがPC上で実行されると、メモリの通常記憶領域へのアクセスが定期的に行われ、そのアクセスに失敗したときにそのアプリケーションプログラムが終了する。この点、その定期的なアクセスの失敗が起きた場合には、例えば、当該プリンターとPCの接続が外れていたり、当該プリンターの電源がオフされていたりすること等が想定され、少なくとも、アプリケーションプログラムの動作保証が困難な状態であると言える。因って、請求項1に係る本発明のプリンターでは、当該プリンターとPCの接続が外れていたり、当該プリンターの電源がオフされていたりした時点等に対して、アプリケーションプログラムの終了時点を同期させることができるので、アプリケーションプログラムの動作保証が困難な状態でアプリケーションプログラムが動作することを防止することが可能である。
【0017】
また、請求項2に係る本発明のプリンターでは、USBポートに接続されたPCに対し、メモリ内の通常記憶領域へのアクセスを管理するための管理テーブルにより、本発明のプリンター(のメモリ内の通常記憶領域)をUSBマス・ストレージ・クラスのデバイスであるリムーバブルドライブとして認識させる。従って、メモリの通常記憶領域内の一部である第1のメモリ領域に記憶されたアプリケーションプログラムの実行ファイルは、PCからの通常のアクセス操作でPCに読み出させることができる。よって、PCにアプリケーションプログラムがインストールされなくとも、そのPCでそのアプリケーションプログラムを実行することが可能となる。
【0018】
そして、PC上のアプリケーションプログラムで作成された印刷データを含むことが可能な命令ファイルは、PCからの通常のアクセスで、メモリの通常記憶領域内の一部である第2のメモリ領域に書き込まれることができる。一方、プロセッサは、メモリの通常記憶領域内の一部である第2のメモリ領域に書き込まれた命令ファイル内の印刷データを取り出して印刷手段に印刷させる。
【0019】
この点、プロセッサは、PC上のアプリケーションプログラムで作成された印刷データを含むことが可能な命令ファイルをPCから受信すると、メモリの通常記憶領域内の一部である第2のメモリ領域内の命令ファイルを更新し、その更新された命令ファイルを解析して印刷データを取り出す。これにより、アプリケーションプログラム及びデバイスドライバーがPCにインストロールされなくても、PCからそのアプリケーションプログラムを使用した印刷を可能とする。
【0020】
また、請求項2に係る本発明のプリンターでは、USBマス・ストレージ・クラスのデバイスであるリムーバブルドライブとしてPCが認識している本発明のプリンターのメモリ内の通常記憶領域内の一部を、本発明のプリンターのステータス情報を含む通知ファイルが書き込まれる第3のメモリ領域としている。従って、メモリの通常記憶領域内の一部である第3のメモリ領域に書き込まれた通知ファイルは、PCからの通常のアクセスで、そのPCに読み出される。よって、本発明のプリンターの動作状況をPCに知らせることができる。
【0021】
さらに、請求項2に係る本発明のプリンターでは、アプリケーションプログラムがPC上で実行されると、PC側において、当該プリンターのステータス情報を含む通知ファイルが検出された後に、そのステータス情報として自動電源オフ処理が開始した旨の情報がその通知ファイルに含まれているか否かが判断される。このとき、自動電源オフ処理が開始した旨の情報がその通知ファイルに含まれている場合には、PC側において、テンポラリフォルダに印刷データがバックアップ印刷データとして記憶され、レジストリに次回起動時読出情報が記憶される。
【0022】
従って、アプリケーションプログラムがPCに次回読み出されて実行されるときは、このレジストリに記憶された次回起動時読出情報に因って、テンポラリフォルダからバックアップ印刷データが読み出される。従って、アプリケーションプログラムで印刷データを作成中に自動的に電源がオフされても、その電源オフの直前に作成していた印刷データをアプリケーションプログラム再開時に再現させることが可能である。
【0023】
また、請求項3に係る本発明のプリンターでは、アプリケーションプログラムがPC上で実行され、通知ファイルが受信された際に、ステータス情報として自動電源オフ処理が開始した旨の情報がその通知ファイルに含まれていれば、PCに「継続」・「保存して終了」・「終了」の選択肢が表示される。このとき、その選択肢のうち「継続」をユーザーが選択すれば、自動電源オフ処理を解除する旨の制御命令が当該プリンターに送信される。その選択肢のうち「保存して終了」をユーザーが選択すれば、ファイル保存ダイアログがPCに表示される。その選択肢のうち「終了」をユーザーが選択すれば、アプリケーションプログラムが終了する。因って、ユーザは、当該プリンターが自動的に電源がオフされる以前に、アプリケーションプログラムで印刷データを作成することを延長するかどうかを選択することが可能となる。
【0024】
さらに、PC側において、その3つの選択肢の処理が正常終了すれば、テンポラリフォルダからバックアップ印刷データが削除され、レジストリから次回起動時読出情報が削除される。因って、その3つの選択肢の処理が正常終了すれば、アプリケーションプログラムがPCに次回読み出されて実行されても、その通知ファイルを受信した際に作成していた印刷データがアプリケーションプログラム再開時に再現されてしまうような不都合は起きない。
【0025】
また、請求項4に係る発明のプリンターでは、ユーザーが選択肢のうち「保存して終了」を選択した後にファイル保存ダイアログをキャンセルすれば、自動電源オフ処理を解除する旨の制御命令がPC側から当該プリンターに送信される。因って、ユーザは、当該プリンターが自動的に電源がオフされる際に、ファイル保存ダイアログを表示することを選択しても、その後に、アプリケーションプログラムで印刷データを作成することを延長することを選択することが可能となる。
【0026】
さらに、請求項4に係る発明のプリンターでは、選択肢のうち「継続」・「保存して終了」・「終了」のいずれもユーザーが選択することなく、その選択肢の表示から所定時間が経過すれば、当該プリンターで電池からの電力供給がオフされる直前に当該アプリケーションプログラムが終了する。
【0027】
この点、請求項4に係る本発明のプリンターでは、上記請求項2に係る本発明のプリンターと同様にして、アプリケーションプログラムで印刷データを作成中に自動的に電源がオフされても、その電源オフの直前に作成していた印刷データをアプリケーションプログラム再開時に再現させることが可能である。因って、ユーザーがその選択肢に気づかず、自動的に電源がオフされても、その電源オフの直前に作成していた印刷データをアプリケーションプログラム再開時に再現させることが可能である。
【0028】
また、請求項5に係る発明のプリンターでは、命令ファイルが印刷開始命令を含ませた状態でPC側から当該プリンターに送信されるときに、テンポラリフォルダに印刷データがバックアップ印刷データとして記憶され、レジストリに次回起動時読出情報が記憶される。
【0029】
従って、アプリケーションプログラムがPCに次回読み出されて実行されるときは、このレジストリに記憶された次回起動時読出情報に因って、テンポラリフォルダからバックアップ印刷データが読み出される。従って、当該プリンターで印刷データを印刷中に電源がオフされても、その電源オフの直前に作成していた印刷データをアプリケーションプログラム再開時に再現させることが可能である。
【0030】
さらに、請求項5に係る本発明のプリンターでは、アプリケーションプログラムがPC上で実行され、通知ファイルが受信された際に、ステータス情報として印刷開始命令による印刷が印刷手段によって正常に行われた旨の情報をその受信通知ファイルに含んでいれば、テンポラリフォルダからバックアップ印刷データが削除され、レジストリから次回起動時読出情報が削除される。因って、当該プリンターで印刷データが正常に印刷されれば、アプリケーションプログラムがPCに次回読み出されて実行されても、その正常に印刷された印刷データがアプリケーションプログラム再開時に再現されてしまうような不都合は起きない。
【発明を実施するための最良の形態】
【0031】
[1.本発明のシステム構成]
以下、本発明の実施の形態を図面を参照にして説明する。図2は、本発明の一実施形態に係るプリンター1がパソコン111(「PC」に相当するもの)に接続された状態を示したものである。図2に示すように、本実施の形態に係るプリンター1は、USBケーブルLを介して、パソコン111に接続されることによって、印刷システム101を形成する。この点、本実施の形態に係るプリンター1は、印字テープ2に印刷を行う所謂ラベルプリンターであり、机周りに設置できるコンパクトサイズのものであるから、持ち運びが容易である。また、パソコン111は、印刷システム101のホストであり、本体112、ディスプレイ113、キーボード114、及びマウス115等を備えたデスクトップ・コンピュータである。
【0032】
尚、パソコン111には、後述する図3に示すように、レジストリ122やテンポラリファイル123が備えられている。
【0033】
[2.本発明の内部構成]
次に、本実施の形態に係るプリンター1の内部構成について、図3を参照しつつ説明する。図3は、本実施の形態に係るプリンター1の内部構成を示したブロック図である。
【0034】
図3に示すように、本実施の形態に係るプリンター1では、入出力インターフェース31に対して、操作キー51、ディスプレイコントローラ(以下、「LCDC」という)52、2つの駆動回路54,56、USBポートP及び電源回路61等が接続されている。
【0035】
操作キー51は、ユーザの操作により、所望する様々な動作を起こさせるための制御信号をCPU32に入力させるものである。LCDC52には、LCD53が接続されており、そのLCD53に表示データを表示するための表示用RAMを備えている。駆動回路54は、サーマルヘッド55が接続されており、印字テープ2に印刷データを印刷する際にはそのサーマルヘッド55を駆動するものである。駆動回路56は、テープ送りモータ57が接続されており、印字テープ2を外部に送り出す際にはそのテープ送りモータ57を駆動するものである。
【0036】
USBポートPには、USBケーブルLのコネクタCが着脱される。従って、このUSBポートPにUSBケーブルLのコネクタCが差し込まれることによって、本実施の形態に係るプリンター1に対してパソコン111をUSB接続することができる。
【0037】
電源回路61には、電池62が接続されている。電源回路61は、オン・オフ機能付き電源回路である。電池62は、本実施の形態に係るプリンター1の電源である。CPU32は、電池62の残量をA/D入力を通して常に監視する。電池62の残量が所定量未満になると、自動電源オフ処理を開始する。そのオフ処理の開始から第1所定時間が経過すると、CPU32は、電源回路61をオフし、電池62からの周辺回路部分の電源供給をオフする。ただし、CPU32、ROM33、及びRAM34は電源供給されており、スリープモードに入る。次回のプリンター1の電源キー押下によって、割り込みがかかり、CPU32が起動して、電源回路61をオンする。
【0038】
また、本実施の形態に係るプリンター1では、入出力インターフェース31に対して、CPU32、ROM33、RAM34、及びFLASH・ROM36等が接続されている。
【0039】
CPU32は、後述する各プログラム等を実行するものであって、印刷関係以外の制御プログラムが記憶されるキャッシュメモリ等を内蔵するものである。
【0040】
また、CPU32は、下記の制御プログラム37を実行することにより、上記駆動回路54,56等を作動させ、下記の通常記憶領域40に記憶されている印刷データを印字テープ2に印刷しながら、その印字テープ2を外部に排出することができる。従って、2つの駆動回路54,56やサーマルヘッド55やテープ送りモータ57等により、「印刷手段」が構成される。
【0041】
また、ROM33には、印刷関係以外の制御プログラム等が記憶されている。RAM34は、種々の制御プログラムをCPU32で実行するときの作業領域を提供する。
【0042】
FLASH・ROM36には、印刷関係の制御プログラム37、及び管理テーブル39等が記憶されており、さらに、通常記憶領域40等が設けられている。さらに、通常記憶領域40には、アプリケーションプログラム記憶領域41、命令ファイル配置領域42、通知ファイル配置領域43、及び設定ファイル配置領域44等が設けられている。
【0043】
管理テーブル39は、FLASH・ROM36内の通常記憶領域40への書き込みをUSB規格で管理するものであって、USBポートPに接続されたパソコン111に対し、FLASH・ROM36内の通常記憶領域40をリムーバブルドライブとして認識させる。
【0044】
アプリケーションプログラム記憶領域41は、FLASH・ROM36内の通常記憶領域40の一部が固定的にあてがわれたものであって、アプリケーションプログラムの実行ファイル200(下記図1参照)が記憶されている。尚、アプリケーションプログラムとは、本実施の形態に係るプリンター1の専用エディタとして開発されたソフトウエアである。
【0045】
命令ファイル配置領域42とは、FLASH・ROM36内の通常記憶領域40の一部が管理テーブル39によってあてがわれたものであって、命令ファイル202(下記図1参照)が格納される。尚、命令ファイル202(下記図1参照)とは、上記アプリケーションプログラムによって生成されるものであって、印刷命令コマンドを含み、さらに、上記アプリケーションプログラムで作成された印刷データを含むものである。
【0046】
通知ファイル配置領域43とは、FLASH・ROM36内の通常記憶領域40の一部が管理テーブル39によってあてがわれたものであって、通知ファイル203(下記図1参照)が格納される。尚、通知ファイル203(下記図1参照)とは、本実施の形態に係るプリンター1のステータス情報を含むものである。
【0047】
設定ファイル配置領域44とは、FLASH・ROM36内の通常記憶領域40の一部が管理テーブル39によってあてがわれたものであって、設定ファイル201(下記図1参照)が格納される。尚、設定ファイル201(下記図1参照)とは、上記アプリケーションプログラムによって生成されものであって、上記アプリケーションプログラムでユーザーが設定した使用環境などを示す設定情報を含むものである。
【0048】
従って、FLASH・ROM36では、管理テーブル39と通常記憶領域40とが、USB規格のマス・ストレージ・エリア45として機能する。
【0049】
[3.本発明の動作(その1)]
次に、本実施の形態に係るプリンター1の動作について、図1を参照しつつ説明する。図1は、本実施の形態に係るプリンター1の動作をパソコン111の動作に合わせて制御するプログラムを示したフローチャート図である。そこで、先ず、パソコン111の動作について説明しておく。
【0050】
パソコン111は、本実施の形態に係るプリンター1でUSB接続されると、上述したように、本実施の形態に係るプリンター1のFLASH・ROM36内の通常記憶領域40をリムーバブルドライブとして認識する。
【0051】
そこで、S10におけるパソコン111では、本実施の形態に係るプリンター1のFLASH・ROM36内の通常記憶領域40の一部があてがわれたアプリケーションプログラム記憶領域41に、ユーザーが通常の操作でアクセスして、そのアプリケーションプログラム記憶領域41に記憶されているアプリケーションプログラムの実行ファイル200を読み出して起動させる。
【0052】
さらに、パソコン111では、S11において、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、本実施の形態に係るプリンター1のFLASH・ROM36内の通常記憶領域40の一部があてがわれた設定ファイル配置領域42から、設定ファイル201を読み出す。その読み出された設定ファイル201に含まれているアプリケーションプログラムの設定情報に基づいて、そのアプリケーションプログラムの使用環境等の設定を行う。
【0053】
S12におけるパソコン111では、ユーザーは、そのアプリケーションプログラムである専用エディタを使用して、本実施の形態に係るプリンター1で印刷させるための印刷データを作成する。
【0054】
S13では、パソコン111は、そのアプリケーションプログラムを終了するか否かを判定する。この判定は、そのアプリケーションプログラムにおけるユーザーの操作に基づく。ここで、そのアプリケーションプログラムを終了する場合には(S13:YES)、下記S19に進む。一方、そのアプリケーションプログラムを続行する場合には(S13:NO)、S14に進む。
【0055】
S14では、パソコン111は、本実施の形態に係るプリンター1に印刷させるか否かを判定する。この判定も、そのアプリケーションプログラムにおけるユーザーの操作に基づく。ここで、本実施の形態に係るプリンター1に未だ印刷させない場合には(S14:NO)、上記S12に戻る。一方、本実施の形態に係るプリンター1に印刷させる場合には(S14:YES)、S15に進む。
【0056】
S15では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、本実施の形態に係るプリンター1に対する印刷命令コマンドや、そのアプリケーションプログラムで作成された印刷データ等を含んだ命令ファイル202を生成する。さらに、その生成された命令ファイル202を本実施の形態に係るプリンター1に送信する。
【0057】
S16では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、本実施の形態に係るプリンター1のFLASH・ROM36内の通常記憶領域40の一部があてがわれた通知ファイル配置領域42から、通知ファイル203を読み出す。その後は、S16の2に進む。
【0058】
S16の2では、その通知ファイル203の中に印刷エラーのステータス情報があるか否かを判定する。ここで、その通知ファイル203の中に印刷エラーのステータス情報がある場合には(S16の2:YES)、S16の3に進む。S16の3では、印刷エラーの表示をLCD53において行う。その後は、下記S18に進む。
【0059】
一方、その通知ファイル203の中に印刷エラーのステータス情報がない場合には(S16の2:NO)、S17に進む。
【0060】
S17では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、上記S16で読み出した通知ファイル203に含まれているステータス情報から検知される本実施の形態に係るプリンター1の状況に基づいて、上記S15で送信した命令ファイル202に含まれている印刷データの印刷が本実施の形態に係るプリンター1で正常に行われて終了したか否かを判定する。ここで、印刷が正常に行われて終了していない場合には(S17:NO)、上記S16に戻る。一方、印刷が正常に行われて終了した場合には(S17:YES)、S18に進む。
【0061】
S18では、パソコン111は、そのアプリケーションプログラムを継続するか否かを判定する。この判定は、そのアプリケーションプログラムにおけるユーザーの操作に基づく。ここで、そのアプリケーションプログラムを継続する場合には(S18:YES)、上記S12に戻る。一方、そのアプリケーションプログラムを終了する場合には(S18:NO)、S19に進む。
【0062】
S19では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、そのアプリケーションの起動中にユーザーが設定したそのアプリケーションの使用環境などを示す設定情報等を含む設定ファイル201を作成する。さらに、その作成された設定ファイル201を本実施の形態に係るプリンター1に送信する。
【0063】
S20では、パソコン111は、そのアプリケーションプログラムを終了させ、そのアプリケーションプログラムを削除する。これにより、パソコン111には、そのアプリケーションプログラムが残らない。
【0064】
一方、本実施形態に係るプリンター1では、パソコン111にUSB接続されると、S101〜S108の各動作を制御するプログラムが実行される。尚、このプログラムは、ROM33に記憶されており、CPU32が自身のキャッシュメモリに読み込んで実行する。
【0065】
先ず、CPU32は、S101において、パソコン111から命令ファイル202を受信したか否かを判定する。ここで、パソコン111から命令ファイル202を受信していない場合には(S101:NO)、下記S107に進む。一方、パソコン111から命令ファイル202を受信した場合には(S101:YES)、S102に進む。
【0066】
S102では、CPU32は、FLASH・ROM36内の通常記憶領域40の一部があてがわれた命令ファイル配置領域42に、その命令ファイル202を上書きで記憶させる。
【0067】
S103では、CPU32は、FLASH・ROM36内の通常記憶領域40の一部があてがわれた命令ファイル配置領域42に上書きされた命令ファイル202の解析を行う。この解析では、命令ファイル202に含まれている印刷データが取り出される。
【0068】
S104では、CPU32は、上記S103で命令ファイル202から取り出された印刷データの印刷を、FLASH・ROM36に記憶されている印刷関係の制御プログラム37に従って行う。このとき、CPU32は、駆動回路54,56等を作動させる。
【0069】
S105では、CPU32は、現在の印刷状況を示すステータス情報を含んだ通知ファイル203を作成し、その作成した通知ファイル203をFLASH・ROM36内の通常記憶領域40の一部があてがわれた通知ファイル配置領域43に上書きで記憶する。
【0070】
S106では、CPU32は、印刷が終了したか否かを判定する。ここで、印刷が終了していない場合には(S106:NO)、上記S105に進む。一方、印刷が終了した場合には(S106:YES)、S107に進む。
【0071】
S107では、CPU32は、パソコン111から設定ファイル201を受信したか否かを判定する。ここで、パソコン111から設定ファイル201を受信していない場合には(S107:NO)、上記S101に戻る。一方、パソコン111から設定ファイル201を受信した場合には(S107:YES)、S108に進む。
【0072】
S108では、CPU32は、FLASH・ROM36内の通常記憶領域40の一部があてがわれた設定ファイル配置領域44に、その設定ファイル202を上書きで記憶させる。その後、CPU32は、本プログラムを終了する。
【0073】
[4.本発明の動作(その2)]
また、パソコン111では、上記図1のS11の直後の時点Rにおいて、図8に示す動作が行われる。図8は、パソコン111の動作を制御するプログラムを示したフローチャート図である。
【0074】
図8のS61では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、後述する次回起動時読出情報がレジストリ122に記憶されているか否かを判定する。ここで、次回起動時読出情報がレジストリ122に記憶されていない場合には(S61:NO)、上記図1のS12に進む。一方、次回起動時読出情報がレジストリ122に記憶されている場合には(S61:YES)、S62に進む。
【0075】
S62では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、後述するバックアップ印刷データをテンポラリフォルダ123から読み出す。その読み出されたバックアップ印刷データは、そのアプリケーションプログラムである専用エディタにて再現される。その後は、上記図1のS12に進む。
【0076】
また、パソコン111では、上記図1のS15の直前の時点Sにおいて、図9に示す動作が行われる。図9は、パソコン111の動作を制御するプログラムを示したフローチャート図である。
【0077】
図9のS71では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、そのアプリケーションプログラムで作成された印刷データをバックアップ印刷データとしてテンポラリフォルダ123に記憶する。その後は、S72に進む。
【0078】
S72では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、次回起動時読出情報をレジストリ122に記憶する。この次回起動時読出情報には、そのアプリケーションプログラムがパソコン111に次回読み出されて実行されたときに、バックアップ印刷データをテンポラリフォルダ123から読み出す制御命令が含まれている。従って、そのアプリケーションプログラムがパソコン111に次回読み出されて実行されたときに、次回起動時読出情報がレジストリ122に記憶されていれば、バックアップ印刷データがテンポラリフォルダ123から読み出されるように設定される。その後は、上記図1のS15に進む。
【0079】
また、パソコン111では、上記図1のS17の直後の時点Tにおいて、図10に示す動作が行われる。図10は、パソコン111の動作を制御するプログラムを示したフローチャート図である。
【0080】
図10のS71では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、バックアップ印刷データをテンポラリフォルダ123から削除する。その後は、S82に進む。
【0081】
S82では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、次回起動時読出情報をレジストリ122から削除する。その後は、上記図1のS18に進む。
【0082】
[5.本発明の動作(その3)]
図4は、パソコン111の動作を本実施の形態に係るプリンター1の動作に合わせて制御するプログラムを示したフローチャート図である。尚、このプログラムは、そのアプリケーションプログラムによって、上記図1のS10〜S18内のいずれかの時点で定期的な割込処理として行われる。
【0083】
図4のS21では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、第2所定時間が経過したか否かを判定する。ここで、第2所定時間を経過した場合に限って(S21:YES)、S22に進む。
【0084】
S22では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、本実施の形態に係るプリンター1のFLASH・ROM36内の通常記憶領域40にアクセスし、その通常記憶領域40に記憶されたいずれかのファイルにアクセスすることを試みる。その後は、S23に進む。
【0085】
S23では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、上記S22のアクセスに失敗したか否かを判定する。この判定では、上記S22でアクセスできなかった場合に上記S22のアクセスに失敗したと判定し、上記S22でアクセスできた場合に上記S22のアクセスに失敗しなかったと判定する。
【0086】
ここで、上記S22のアクセスに失敗しなかった場合には(S23:NO)、S24に進む。S24では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、上記S21の判断対象の時間をリセットし、上記S21の判断対象の時間の計時を再スタートさせる。尚、上記S21の判断対象の時間の計時は、上記S10でアプリケーションプログラムの実行ファイル200が起動された際にスタートされる。
【0087】
一方、上記S22のアクセスに失敗した場合には(S23:YES)、S25に進む。S25では、パソコン111は、そのアプリケーションプログラムを終了させ、そのアプリケーションプログラムを削除する。これにより、パソコン111には、そのアプリケーションプログラムが残らない。
【0088】
[6.本発明の動作(その4)]
図5は、パソコン111の動作を本実施の形態に係るプリンター1の動作に合わせて制御するプログラムを示したフローチャート図である。尚、このプログラムのうちパソコン111の動作に関するプログラムは、そのアプリケーションプログラムによって、上記図1のS10〜S18内のいずれかの時点で定期的な割込処理として行われる。また、このプログラムのうち本実施の形態に係るプリンター1の動作に関するプログラムは、上記図1のS108までのいずれかの時点で定期的な割込処理として行われる。
【0089】
先ず、本実施の形態に係るプリンター1の動作について説明する。図5のS111では、CPU32は、電池62の残量が所定量未満であるか否を判定する。この判定は、CPU32によって監視されている電池62の残量に基づいて行われる。ここで、電池62の残量が所定量未満である場合に限って(S111:YES)、S112に進む。
【0090】
S112では、CPU32は、自動電源オフ処理を開始させる。その後は、S113に進む。
【0091】
S113では、CPU32は、自動電源オフ処理が開始したことを示すステータス情報を含んだ通知ファイル203を作成し、その作成した通知ファイル203をFLASH・ROM36内の通常記憶領域40の一部があてがわれた通知ファイル配置領域43に上書きで記憶する。
【0092】
一方、パソコン111では、S31において、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、第3所定時間が経過したか否かを判定する。ここで、第3所定時間を経過した場合に限って(S31:YES)、S32に進む。
【0093】
S32では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、本実施の形態に係るプリンター1のFLASH・ROM36内の通常記憶領域40の一部があてがわれた通知ファイル配置領域42から、通知ファイル203を読み出す。その後は、S33に進む。
【0094】
S33では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、その通知ファイル203に自動電源オフ処理が開始したことを示すステータス情報があるか否かを判定する。ここで、その通知ファイル203に自動電源オフ処理が開始したことを示すステータス情報がない場合には(S33:NO)、S37に進む。
【0095】
S37では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、上記S31の判断対象の時間をリセットし、上記S31の判断対象の時間の計時を再スタートさせる。尚、上記S31の判断対象の時間の計時は、上記S10でアプリケーションプログラムの実行ファイル200が起動された際にスタートされる。
【0096】
一方、その通知ファイル203に自動電源オフ処理が開始したことを示すステータス情報がある場合には(S33:YES)、S34に進む。S34では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、そのアプリケーションプログラムで作成中の印刷データをバックアップ印刷データとしてテンポラリフォルダ123に記憶する。その後は、S35に進む。
【0097】
S35では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、次回起動時読出情報をレジストリ122に記憶する。従って、そのアプリケーションプログラムがパソコン111に次回読み出されて実行されたときに、次回起動時読出情報がレジストリ122に記憶されていれば、バックアップ印刷データがテンポラリフォルダ123から読み出されるように設定される。その後は、S36に進む。
【0098】
S36では、パソコン111は、そのアプリケーションプログラムを終了させ、そのアプリケーションプログラムを削除する。これにより、パソコン111には、そのアプリケーションプログラムが残らない。
【0099】
[7.本発明の動作(その5)]
また、パソコン111は、上記図5のS35の直後の時点Pにおいて、図6に示す動作が行われる。図6は、パソコン111の動作を本実施の形態に係るプリンター1の動作に合わせて制御するプログラムを示したフローチャート図である。
【0100】
図6のS41では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、選択肢の表示を行う。具体的には、図7に示すウィンドウ300をディスプレイ113に表示する。ウィンドウ300には、「継続」、「保存して終了」及び「終了」の各選択ボタン301,302,303が表示される。
【0101】
S42では、パソコン111は、ユーザーが「継続」の選択ボタン301を選択したか否かを判定する。この判定は、そのアプリケーションプログラムにおけるユーザーの操作に基づく。
【0102】
ここで、ユーザーが「継続」の選択ボタン301を選択した場合には(S42:YES)、後述するS51に進む。一方、ユーザーが「継続」の選択ボタン301を選択していない場合には(S42:NO)、S43に進む。S43では、パソコン111は、ユーザーが「保存して終了」の選択ボタン302を選択したか否かを判定する。この判定は、そのアプリケーションプログラムにおけるユーザーの操作に基づく。
【0103】
ここで、ユーザーが「保存して終了」の選択ボタン302を選択した場合には(S43:YES)、S44に進む。S44では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、ファイル保存ダイアログをディスプレイ113に表示する。これにより、ファイル保存に必要な情報をユーザーに入力させながら、そのアプリケーションプログラムで作成中の印刷データを保存させることができる。その後は、S45に進む。
【0104】
S45では、パソコン111は、ユーザーがファイル保存ダイアログをキャンセルしたか否かを判定する。この判定は、そのアプリケーションプログラムにおけるユーザーの操作に基づく。ここで、ユーザーがファイル保存ダイアログをキャンセルしなかった場合には(S45:NO)、後述するS48に進む。一方、ユーザーがファイル保存ダイアログをキャンセルした場合には(S45:YES)、後述するS51に進む。
【0105】
一方、ユーザーが「保存して終了」の選択ボタン302を選択していない場合には(S43:NO)、S46に進む。S46では、パソコン111は、ユーザーが「終了」の選択ボタン303を選択したか否かを判定する。この判定は、そのアプリケーションプログラムにおけるユーザーの操作に基づく。
【0106】
ここで、ユーザーが「終了」の選択ボタン303を選択した場合には(S46:YES)、後述するS48に進む。一方、ユーザーが「終了」の選択ボタン303を選択していない場合には(S46:NO)、S47に進む。
【0107】
S47では、パソコン111は、上記S41の選択肢の表示から第4所定時間が経過したか否かを判定する。尚、この第4所定時間については、上記S41の選択肢の表示からこの第4所定時間が経過しても、上記S112の自動電源オフ処理開始に因って本実施の形態に係るプリンター1の電源がオフされないような時間に予め設定されている。ここで、上記S41の選択肢の表示から第4所定時間が経過していない場合には(S47:NO)、上記S42に戻る。一方、上記S41の選択肢の表示から第4所定時間が経過した場合には(S47:YES)、後述するS50に進む。
【0108】
一方、上述したように、ユーザーがファイル保存ダイアログをキャンセルしなかった場合や(S45:NO)、ユーザーが「終了」の選択ボタン303を選択した場合には(S46:YES)には、S48に進む。S48では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、バックアップ印刷データをテンポラリフォルダ123から削除する。その後は、S49に進む。
【0109】
S49では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、次回起動時読出情報をレジストリ122から削除する。その後は、S50に進む。
【0110】
S50では、パソコン111は、そのアプリケーションプログラムを終了させ、そのアプリケーションプログラムを削除する。これにより、パソコン111には、そのアプリケーションプログラムが残らない。
【0111】
一方、上述したように、ユーザーが「継続」の選択ボタン301を選択した場合や(S42:YES)、ユーザーがファイル保存ダイアログをキャンセルした場合には(S45:YES)、S51に進む。S51では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、解除制御命令を本実施の形態に係るプリンター1に送信する。その解除制御命令とは、自動電源オフ処理を解除する命令である。その後は、S52に進む。
【0112】
S52では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、バックアップ印刷データをテンポラリフォルダ123から削除する。その後は、S53に進む。
【0113】
S53では、パソコン111は、そのアプリケーションプログラムによって、以下の動作を行う。すなわち、次回起動時読出情報をレジストリ122から削除する。その後は、上記図5のS37に進む。
【0114】
これに対して、本実施形態に係るプリンター1では、CPU32は、S121において、解除制御命令を受信したか否かを判定する。ここで、解除制御命令を受信した場合に限って(S121:YES)、S122に進む。S122では、CPU32は、自動電源オフ処理を解除させる。その後は、S123に進む。
【0115】
S123では、CPU32は、自動電源オフ処理が解除したことを示すステータス情報を含んだ通知ファイル203を作成し、その作成した通知ファイル203をFLASH・ROM36内の通常記憶領域40の一部があてがわれた通知ファイル配置領域43に上書きで記憶する。
【0116】
[8.まとめ]
以上詳細に説明したように、本実施の形態に係るプリンター1は、図3に示すように、FLASH・ROM36内の通常記憶領域40への書き込みをUSB規格で管理する管理テーブル39を、FLASH・ROM36内の通常記憶領域40外に置いている。その管理テーブル39によって、USBポートPに接続されたパソコン111に対し、本実施の形態に係るプリンター1(のFLASH・ROM36内の通常記憶領域40)をUSBマス・ストレージ・クラスのデバイスであるリムーバブルドライブとして認識させている。
【0117】
従って、FLASH・ROM36の通常記憶領域40内の一部であるアプリケーションプログラム記憶領域41に記憶されたアプリケーションプログラムの実行ファイル200は、パソコン111におけるユーザーの通常のアクセス操作で、パソコン111に読み出させることができる(S10)。よって、そのアプリケーションプログラムは、パソコン111にインストールされることなく、パソコン111で実行することが可能となる(S10)。
【0118】
そして、パソコン111上のアプリケーションプログラムで作成された印刷データを含むことが可能な命令ファイル202は、そのアプリケーションプログラムによって生成され、パソコン111からの通常のアクセスで、FLASH・ROM36の通常記憶領域40内の一部である命令ファイル配置領域42に書き込まれる(S15,S102)。
【0119】
一方、CPU32は、FLASH・ROM36の通常記憶領域40内の一部である命令ファイル配置領域42に書き込まれた命令ファイル202内の印刷データを取り出す。CPU32は、その取り出された印刷データを、駆動回路54,56等を作動させることによって、印字テープ2に印刷しながら、その印字テープ2を外部に排出する(S104)。
【0120】
この点、CPU32は、パソコン111上のアプリケーションプログラムで作成された印刷データを含むことが可能な命令ファイル202をパソコン111から受信すると(S101:YES)、FLASH・ROM36の通常記憶領域40内の一部である命令ファイル配置領域42に命令ファイル202を上書きして更新し(S102)、その更新された命令ファイル202を解析して印刷データを取り出す(S103)。これにより、アプリケーションプログラム及びデバイスドライバーがパソコン111にインストールされなくても、パソコン111からそのアプリケーションプログラムを使用した印刷が可能となる。
【0121】
また、本実施の形態に係るプリンター1では、USBマス・ストレージ・クラスのデバイスであるリムーバブルドライブとしてパソコン111が認識している本実施の形態に係るプリンター1のFLASH・ROM36の通常記憶領域40内の一部を、通知ファイル配置領域43としている。その通知ファイル配置領域43には、本実施の形態に係るプリンター1のステータス情報を含む通知ファイル203が書き込まれる。従って、FLASH・ROM36の通常記憶領域40内の一部である通知ファイル配置領域43に書き込まれた通知ファイル203は、パソコン111からの通常のアクセスで、そのパソコン111に読み出される(S16)。よって、本実施の形態に係るプリンター1の動作状況をパソコン111に知らせることができる。
【0122】
さらに、本実施の形態に係るプリンター1では、アプリケーションプログラムがパソコン111上で実行されると(S10)、本実施の形態に係るプリンター1のFLASH・ROM36の通常記憶領域40へ定期的なアクセスが行われ(S22)、そのアクセスに失敗したときに(S23:YES)、そのアプリケーションプログラムが終了する(S25)。この点、その定期的なアクセスの失敗が起きた場合には(S23:YES)、例えば、本実施の形態に係るプリンター1とパソコン111を接続するUSBケーブルLがUSBポートPから外れていたり、本実施の形態に係るプリンター1の電源がオフされていたりすること等が想定され、少なくとも、そのアプリケーションプログラムの動作保証が困難な状態であると言える。因って、本実施の形態に係るプリンター1では、本実施の形態に係るプリンター1とパソコン111の接続が外れていたり、本実施の形態に係るプリンター1の電源がオフされていたりした時点等に対して、そのアプリケーションプログラムの終了時点を同期させることができるので、そのアプリケーションプログラムの動作保証が困難な状態でそのアプリケーションプログラムが動作することを防止することが可能である。
【0123】
さらに、本実施の形態に係るプリンター1では、アプリケーションプログラムがパソコン111上で実行されると(S10)、パソコン111側において、本実施の形態に係るプリンター1のステータス情報を含む通知ファイル203が読み出された後に(S32)、その通知ファイル203に自動電源オフ処理が開始したことを示すステータス情報が含まれているか否かが判断される(S33)。ここで、その通知ファイル203に自動電源オフ処理が開始したことを示すステータス情報が含まれている場合には(S33:YES)、そのアプリケーションプログラムで作成中の印刷データがバックアップ印刷データとしてテンポラリフォルダ123に記憶される(S34)。さらに、次回起動時読出情報がレジストリ122に記憶される(S35)。
【0124】
従って、本実施の形態に係るプリンター1では、アプリケーションプログラムがパソコン111に次回読み出されて実行されるときは(S10)、このレジストリ122に記憶された次回起動時読出情報に因って(S61:YES)、テンポラリフォルダ133からバックアップ印刷データが読み出される(S62)。従って、アプリケーションプログラムで印刷データを作成中に自動的に電源がオフされても、その電源オフの直前に作成していた印刷データをアプリケーションプログラム再開時に再現させることが可能である。
【0125】
また、本実施の形態に係るプリンター1では、アプリケーションプログラムがパソコン111上で実行されると(S10)、パソコン111側において、通知ファイル203が読み出された際に(S32)、その通知ファイル203に自動電源オフ処理が開始したことを示すステータス情報が含まれている場合には(S33:YES)、パソコン111のディスプレイ113に「継続」・「保存して終了」・「終了」の各選択ボタン301,302,303を含んだウィンドウ300が表示される(S41)。このとき、自動電源オフ処理によって本実施の形態に係るプリンター1の電源がオフされる以前までに(S47:NO)、パソコン111側において、「継続」・「保存して終了」・「終了」の各選択ボタン301,302,303をユーザーが選択できる。「継続」の選択ボタン301をユーザーが選択すれば(S42:YES)自動電源オフ処理を解除する解除制御命令が本実施の形態に係るプリンター1に送信される(S51)。「保存して終了」の選択ボタン302をユーザーが選択すれば(S43:YES)、ファイル保存ダイアログがパソコン111のディスプレイ113に表示される(S44)。「終了」の選択ボタン303をユーザーが選択すれば(S46:YES)、アプリケーションプログラムが終了する(S50)。因って、本実施の形態に係るプリンター1は、本実施の形態に係るプリンター1が自動的に電源がオフされる以前に、そのアプリケーションプログラムで印刷データを作成することを延長するかどうかを選択することが可能となる。
【0126】
さらに、本実施の形態に係るプリンター1では、パソコン111側において、「継続」・「保存して終了」・「終了」の各選択ボタン301,302,303の各処理が正常終了すれば、テンポラリフォルダ123からバックアップ印刷データが削除され(S48)、レジストリ122から次回起動時読出情報が削除される(S49)。因って、「継続」・「保存して終了」・「終了」の各選択ボタン301,302,303の各処理が正常終了すれば、そのアプリケーションプログラムが、パソコン111に次回読み出されて実行されても、その通知ファイル203を受信した際に作成していた印刷データ(S34でバックアップ印刷データとして記憶されたもの)がアプリケーションプログラム再開時に再現されてしまうような不都合は起きない。
【0127】
また、本実施の形態に係るプリンター1では、パソコン111側において、「保存して終了」の選択ボタン302をユーザーが選択した後で(S43:YES)、ファイル保存ダイアログをユーザーがキャンセルすれば(S45:YES)、自動電源オフ処理を解除する解除制御命令が本実施の形態に係るプリンター1に送信される(S51)。因って、ユーザは、本実施の形態に係るプリンター1が自動的に電源がオフされる際に、ファイル保存ダイアログを表示することを選択しても(S43:YES)、その後に、アプリケーションプログラムで印刷データを作成することを延長することを選択することが可能となる。
【0128】
さらに、本実施の形態に係るプリンター1では、パソコン111側において、「継続」・「保存して終了」・「終了」の各選択ボタン301,302,303のいずれもユーザーが選択することなく、その各選択ボタン301,302,303の表示から第4所定時間が経過すると(S47:YES)、バックアップ印刷データや次回起動時読出情報が削除されることなく、本実施の形態に係るプリンター1で電池62からの電力供給がオフされる前までに、当該アプリケーションプログラムが終了する(S50)。
【0129】
この点、本実施の形態に係るプリンター1では、上述したように、アプリケーションプログラムで印刷データを作成中に自動的に電源がオフされても、アプリケーションプログラムがパソコン111に次回読み出されて実行されるときは(S10)、レジストリ122に記憶された次回起動時読出情報に因って(S61:YES)、テンポラリフォルダ133からバックアップ印刷データが読み出され(S62)、その電源オフの直前に作成していた印刷データをアプリケーションプログラム再開時に再現させることが可能である。因って、ユーザーが「継続」・「保存して終了」・「終了」の各選択ボタン301,302,303に気づかず、自動的に電源がオフされても、その電源オフの直前に作成していた印刷データをアプリケーションプログラム再開時に再現させることが可能である。
【0130】
また、本実施の形態に係るプリンター1では、パソコン111側において、命令ファイル202を印刷開始命令を含ませた状態で本実施の形態に係るプリンター1に送信する(S15)直前に、そのアプリケーションプログラムで作成中の印刷データがバックアップ印刷データとしてテンポラリフォルダ123に記憶され(S71)、次回起動時読出情報がレジストリ122に記憶される(S72)。
【0131】
従って、本実施の形態に係るプリンター1では、アプリケーションプログラムがパソコン111に次回読み出されて実行されるときは(S10)、レジストリ122に記憶された次回起動時読出情報に因って(S61:YES)、テンポラリフォルダ133からバックアップ印刷データが読み出される(S62)。従って、本実施の形態に係るプリンター1で印刷データを印刷中に電源がオフされても、その電源オフの直前に作成していた印刷データをアプリケーションプログラム再開時に再現させることが可能である。
【0132】
さらに、本実施の形態に係るプリンター1では、アプリケーションプログラムがパソコン111上で実行されると(S10)、パソコン111側において、通知ファイル203が読み出された際に(S16)、その通知ファイル203に含まれているステータス情報から検知される本実施の形態に係るプリンター1の状況に基づいて、上記S15で送信した命令ファイル202に含まれている印刷データの印刷が本実施の形態に係るプリンター1で正常に行われて終了したと判断された場合に(S17:YES)、テンポラリフォルダ123からそのバックアップ印刷データが削除され(S81)、レジストリ122からその次回起動時読出情報が削除される(S82)。因って、本実施の形態に係るプリンター1で印刷データが正常に印刷されれば、アプリケーションプログラムが、パソコン111に次回読み出されて実行されても、その正常に印刷された印刷データ(S71でバックアップ印刷データとして記憶されたもの)がアプリケーションプログラム再開時に再現されてしまうような不都合は起きない。
【0133】
[9.その他]
尚、本発明は上記実施の形態に限定されるものでなく、その趣旨を逸脱しない範囲で様々な変更が可能である。
例えば、本実施の形態に係るプリンター1は、印字テープ2に印刷を行う所謂ラベルプリンターであったが、ロール状又はシート状の印刷用紙に印刷行うプリンター等であってもよい。
また、レジストリ122に記憶される次回起動時読出情報に代えて、テンポラリフォルダ123に記憶されるバックアップ印刷データの有無に因り、テンポラリフォルダ123からバックアップ印刷データを読み出す又は読み出さないを、アプリケーションプログラムがパソコン111に次回読み出されて実行されるときに判断してもよい。
【0134】
また、本実施の形態に係るプリンター1とUSBポートPを介して接続されたパソコン111は、タワー型、オール・イン・ワン型、又はノート型のパソコンや、大型のコンピュータであってもよく、さらに、他のパソコンとLAN等で接続されていてもよい。
【産業上の利用可能性】
【0135】
本発明は、USBを介してホストに接続されたプリンターの制御技術に関する。
【図面の簡単な説明】
【0136】
【図1】本発明の一実施の形態に係るプリンターの動作をパソコンの動作に合わせて制御するプログラムを示したフローチャート図である。
【図2】同プリンターがパソコンに接続された状態を示した図である。
【図3】同プリンターの内部構成を示したブロック図である。
【図4】パソコンの動作を同プリンターの動作に合わせて制御するプログラムを示したフローチャート図である。
【図5】パソコンの動作を同プリンターの動作に合わせて制御するプログラムを示したフローチャート図である。
【図6】パソコンの動作を同プリンターの動作に合わせて制御するプログラムを示したフローチャート図である。
【図7】同プリンターの専用エディタで使用されるウインドウを示した図である。
【図8】パソコンの動作を制御するプログラムを示したフローチャート図である。
【図9】パソコンの動作を制御するプログラムを示したフローチャート図である。
【図10】パソコンの動作を制御するプログラムを示したフローチャート図である。
【符号の説明】
【0137】
1 プリンター
32 CPU
34 RAM
36 FLASH・ROM
39 管理テーブル
40 通常記憶領域
41 アプリケーションプログラム記憶領域
42 命令ファイル記憶領域
43 通知ファイル配置領域
44 設定ファイル配置領域
45 マス・ストレージ・エリア
54 駆動回路
55 サーマルヘッド
56 駆動回路
57 テープ送りモータ
61 電源回路
62 電池
111 パソコン
122 レジストリ
123 テンポラリフォルダ
200 アプリケーションプログラムの実行ファイル
201 設定ファイル
202 命令ファイル
203 通知ファイル
301 ウインドウ
302 「継続」の選択ボタン
303 「保存して終了」の選択ボタン
303 「終了」ボタン
P USBポート

【特許請求の範囲】
【請求項1】
USBポートと、
通常記憶領域を有するメモリと、
前記メモリの通常記憶領域外に置かれ、前記USBポートに接続されたPCに対し、前記メモリ内の通常記憶領域をリムーバブルドライブとして認識させるとともに前記メモリ内の通常記憶領域へのアクセスを管理するための管理テーブルと、
前記管理テーブルによって前記メモリの通常記憶領域内の一部があてがわれ、アプリケーションプログラムの実行ファイルが記憶された第1のメモリ領域と、
前記管理テーブルによって前記メモリの通常記憶領域内の一部があてがわれ、前記アプリケーションプログラムで作成された印刷データを含むことが可能な命令ファイルが書き込まれる第2のメモリ領域と、
前記第2のメモリ領域に書き込まれた命令ファイル内の印刷データに基づいて印刷を行う印刷手段と、
前記メモリと前記印刷手段とを制御するプロセッサとを備え、
前記プロセッサは、
(a)受信した命令ファイルに基づき前記第2のメモリ領域内の命令ファイルを更新し、
(b) その更新された命令ファイルを解析して前記印刷データを取り出し、
前記アプリケーションプログラムの実行ファイルが前記PCに読み出されて、前記PC上で実行されると、前記アプリケーションプログラムは、以下の制御を実行し、
(1)前記メモリの通常記憶領域へ定期的にアクセスし、
(2)前記アクセスに失敗したときに、当該アプリケーションプログラム自身を終了する、
ことを特徴するプリンター。
【請求項2】
USBポートと、
通常記憶領域を有するメモリと、
前記メモリの通常記憶領域外に置かれ、前記USBポートに接続されるとともにテンポラリフォルダとレジストリを有するPCに対し、前記メモリ内の通常記憶領域をリムーバブルドライブとして認識させるとともに前記メモリ内の通常記憶領域へのアクセスを管理するための管理テーブルと、
前記管理テーブルによって前記メモリの通常記憶領域内の一部があてがわれ、アプリケーションプログラムの実行ファイルが記憶された第1のメモリ領域と、
前記管理テーブルによって前記メモリの通常記憶領域内の一部があてがわれ、前記アプリケーションプログラムで作成された印刷データを含むことが可能な命令ファイルが書き込まれる第2のメモリ領域と、
前記第2のメモリ領域に書き込まれた命令ファイル内の印刷データに基づいて印刷を行う印刷手段と、
前記管理テーブルによって前記メモリの通常記憶領域内の一部があてがわれ、当該プリンターのステータス情報を含む通知ファイルが書き込まれる第3のメモリ領域と、
前記メモリ及び前記印刷手段を制御するプロセッサとを備え、
前記プロセッサは、電池の残量が所定量未満になったときから所定時間後に前記電池からの電力供給をオフにする自動電源オフ処理を行い、
前記プロセッサは、
(a)受信した命令ファイルに基づき前記第2のメモリ領域内の命令ファイルを更新し、
(b) その更新された命令ファイルを解析して前記印刷データを取り出し、
前記アプリケーションプログラムの実行ファイルが前記PCに読み出されて、前記PC上で実行されると、前記アプリケーションプログラムは、前記通知ファイルを検出後は、以下の制御を実行し、
(1)前記ステータス情報として前記自動電源オフ処理が開始した旨の情報が前記通知ファイルに含まれているか否かを判断し、
(2)前記自動電源オフ処理が開始した旨の情報が前記通知ファイルに含まれていると判断した場合には、
(2−1)前記テンポラリフォルダに前記印刷データをバックアップ印刷データとして記憶し、
(2−2)前記アプリケーションプログラムが前記PCに次回読み出されて実行されるときに前記テンポラリフォルダから前記バックアップ印刷データを読み出す次回起動時読出情報を、前記レジストリに記憶する、
ことを特徴するプリンター。
【請求項3】
請求項2に記載するプリンターであって、
前記アプリケーションプログラムは、以下の(I)〜(V)の制御を実行することにより、前記(1)〜(2)の制御を実現し、
(I)前記通知ファイルを受信した際に、前記ステータス情報として前記自動電源オフ処理が開始した旨の情報が前記通知ファイルに含まれていると判断すれば、前記PCに「継続」・「保存して終了」・「終了」の選択肢を表示し、
(II)前記選択肢のうち「継続」をユーザーが選択したと判断すれば、前記自動電源オフ処理を解除する旨の制御命令を当該プリンターへ送信し、
(III)前記選択肢のうち「保存して終了」をユーザーが選択したと判断すれば、ファイル保存ダイアログを表示し、
(IV)前記選択肢のうち「終了」をユーザーが選択したと判断すれば、当該アプリケーションプログラム自身を終了し、
(V)前記3つの選択肢の処理が正常終了すれば、
(V−1)前記テンポラリフォルダから前記バックアップ印刷データを削除し、
(V−2)前記レジストリから前記次回起動時読出情報を削除する、
ことを特徴するプリンター。
【請求項4】
請求項3に記載するプリンターであって、
前記アプリケーションプログラムは、以下の(VI)〜(VII)の制御を実行し、
(VI)ユーザーが前記選択肢のうち「保存して終了」を選択した後にファイル保存ダイアログをキャンセルしたと判断すれば、前記自動電源オフ処理を解除する旨の制御命令を当該プリンターへ送信し、
(VI)前記選択肢のうち「継続」・「保存して終了」・「終了」のいずれもユーザーが選択することなく、前記(I)から前記所定時間が経過し、当該プリンターで前記電池からの電力供給がオフされる直前に当該アプリケーションプログラム自身を終了する、
ことを特徴するプリンター。
【請求項5】
請求項2に記載するプリンターであって、
前記アプリケーションプログラムは、以下の(i)〜(ii)の制御を実行することにより、前記(1)〜(2)の制御を実現し、
(i)前記命令ファイルを印刷開始命令を含ませた状態で当該プリンターに送信するときに、
(i−1)前記テンポラリフォルダに前記印刷データをバックアップ印刷データとして記憶し、
(i−2)前記アプリケーションプログラムが前記PCに次回読み出されて実行されたときに前記バックアップ印刷データを前記テンポラリフォルダから読み出す次回起動時読出情報を、前記レジストリに記憶し、
(ii)前記通知ファイルを受信したときに、前記ステータス情報として前記印刷開始命令による印刷が前記印刷手段によって正常に行われた旨の情報が当該受信通知ファイルに含まれていると判断すれば、
(ii−1)前記テンポラリフォルダから前記バックアップ印刷データを削除し、
(ii−2)前記レジストリから前記次回起動時読出情報を削除する、
ことを特徴するプリンター。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2010−55447(P2010−55447A)
【公開日】平成22年3月11日(2010.3.11)
【国際特許分類】
【出願番号】特願2008−220797(P2008−220797)
【出願日】平成20年8月29日(2008.8.29)
【出願人】(000005267)ブラザー工業株式会社 (13,856)
【Fターム(参考)】