アプリケーションプログラムが出力したデータに基づいて出力装置を制御する出力制御装置であって、当該出力制御装置が使用する前記出力装置を論理デバイスとして登録する登録手段と、前記アプリケーションプログラムが前記論理デバイスを指定してデータを出力した場合に、指定された前記論理デバイスによりデータを出力させる出力制御手段と、前記アプリケーションプログラムにより指定された前記論理デバイスが使用できない場合に、使用可能な他の前記出力装置を、前記アプリケーションプログラムにより指定された前記論理デバイスを代替する代替論理デバイスとして前記登録手段に登録させる登録制御手段と、を備えたことを特徴とする出力制御装置。前記登録制御手段は、前記アプリケーションプログラムにより指定された前記論理デバイスが使用できない場合に、当該論理デバイスとして、使用可能な他の前記出力装置を前記登録手段に登録させることを特徴とする請求項1記載の出力制御装置。前記登録制御手段は、前記アプリケーションプログラムにより指定された前記論理デバイスが使用できない場合に、指定された前記論理デバイスに対応する前記出力装置と同種の他の前記出力装置を、指定された前記論理デバイスを代替する前記代替論理デバイスとして前記登録手段に登録させることを特徴とする請求項1または2記載の出力制御装置。前記登録手段は、各々の前記論理デバイスが接続された論理ポートと、前記論理デバイスの属性を含む情報とを記憶しており、前記登録制御手段は、前記論理ポート以外の情報が前記アプリケーションプログラムにより指定された前記論理デバイスに対応する前記出力装置と一致する他の前記出力装置を、指定された前記論理デバイスを代替する前記代替論理デバイスとして前記登録手段に登録させることを特徴とする請求項3記載の出力制御装置。前記出力装置を接続可能な複数種類のインターフェイスを備え、前記登録制御手段は、前記アプリケーションプログラムにより指定された前記論理デバイスが使用できない場合に、指定された前記論理デバイスに対応する前記出力装置と別種の前記インターフェイスに接続された他の前記出力装置を、指定された前記論理デバイスを代替する前記代替論理デバイスとして前記登録手段に登録させることを特徴とする請求項1から3のいずれかに記載の出力制御装置。アプリケーションプログラムが出力したデータに基づいて出力装置を制御する出力装置の制御方法であって、使用する前記出力装置を論理デバイスとして登録し、前記アプリケーションプログラムが前記論理デバイスを指定してデータを出力した場合に、指定された前記論理デバイスによりデータを出力させ、前記アプリケーションプログラムにより指定された前記論理デバイスが使用できない場合には、使用可能な他の前記出力装置を、前記アプリケーションプログラムにより指定された前記論理デバイスを代替する代替論理デバイスとして登録すること、を特徴とする出力装置の制御方法。アプリケーションプログラムが出力したデータに基づいて出力装置を制御する装置を制御する制御部が実行するプログラムであって、前記制御部を、前記出力装置を論理デバイスとして登録する登録手段と、前記アプリケーションプログラムが前記論理デバイスを指定してデータを出力した場合に、指定された前記論理デバイスによりデータを出力させる出力制御手段と、前記アプリケーションプログラムにより指定された前記論理デバイスが使用できない場合に、使用可能な他の前記出力装置を前記アプリケーションプログラムにより指定された前記論理デバイスを代替する代替論理デバイスとして前記登録手段に登録させる登録制御手段と、して機能させることを特徴とするプログラム。しかしながら、論理デバイスの設定はハードウェアとしての出力装置に一対一で対応づけられるため、例えばホストコンピューターにおける出力装置の接続形態が変更されると、論理デバイスとして登録された内容に合致する出力装置が存在しなくなるため、その論理デバイスを使用できなくなってしまうという問題があった。具体的には、ホストコンピューターのIEEE1294インターフェイスに接続されていた出力装置が、USBインターフェイスにつなぎ替えられた場合や、LAN上に配置されたサーバーにつなぎ替えられた場合には、ホストコンピューターからアクセス可能であることに変わりないが、接続形態が変わっている。また、単に、ホストコンピューターに接続された出力装置が取り外されたり、別の機種の出力装置に交換されたりした場合も、接続形態の変更の一例である。このような出力装置の接続形態の変更はユーザーの意図で行われるため、どのように変更されたかをホストコンピューターは知り得ない。このため、ホストコンピューターにおける論理デバイスの設定変更をユーザーが手動で行う必要があり、面倒であった。このような点を考慮して、特許文献1記載の構成ではアプリケーションソフトウェアアプリケーションプログラムをプリンター自体が搭載しホストコンピューターが取得して使用しているが、この構成ではプリンターがアプリケーションソフトウェアを格納できる容量の記憶装置を搭載する必要があり、汎用的ではなかった。本発明は、上述した事情に鑑みてなされたものであり、ホストコンピューターが使用する論理デバイスとして登録された出力装置の構成が変更されても、煩雑な作業を行うことなく出力を可能にすることを目的とする。上記目的を達成するために、本発明は、アプリケーションプログラムが出力したデータに基づいて出力装置を制御する出力制御装置であって、当該出力制御装置が使用する前記出力装置を論理デバイスとして登録する登録手段と、前記アプリケーションプログラムが前記論理デバイスを指定してデータを出力した場合に、指定された前記論理デバイスによりデータを出力させる出力制御手段と、前記アプリケーションプログラムにより指定された前記論理デバイスが使用できない場合に、使用可能な他の前記出力装置を、前記アプリケーションプログラムにより指定された前記論理デバイスを代替する代替論理デバイスとして前記登録手段に登録させる登録制御手段とを備えたことを特徴とする。本発明によれば、使用しようとする論理デバイスが使用できない場合に、他の出力装置が、指定された論理デバイスを代替する代替論理デバイスとして登録されるので、煩雑な作業を伴わずに出力が可能となる。また、アプリケーションプログラムや出力装置に対して特殊な構成変更を加える必要が無いので、汎用性に富み、様々なアプリケーションプログラム及び出力装置に対して適用可能である。また、本発明は、上記出力制御装置において、前記登録制御手段は、前記アプリケーションプログラムにより指定された前記論理デバイスが使用できない場合に、当該論理デバイスとして、使用可能な他の前記出力装置を前記登録手段に登録させることを特徴とする。本発明によれば、指定された論理デバイスが使用できない場合に、他の出力装置が、この使用できない論理デバイスを代替する論理デバイスとして登録されることで、出力が可能となる。このため、アプリケーションプログラムに構成変更を加える必要が無く、汎用性に富み、様々なアプリケーションプログラムに対して適用可能である。この場合、代替としての出力装置を、アプリケーションプログラムにより指定された論理デバイスとして登録してもよい。この場合、アプリケーションプログラムを含む各部は論理デバイスが使用不可か否かを認識せずに論理デバイスを指定して、処理を実行できるという利点がある。また、本発明は、上記出力制御装置において、前記登録制御手段は、前記アプリケーションプログラムにより指定された前記論理デバイスが使用できない場合に、指定された前記論理デバイスに対応する前記出力装置と同種の他の前記出力装置を、指定された前記論理デバイスを代替する前記代替論理デバイスとして前記登録手段に登録させることを特徴とすることを特徴とする。本発明によれば、使用できない論理デバイスとして登録されていた出力装置の代替として、同種の出力装置が登録されるため、当初使用しようとしていた出力装置との出力形態の相違を防止し、望まれた通りの高い出力品質を維持できる。また、本発明は、上記出力制御装置において、前記登録手段は、各々の前記論理デバイスが接続された論理ポートと、前記論理デバイスの属性を含む情報とを記憶しており、前記登録制御手段は、前記論理ポート以外の情報が前記アプリケーションプログラムにより指定された前記論理デバイスに対応する前記出力装置と一致する他の前記出力装置を、指定された前記論理デバイスを代替する前記代替論理デバイスとして前記登録手段に登録させることを特徴とする。本発明によれば、使用できない論理デバイスとして登録されていた出力装置の代替として、接続された論理ポート以外が共通の出力装置が登録されるため、当初使用しようとしていた出力装置との出力形態の相違をより確実に防止できる。また、本発明は、上記出力制御装置において、前記出力装置を接続可能な複数種類のインターフェイスを備え、前記登録制御手段は、前記アプリケーションプログラムにより指定された前記論理デバイスが使用できない場合に、指定された前記論理デバイスに対応する前記出力装置と別種の前記インターフェイスに接続された他の前記出力装置を、指定された前記論理デバイスを代替する前記代替論理デバイスとして前記登録手段に登録させることを特徴とする。本発明によれば、使用できない論理デバイスとして登録されていた出力装置の代替として、別種のインターフェイスに接続された出力装置が登録されるため、出力装置の接続形態の変更に対応して、望まれた通りの高い出力品質で出力を行える。また、上記課題を解決するため、本発明は、アプリケーションプログラムが出力したデータに基づいて出力装置を制御する出力装置の制御方法であって、使用する前記出力装置を論理デバイスとして登録し、前記アプリケーションプログラムが前記論理デバイスを指定してデータを出力した場合に、指定された前記論理デバイスによりデータを出力させ、前記アプリケーションプログラムにより指定された前記論理デバイスが使用できない場合には、使用可能な他の前記出力装置を、前記アプリケーションプログラムにより指定された前記論理デバイスを代替する前記代替論理デバイスとして登録することを特徴とする。本発明の制御方法を実行することにより、使用しようとする論理デバイスが使用できない場合に、他の出力装置が、指定された論理デバイスを代替する論理デバイスとして登録されるので、煩雑な作業を伴わずに出力が可能となる。また、アプリケーションプログラムや出力装置に対して特殊な構成変更を加える必要が無いので、汎用性に富み、様々なアプリケーションプログラム及び出力装置に対して適用可能である。また、上記課題を解決するため、本発明は、アプリケーションプログラムが出力したデータに基づいて出力装置を制御する装置を制御する制御部が実行するプログラムであって、前記制御部を、前記出力装置を論理デバイスとして登録する登録手段と、前記アプリケーションプログラムが前記論理デバイスを指定してデータを出力した場合に、指定された前記論理デバイスによりデータを出力させる出力制御手段と、前記アプリケーションプログラムにより指定された前記論理デバイスが使用できない場合に、使用可能な他の前記出力装置を前記アプリケーションプログラムにより指定された前記論理デバイスを代替する前記代替論理デバイスとして前記登録手段に登録させる登録制御手段として機能させることを特徴とする。本発明のプログラムを制御部が実行することにより、使用しようとする論理デバイスが使用できない場合に、他の出力装置が、指定された論理デバイスを代替する論理デバイスとして登録されるので、煩雑な作業を伴わずに出力が可能となる。また、アプリケーションプログラムや出力装置に対して特殊な構成変更を加える必要が無いので、汎用性に富み、様々なアプリケーションプログラム及び出力装置に対して適用可能である。また、本発明は、上記プログラムを記憶した記憶媒体として実現してもよい。本発明によれば、論理デバイスとして登録された出力装置の接続形態の変更や交換等によって、使用しようとする論理デバイスが使用できない場合であっても、煩雑な作業を伴わずに出力が可能となる。以下、図面を参照して本発明の実施形態について説明する。図1は、本発明を適用した実施形態に係るPOSシステム1の機能的構成を示すブロック図である。図1に示すPOSシステム1は、POSサーバー20に通信ネットワーク5を介して接続されたホストコンピューター30出力制御装置を備え、このホストコンピューター30に、レシート等の出力装置としてのプリンター11を接続して構成される。また、ホストコンピューター30は通信ネットワーク5を介して、ユーザーが会計処理をする近くに設置されるもので、顧客に渡すクーポンやキッチンでの調理指示用の伝票などを印刷するための複数のプリンター12と通信可能に接続されており、これらプリンター12を出力装置として印刷を実行させることも可能である。ホストコンピューター30は、プリンター11とともにスーパーやコンビニエンスストア等の店舗にて利用され、オペレーターによって入力された商品販売に関する入力情報に基づいてレシートを発行する。プリンター11は、ホストコンピューター30が生成した印刷データを受信して印刷するものである。ホストコンピューター30は、プリンター11の他、出力装置としてキャッシュドロワー55を備えている。キャッシュドロワー55は、商品販売に伴い授受される金銭を収容し、ホストコンピューター30により会計処理がされる毎に開閉される。プリンター11は、直接ホストコンピューター30に接続されるローカルプリンターであり、ホストコンピューター30に対して有線または無線接続される。プリンター12は通信ネットワーク5を介してホストコンピューター30に接続されるネットワークプリンターであり、例えばTCP/IPプロトコルに準じて相互に通信を実行することで、プリンター12からホストコンピューター30へステータスを通知し、ホストコンピューター30の制御によりプリンター12が印刷を実行する。通信ネットワーク5の具体的態様およびプリンター12とホストコンピューター30との間の通信方式は任意である。プリンター12の設置位置は任意であるが、本実施形態では、プリンター12がホストコンピューター30とともに店舗に設置された場合を例に挙げて説明する。プリンター11、12は、例えばサーマルヘッド方式のプリンターであり、記録媒体としての感熱ロール紙を搬送する搬送部、感熱ロール紙に熱エネルギーを与えて発色させ、文字や画像を印刷するサーマルヘッド、印刷後の感熱ロール紙を切断するカッターユニット等の図示しない構成部を備えている。プリンター11、12は、ホストコンピューター30から各種制御コマンドや印刷データを受信し、この制御コマンドに従って、印刷データを感熱ロール紙に印刷して、レシートや伝票等を印刷出力する。ホストコンピューター30は、商品情報を入力する入力装置としてキーボード52およびバーコードリーダー53を備え、キーボード52による入力またはバーコードリーダー53によるバーコードの読み取りによって商品に関する入力情報を取得する。また、ホストコンピューター30はカード型記録媒体に記録された磁気情報を読み取るカードリーダー54を有し、このカードリーダー54によって顧客のクレジットカードや会員カードを読み取り、クレジット清算に関する情報や会員番号等の会員に関する情報を取得する。さらに、ホストコンピューター30は、POSサーバー20から送信された商品データを元に生成した商品情報を表示するディスプレイ51を有し、このディスプレイ51における表示によって、顧客に対して購入商品の金額等を掲示する。POSサーバー20は、CPU、ROMおよびRAM等からなる制御部を有する。POSサーバー20は、ROM内に記憶された制御プログラムをCPUが実行することにより、RAM内に設けられるバッファーに記憶された情報の処理を行い、ホストコンピューター30が送信する入力情報に基づいて、商品マスタから商品コード、商品名、金額に関する情報を抽出して返信し、ホストコンピューター30は、これらに基づき、レシートの印刷等およびディスプレイ51の表示に用いる商品データを生成する。ホストコンピューター30は、ROM32に記憶された基本制御プログラムを実行してホストコンピューター30の各部を制御するCPU31と、CPU31が実行する基本制御プログラムおよび処理に用いられる設定値等のデータを記憶するROM32と、CPU31が実行するプログラムや処理対象のデータを一時的に記憶するRAM33と、CPU31が実行するオペレーティングシステムOS、アプリケーションプログラム、プリンタードライバープログラム等の各種プログラム、および、処理対象のデータ等を記憶する記憶部34を有する制御部40を備えている。制御部40は、表示部35、主に入力装置と通信するための入力インターフェイスI/F36、主に出力装置と通信するための出力インターフェイスI/F37および主に通信ネットワーク5を介して他装置と通信するための通信インターフェイスI/F38の各部と相互に接続され、ホストコンピューター30の各種機能を実現する。これらのインターフェイスは、双方向に通信できるものでもよい。表示部35は、制御部40がPOSサーバー20から受信した情報を処理したデータに基づいて、商品登録された商品名や購入金額を表示するための画像信号を生成し、この画像信号をディスプレイ51に出力して、ディスプレイ51に表示を実行させる。また、入力I/F36は、RS-232CシリアルインターフェイスやUSBUniversalSerialBus等の規格に準拠したコネクターおよびインターフェイス回路を備え、各種の入力装置を接続可能である。入力I/F36は、上記の規格により定められたプロトコルに従って、接続された入力装置と制御データを送受信することにより、接続された各入力装置の種類や型番等を特定して、制御部40に出力する。これにより、制御部40の制御によって各入力装置が認識され、使用可能な状態となり、各入力装置からの入力が可能になる。本実施形態では、入力I/F36にはキーボード52、バーコードリーダー53およびカードリーダー54が接続され、入力I/F36は、これらの各部から入力される信号を取得し、制御部40に出力する。出力I/F37は、RS-232Cシリアルインターフェイス、IEEE1284パラレルインターフェイス、USB等の規格に準拠したコネクターおよびインターフェイス回路を備え、各種の出力装置を接続可能である。出力I/F37は、上記の規格により定められたプロトコルに従って、接続された出力装置と制御データを送受信することにより、各出力装置の接続状態を判定するとともに、各出力装置の種類や型番等を特定して、制御部40に出力する。これにより、制御部40の制御によって、後述するように各出力装置が論理デバイスとして登録され、以降は各出力装置からの出力が可能になる。また、出力I/F37は、制御部40の制御に従って各出力装置と出力I/F37との接続状態を検出する機能を有し、検出結果を制御部40に出力する。本実施形態では、出力I/F37にはプリンター11およびキャッシュドロワー55が接続されている。通信I/F38は、通信ネットワーク5に接続されるコネクターや通信インターフェイス回路を備え、制御部40による制御に従って、通信ネットワーク5を介して接続されたプリンター12およびPOSサーバー20との間の通信を実行する。ここで、通信ネットワーク5は、Ethernet登録商標規格に準拠して構成されたLAN、あるいは専用線や公衆回線網を利用して構成された広域ネットワークであり、無線通信回線を利用して構成されたものであってもよい。通信I/F38は、通信ネットワーク5の構成に適合する種類の通信インターフェイスであって、通信ネットワーク5と有線接続される構成としてもよいし、無線LANやBluetooth登録商標等の無線通信インターフェイスとして構成してもよい。また、通信ネットワーク5が構内LANと、この構内LANに接続された広域ネットワークとを含んで構成されてもよい。本実施形態では、通信I/F38が、プリンター12とともに構内LANに接続され、この構内LANが広域ネットワークを介してPOSサーバー20に接続された構成とする。図2は、ホストコンピューター30の機能的構成を詳細に示す機能ブロック図である。この図2に示すように、ホストコンピューター30を制御する制御部40は、記憶部34図1に記憶されたプログラムを実行することにより、オペレーティングシステム41、POSアプリケーション42アプリケーションプログラム、および、オペレーティングシステム41の一部として機能するプリンタードライバー43出力制御手段の各部の機能を実現する。すなわち、制御部40は、ウィンドウズ登録商標等のオペレーティングシステム41上で稼動するプリンタードライバーOLEforRetailPOS以下OPOSというにより出力装置を制御する。OPOSは、オペレーティングシステム41上で稼動するPOSアプリケーション42に対して、プリンター11、12やバーコードリーダー53等の周辺デバイスとの機種依存性のないインターフェイスを提供するものであり、プリンターなどデバイスのカテゴリー毎に対応したコントロールオブジェクトCO44とデバイスの機種毎の仕様に対応したサービスオブジェクトSO45とによって構成されている。制御部40は、オペレーティングシステム41を実行し、このオペレーティングシステム41上で動作するPOSアプリケーション42の機能と、オペレーティングシステム41上で動作するプリンタードライバー43の機能により、上述した商品登録、金額表示、プリンター11、12によるレシートの出力等を実行する。POSアプリケーション42アプリケーションプログラムは、POSサーバー20から送信される商品データや入力情報に基づいてレシート上に印刷するための印刷データを生成するが、この印刷データは、オペレーティングシステム41を介して、プリンターのデバイスクラスデバイスのカテゴリーに対応したコントロールオブジェクト44に引き渡され、さらにコントロールオブジェクト44からプリンター11、12の機種に対応したサービスオブジェクト45に引き渡される。サービスオブジェクト45は、この印刷データを加工してプリンター11、12のコマンド等の仕様に対応する印刷コマンドを生成し、プリンター11、12へ送信する。なお、上記したOPOSは、コントロールオブジェクト44とサービスオブジェクト45とをコンバインした形態で、プリンタードライバー43としてユーザーに提供される。プリンター11、12は、ホストコンピューター30から印刷実行のコマンドと印刷データとを受信し、受信したデータを受信バッファー図示略内に一時的に格納し、このコマンドおよび印刷データを解析し、印刷データに従って印刷用のイメージデータを生成し、サーマルヘッドにより印刷を実行する。各プリンター11、12は、オペレーティングシステム41が提供する通信用のポート論理ポート4A、4Bに接続されている。ポート4A、4Bは、オペレーティングシステム41が入出力装置に対するデータの入出力を行うために形成された仮想的論理的な接続口であって、一つの入出力装置に対して一つのポート4A、または4Bが割り当てられる。ポート4Aはホストコンピューター30が備える出力I/F37または通信I/F38に対応し、ポート4Bは入力I/F36に対応している。言い換えれば、オペレーティングシステム41が有する各ポート4A、4Bは、対応する物理インターフェイスの種類によって区別できる。例えば、いくつかのポート4Aは出力I/F37が備えるUSBポートやシリアルポートCOMポートを使用するポートとして設定されており、出力I/F37が2つのシリアルコネクターを備えている場合、オペレーティングシステム41は、各コネクターに対応する2つのCOMポート4Aを設定できる。また、ポート4A、4Bは入出力装置に対応して設けられる論理的なポートであるため、入出力装置を特定できる場合には、実際の物理的な接続口コネクター等の数に制限されない。例えば、通信I/F38が一つのRJ45コネクターしか有していない場合であっても、複数のポート4Aを設定できる。この場合、各ポート4Aに、接続されているプリンター12のIPアドレスなど一つのプリンター12を特定し得る情報が対応づけられていればよい。本実施形態では、出力I/F37に対応するポート4Aにプリンター11が接続され、出力I/F37に対応する別のポート4Aにキャッシュドロワー55が接続され、通信I/F38に対応するポート4Aにプリンター12が接続されている。オペレーティングシステム41が有するポートのうち、キーボード52、バーコードリーダー53、カードリーダー54或いはプリンター11、12等の入出力デバイスのうちで接続されていないポートは空きポートとなっている。空きポートは必要に応じて削除し、また、必要に応じて新たなポートを作成することが可能である。各ポート4A、4Bに接続された入出力装置は、オペレーティングシステム41において、論理デバイス論理デバイス名としてシステムレジストリー47に登録される。システムレジストリー47はオペレーティングシステム41の一部として、各種設定に係る設定値を格納する登録手段として機能し、オペレーティングシステム41が使用する入出力装置のデバイス名や使用するポート4A、4Bを特定する情報が登録されている。システムレジストリー47に論理デバイスとして登録された入出力装置は、オペレーティングシステム41の制御のもとに動作させることができる。例えば、入力装置であるキーボード52、バーコードリーダー53からのオペレーティングシステム41にデータを入力し、オペレーティングシステム41からプリンター11、12及びキャッシュドロワー55にデータを出力できる。図3は、システムレジストリー47における論理デバイスの登録状態の例を示す図であり、一例として、登録された論理デバイスに関する情報をツリー状に示す。システムレジストリー47には、登録された論理デバイスに関する情報が論理デバイス管理情報47Aとして含まれている。論理デバイス管理情報47Aにおいて、論理デバイスはデバイスカテゴリー別に分類される。デバイスカテゴリーは、デバイスの種類カテゴリー毎に設けられ、例えば、入力装置はキーボード、マウス、デジタイザー、バーコードリーダー、カードリーダー等の種類別にカテゴリー分けされる。また、出力装置は、例えばプリンター、キャッシュドロワー、外部記憶装置等の種類カテゴリー別にカテゴリー分けされる。デバイスカテゴリーに分類された各論理デバイスには論理デバイス名が付与されている。論理デバイス名は、ホストコンピューター30に入出力装置が接続された際、あるいはキーボード52の操作により入出力装置が論理デバイスとして設定された際に、自動または手動で付与される。オペレーティングシステム41は、各論理デバイスを論理デバイス名により特定するので、一つのオペレーティングシステム41が管理する範囲において論理デバイス名は各論理デバイスに固有であり、重複しないよう付与される。論理デバイス管理情報47Aには、論理デバイス名に対応づけて、その論理デバイスが接続されている通信用のポートの種別、ポートを識別するためのポート番号またはポートの名称、ポートの設定に関するデータ、論理デバイスとして管理される入出力装置に関するデバイス情報、入出力装置の動作に係る設定データが含まれている。ポートの種別は、例えば、USB、シリアル、LAN等の物理インターフェイスの種類である。同一種類の物理インターフェイスに対応するポートが複数ある場合には、例えば、COMポート1、COMポート2、...のように各ポートに番号が付与され識別できる。ポート設定データには、例えば、USBインターフェイスやRS-232Cインターフェイスにおいては、双方向通信の有無等の設定に関するデータが含まれ、LANインターフェイスの場合にはIPアドレスやSNMPの使用の可否等の設定に関するデータが含まれる。デバイス情報には、例えば、入出力装置の機種名、メーカー名、装備しているオプション機能等に関するデータが含まれる。デバイス設定データには、例えば、使用するドライバープログラムのバージョン、デバイスドライバープログラムにより設定可能な全ての項目のデータが含まれている。例えば論理デバイスがプリンターである場合、デバイス設定データには、用紙幅または用紙サイズ、規定のフォントサイズ、1行の桁数、自動給紙や手動給紙などの用紙の供給方法、カッターユニットの使用の可否、紙に印刷する領域を規定する際のトップマージンのサイズ、ボトムマージンのサイズ、外周余白サイズ等が含まれる。論理デバイス管理情報47Aのデータはキーボード52の操作等によってユーザーが編集可能である。また、オペレーティングシステム41の機能により、論理デバイス管理情報47Aに登録済みの論理デバイスについて入力I/F36および出力I/F37を介して動作状態ステータスを検出し、検出したステータスを示すデータを論理デバイス管理情報47Aに追加することができる。論理デバイスとして登録された入出力装置が接続されていない、あるいは電源がオンになっていない等の理由で使用できない場合、オペレーティングシステム41は、論理デバイス管理情報47Aに、使用不可のステータスを登録する。ステータスは、例えば一定時間毎にオペレーティングシステム41が検出して更新する。プリンタードライバー43は、コントロールオブジェクト44とサービスオブジェクト45で構成されている。コントロールオブジェクト44は、POSアプリケーション42によってプリンタードライバー43が呼び出された場合に、POSアプリケーション42が出力するレシート印刷用のデータを取得し、出力装置を制御するための出力用のコマンドと、出力用のデータとを生成する。コントロールオブジェクト44が生成するコマンドおよびデータは、OPOSの仕様に従って、一つのデバイスカテゴリーに属する出力装置に共通するものである。POSアプリケーション42は、データの出力を指示する際に、論理デバイス管理情報47Aを参照し、論理デバイス管理情報47Aに登録された論理デバイスの中から、当該データの出力に使用する論理デバイス論理デバイス名を指定する。すなわち、出力するデータ、データ出力の指示とともに、使用する論理デバイスを指定する情報論理デバイス名を出力する。プリンタードライバー43のコントロールオブジェクト44は、POSアプリケーション42が出力したデータに従って、システムレジストリー47を参照し、指定された論理デバイスのステータスを論理デバイス管理情報47Aから取得する。ここで、コントロールオブジェクト44は、指定された論理デバイスがシステムレジストリー47に登録されていない場合、あるいは、ステータスが使用不可となっている場合には、エラーをアプリケーション42に返す。コントロールオブジェクト44が論理デバイスのステータスに関してエラーを返すと、POSアプリケーション42がエラーを受け取って、ユーザーに入出力装置が接続されていない等を知らせるため、ディスプレイ51にエラーメッセージが表示される等の動作が行われる。しかし、本実施形態では、プリンタードライバー43が備えるドライバー設定ツール46の機能により、論理デバイスの構成を変更するようにしている。ドライバー設定ツール46登録制御手段は、コントロールオブジェクト44が出力するエラーを検出した場合に、システムレジストリー47を参照し、POSアプリケーション42が指定した論理デバイスを代替する別の論理デバイスを探索する。代替可能な論理デバイスがある場合には、この論理デバイスのデバイス名を、POSアプリケーション42が指定した論理デバイスの論理デバイス名とするように変更し、システムレジストリー47の設定を更新する。この場合、ドライバー設定ツール46が事前にコントロールオブジェクト44のエラーを検出し、代替可能な論理デバイスがある場合には、コントロールオブジェクト44を制御してPOSアプリケーション42へエラーを返さないようにしている。例えば、図3の論理デバイス管理情報47Aに登録された論理デバイスのうち、プリンターPが接続されていない等で使用不可となっている場合、ドライバー設定ツール46は、同じデバイスカテゴリーに属するプリンターQを使用可能であると判別した場合、代替の論理デバイスとして選択し、論理デバイス名プリンターPに、プリンターQを対応づける。対応付けの態様は、例えば以下の2通りが挙げられる。1論理デバイス名プリンターPに対応するポート種別、ポート設定データ、デバイス情報、デバイス設定データを、プリンターQのデータに基づいて書き換えた後、論理デバイス名プリンターQに対応されていたデータを削除する。この場合、もとのプリンターPの登録の内容は削除され、プリンターQとして登録されていた出力装置の内容が新たにプリンターPとして登録され、プリンターQとして登録されていた内容は削除される。2論理デバイス名プリンターPに対応するポート種別、ポート設定データ、デバイス情報、デバイス設定データを、プリンターQのデータに基づいて書き換える。プリンターQに対応しているデータは、そのままとする。この場合、プリンターQとして登録されていた出力装置は、プリンターPとしても動作する。POSアプリケーション42が、プリンターPを指定しても、プリンターQを指定しても、同じ出力装置が出力を行うことになる。上記の1、2いずれの場合も、論理デバイス管理情報47Aに登録されたデータを変更することで、論理デバイス管理情報47Aの構成そのものを変更することなく、論理デバイスの代替を実現できるという利点がある。ドライバー設定ツール46は、例えば、指定された論理デバイスとデバイスカテゴリーが一致する他の論理デバイスを、使用不可の論理デバイスを代替する他の論理デバイスとして選択する。これにより、一つのプリンター11、或いは12のいずれ一方が使用不可となっていても、使用可能な他のプリンター11、或いは12の他方によって印刷出力を実行できるので、ユーザー等が論理デバイスに関する手動の設定操作を行うことない。また、ドライバー設定ツール46は、例えば、指定されたが使用不可の論理デバイスとデバイスカテゴリーが一致し、かつ、ポート種別が一致する使用可の論理デバイスを、使用不可の論理デバイスを代替する他の論理デバイスとして選択してもよい。この場合、一つのプリンター11、或いは12のいずれか一方が使用不可となっていても、ポート4Aなどの同一のポートに接続されたプリンター11、或いは12の他方により印刷が実行される。ユーザーが会計処理をするプリンター11の近くにクーポンや伝票を印刷するためのプリンター12が設置されているので、ユーザーが意図したプリンター11、或いは12に一方に近い場所あるいは似た環境に設置されたプリンター11、或いは12の他方が印刷を実行する点で利便性に優れている。さらにまた、ドライバー設定ツール46は、例えば、指定された論理デバイスとポート種別番号およびポート設定データ以外の装置構成、仕様、動作に係る設定などの少なくともいずれかのデータが一致する論理デバイス等を、使用不可の論理デバイスを代替する他の論理デバイスとして選択してもよい。この場合、装置構成、仕様、動作に係る設定がほぼ一致するプリンターによって印刷が実行されるので、例えば、紙幅や紙のカット、文字サイズ、文字の桁数、余白マージンなどユーザーが望んだものとほぼ同じ印刷結果を得ることができるという利点がある。さらに、ドライバー設定ツール46は、POSアプリケーション42により指定された論理デバイスの代替として、指定された論理デバイスとは異なるインターフェイスに接続された論理デバイスを選択するように予め登録することができる。具体的には、POSアプリケーション42が指定した論理デバイスに対応するプリンターが、出力I/F37に接続されたプリンター11であり、このプリンター11が使用不可である場合に、ドライバー設定ツール46は、出力I/F37以外のインターフェイス例えば、通信I/F38に接続された他のプリンターを、代替する論理デバイスとして登録する。論理デバイスが使用不可になる場合の典型的な例として、ユーザーがプリンター11の設定を変更するなどして接続形態を変更した結果、そのプリンターが接続されるポート4Aが変更されるケースがある。このような場合、異なるインターフェイスに接続されたプリンター12を代替として登録すれば、そのプリンター12が、当初指定された論理デバイスに対応するプリンター11そのものである可能性が高い。このため、異なるインターフェイスに接続されたプリンターを代替として登録すれば、プリンターの接続形態の変更に対応して、望まれた通りの高い出力品質で出力を行える。サービスオブジェクト45は、プリンター11、12の機種毎にまたは複数の機種に適合させて作成されたものである。サービスオブジェクト45は、コントロールオブジェクト44が生成したデータに基づいて、POSアプリケーション42が指定した論理デバイスに適した印刷用のコマンドおよび印刷データを含む印刷用データを生成し、指定された論理デバイスに出力する。図4には、上記のホストコンピューター30の動作をフローチャートとして示す。まず、POSアプリケーション42がプリンタードライバー43へデータを出力するとステップS11、このデータに基づいてコントロールオブジェクト44が、システムレジストリー47の論理デバイス管理情報47Aを参照してステップS12、指定された論理デバイスのステータスが使用可能となっているか否かを判定するステップS13。指定された論理デバイスが使用可能である場合ステップS13;Yes、コントロールオブジェクト44およびサービスオブジェクト45は、POSアプリケーション42が出力したデータに基づいて印刷コマンドと印刷データを生成しステップS14、指定された論理デバイスに対応するプリンター11、12に出力して印刷を実行させるステップS15。これに対し、指定された論理デバイスが使用可能でない場合ステップS13;No、コントロールオブジェクト44はエラーをオペレーティングシステム41に出力しステップS16、このエラーを検出したオペレーティングシステム41によってドライバー設定ツール46が呼び出されるステップS17。オペレーティングシステム41は、コントロールオブジェクト44がエラーをPOSアプリケーション42に返すことを保留させる。ドライバー設定ツール46は、指定された論理デバイスを代替する使用可能な他の論理デバイスを、論理デバイス管理情報47Aから検索しステップS18、該当する論理デバイスの有無を判定するステップS19。指定された論理デバイスを代替可能な他の論理デバイスがない場合ステップS19;No、ドライバー設定ツール46は、オペレーティングシステム41を経由してコントロールオブジェクト44がエラーをPOSアプリケーション42に返すことを許可し、オペレーティングシステム41は印刷をキャンセルするステップS20。一方、指定された論理デバイスを代替可能な他の論理デバイスがある場合ステップS19;Yes、ドライバー設定ツール46は、指定された論理デバイスを他の論理デバイスで代替するために論理デバイス管理情報47Aを更新しステップS21、更新後の論理デバイス管理情報47Aに従って、ステップS14で印刷コマンドと印刷データが生成される。以上のように、本発明を適用した実施形態に係るPOSシステム1によれば、POSアプリケーション42が出力したデータに基づいて出力装置としてのプリンター11、12、キャッシュドロワー55等を制御するホストコンピューター30は、ホストコンピューター30で使用する出力装置を論理デバイスとして登録するシステムレジストリー47と、POSアプリケーション42が論理デバイスを指定してデータを出力した場合に、指定された論理デバイスによりデータを出力させるプリンタードライバー43と、POSアプリケーション42により指定された論理デバイスが使用できない場合に、POSアプリケーション42により使用可能な他の出力装置を、POSアプリケーション42により指定された論理デバイスを代替する代替論理デバイスとしてシステムレジストリー47に登録させるドライバー設定ツール46とを備える。この結果、出力装置の構成変更等によって、指定した論理デバイスが使用できない場合に、他の出力装置が、指定された論理デバイスを代替する論理デバイスとして登録されるので、ユーザーが手動で設定するような煩雑な作業を伴わずに出力が可能となる。また、POSアプリケーション42や出力装置に対して特殊な構成変更を加える必要が無いので、汎用性に富み、様々なPOSアプリケーション42及び出力装置に対して適用可能である。また、ドライバー設定ツール46は、POSアプリケーション42により指定された論理デバイスが使用できない場合に、当該論理デバイスとして、使用可能な他の出力装置をシステムレジストリー47に登録させるので、ユーザーの論理デバイスの設定変更に係る手作業を経ることなく出力が可能となる。この場合、代替としての出力装置を、POSアプリケーション42により指定された論理デバイスとして登録すれば、POSアプリケーション42を含む各部は論理デバイスが使用不可か否かを認識せずに論理デバイスを指定して、処理を実行できるという利点がある。また、ドライバー設定ツール46が、POSアプリケーション42により指定された論理デバイスが使用できない場合に、指定された論理デバイスに対応する出力装置と同種の他の出力装置を、指定された論理デバイスを代替する論理デバイスとしてシステムレジストリー47に登録することが可能であり、この場合、当初使用しようとしていた出力装置との出力形態の相違を防止し、望まれた通りの高い出力品質を維持できる。また、システムレジストリー47は、各々の論理デバイスが接続された論理ポートと、論理デバイスの属性を含む情報とを論理デバイス管理情報47Aとして有しており、ドライバー設定ツール46は、論理ポート以外の情報がPOSアプリケーション42により指定された論理デバイスに対応する出力装置と一致する他の出力装置を、指定された論理デバイスを代替する論理デバイスとしてシステムレジストリー47に登録することができ、この場合、当初使用しようとしていた出力装置との出力形態の相違をより確実に防止できる。また、ホストコンピューター30は、出力装置を接続可能な複数種類のインターフェイスを備え、ドライバー設定ツール46は、POSアプリケーション42により指定された論理デバイスが使用できない場合に、指定された論理デバイスに対応する出力装置と別種のインターフェイスに接続された他の出力装置を、指定された論理デバイスを代替する論理デバイスとしてシステムレジストリー47に登録してもよく、この場合、出力装置の接続形態の変更に対応して、望まれた通りの高い出力品質で出力を行える。なお、上記各実施形態は本発明を適用した一具体例を示すものであり、本発明はこれに限定されるものではない。例えば、POSシステム1が備える出力装置はプリンター11、12、キャッシュドロワー55に限定されず、表示装置等の他の出力デバイスを使用することが可能である。さらに、上記実施形態では、POSアプリケーションを実行するPOSシステムにおいて本発明を適用した例を説明したが、ホストコンピューター30が実行するアプリケーションプログラムはPOSアプリケーションに限定されないし、他の用途に使用されるアプリケーションプログラムを実行し、出力装置を制御する場合に、本発明を適用することもできる。また、図1、2のブロック図に示した各機能部は機能的構成を示すものであって、各機能部を独立したハードウェアにより構成する必要はなく、ソフトウェアとハードウェアとの協働により、複数の機能部の機能を1つのハードウェアに集約して実現することも、一つの機能部を複数のハードウェアにより実現することも勿論可能である。また、上述の動作を行うホストコンピューター30が実行するプログラムは、ROM32が記憶する構成に限らず、可搬型の記録媒体に記憶されている構成であってもよいし、或いは、通信回線を介して接続された他の装置にダウンロード可能に記憶され、これらの装置からホストコンピューター30が上記プログラムをダウンロードして実行してもよく、その他の構成についても任意に変更可能である。