(57)【要約】【課題】ＦＴＰサーバが搭載されたＦＴＰ型処理装置において、処理装置のメディア接続部に接続された記憶メディアの接続状態を、プロトコルの拡張変更を何ら行うことなくホスト装置側に、よりユーザにわかりやすい形で通知できるようにすることと、ホスト装置側から記録メディアの操作を行うことにある。【解決手段】ホスト装置からのネットワークを介したＦＴＰ通信によるコマンドに従い、ＦＴＰ型処理装置に搭載されているメディア接続部に接続された記憶メディアを単位とした操作に対応付けられた操作対応リンクを含んだデータを前記ホスト装置に送信する。また、操作対応リンクへのアクセス要求を受けたことを条件として、操作対応リンクに対応する操作を実行する。【選択図】図３
2008217140.tif 000002
【特許請求の範囲】
【請求項１】
メディア接続部を備えたＦＴＰ型処理装置であり、
ホスト装置からのネットワークを介したＦＴＰ通信によるコマンドに従い、前記メディア接続部に接続された記憶メディアに対し、少なくともファイル単位によるデータの読出し、書込みを行うＦＴＰサーバ手段を備え、
そのＦＴＰサーバ手段は、所定のファイル名を持つファイルへのアクセス要求を受けたことを条件として、前記記憶メディアを単位とした操作に対応付けられた操作対応リンクを含んだデータを前記ホスト装置に送信する操作対応データ送信手段と、
前記操作対応リンクへのアクセス要求を受けたことを条件として、操作対応リンクに対応する操作を実行する操作実行手段と、を備えたことを特徴とするＦＴＰ型処理装置。
【請求項２】
前記操作対応データ送信手段は、前記記憶メディアを単位とした操作に対応付けられたＵＲＬを含んだハイパーテキストデータを前記ホスト装置に送信し、
前記操作実行手段は、前記ＵＲＬへのアクセス要求を受けたことを条件として、ＵＲＬに対応する操作を実行すること、を特徴とする請求項１に記載のＦＴＰ型処理装置。
【請求項３】
所定のファイル名を持つファイルへのアクセス要求を受けたことを条件として、前記ＦＴＰ型処理装置あるいは前記メディア接続部に接続された記憶メディアの状態に基づいて、前記記憶メディアを単位とした操作に対応付けられた操作対応リンクを含んだデータを作成する操作対応データ作成手段を備え、
前記操作対応データ送信手段は、作成された操作対応データを前記ホスト装置に送信することを特徴とする請求項１または２に記載のＦＴＰ型処理装置。
【請求項４】
前記ＦＴＰサーバ手段は、前記操作実行手段による操作実行状況を反映した実体データを決定し、実体データを前記ホスト装置に送信することを特徴とする請求項１ないし３のいずれか１項に記載のＦＴＰ型処理装置。
【請求項５】
前記ＦＴＰサーバ手段は、前記実体データへのリンクを含んだデータを前記ホスト装置に送信することを特徴とする請求項４に記載のＦＴＰ型処理装置。
【請求項６】
前記ＦＴＰサーバ手段は、前記実体データへのリンクと共に、リンク先に関するキャッシュデータを削除するコマンドを含んだデータを前記ホスト装置に送信することを特徴とする請求項５に記載のＦＴＰ型処理装置。
【請求項７】
前記ＦＴＰサーバ手段は、前記実体データへのリンクと、そのリンクへのリダイレクトを指示するリダイレクト指示データを前記ホスト装置に送信することを特徴とする請求項４ないし６のいずれか１項に記載のＦＴＰ型処理装置。
【請求項８】
前記ＦＴＰサーバ手段は、前記実体データとともに前記リンクとは異なる、次の段階の操作実行状況を反映した次回実体データへのリンクとそのリンクへのリダイレクトを指示するリダイレクト指示データを前記ホスト装置に送信することを特徴とする請求項４ないし７のいずれか１項に記載のＦＴＰ型処理装置。
【請求項９】
前記ＦＴＰ型処理装置は、複数のメディア接続部が設けられ、
前記操作対応リンクは、いずれかの前記メディア接続部に接続された記憶メディアに対する操作に対応することを特徴とする請求項１ないし８のいずれか１項に記載のＦＴＰ型処理装置。
【請求項１０】
メディア接続部には種別の異なる記憶メディアを接続可能であり、
前記操作対応リンクは、いずれかの種類の記憶メディアに対する操作に対応することを特徴とする請求項１ないし９のいずれか１項に記載のＦＴＰ型処理装置。
【請求項１１】
前記操作対応リンクは、前記メディア接続部に接続された記憶メディア内のファイル名又はディレクトリ名を前記ホスト装置に送信する操作に対応することを特徴とする請求項１ないし１０のいずれか１項に記載のＦＴＰ型処理装置。
【請求項１２】
前記操作対応リンクは、前記メディア接続部に接続された記憶メディア内のファイルの実体データを前記ホスト装置に送信する操作に対応することを特徴とする請求項１ないし１１のいずれか１項に記載のＦＴＰ型処理装置。
【請求項１３】
前記操作対応リンクは、前記メディア接続部に接続された記憶メディアのフォーマット操作に対応することを特徴とする請求項１ないし１２のいずれか１項に記載のＦＴＰ型処理装置。
【請求項１４】
前記操作対応リンクは、前記メディア接続部に接続された記憶メディアのファイル消去操作に対応することを特徴とする請求項１ないし１３のいずれか１項に記載のＦＴＰ型処理装置。
【請求項１５】
前記操作対応リンクは、前記メディア接続部に接続された記憶メディア間のファイルコピー操作に対応することを特徴とする請求項１ないし１４のいずれか１項に記載のＦＴＰ型処理装置。
【請求項１６】
前記ネットワークを介して送信される印刷データに基づいて印刷を実行可能なネットワークプリンタに組み込まれてなる請求項１ないし１５のいずれか１項に記載のＦＴＰ型処理装置。
【請求項１７】
ホスト装置と、メディア接続部を備え、前記ホスト装置からのネットワークを介したＦＴＰ通信によるコマンドに従い、前記メディア接続部に接続された記憶メディアに対し、少なくともファイル単位によるデータの読出し、書込みを行うＦＴＰサーバ手段を備えたＦＴＰ型処理装置とからなり、
前記ＦＴＰ型処理装置は、所定のファイル名を持つファイルへのアクセス要求を受けたことを条件として、前記記憶メディアを単位とした操作に対応付けられた操作対応リンクを含んだデータを前記ホスト装置に送信する、操作対応データ送信手段と、前記操作対応リンクへのアクセス要求を受けたことを条件として、操作対応リンクに対応する操作を実行する操作実行手段と、を備え、
前記ホスト装置は、所定のファイル名を持つファイルと、前記操作対応リンクへアクセスすることと、
前記ＦＴＰ型処理装置から送信された前記操作対応リンクを含んだデータを表示装置に表示することを特徴とするＦＴＰシステム。
【請求項１８】
前記ホスト装置は、前記所定のファイル名を持つファイルへのショートカットファイルを記憶していることを特徴とする請求項１７に記載のＦＴＰシステム。
【請求項１９】
メディア接続部を備え、前記ホスト装置からのネットワークを介したＦＴＰ通信によるコマンドに従い、前記メディア接続部に接続された記憶メディアに対し、少なくともファイル単位によるデータの読出し、書込みを行うＦＴＰサーバ手段を備えたＦＴＰ型処理装置において、
前記記憶メディアを単位とした操作に対応付けられた操作対応リンクを含んだデータを前記ホスト装置に送信し、前記操作対応リンクへのアクセス要求を受けたことを条件として、操作対応リンクに対応する操作を実行するＦＴＰシステムの操作方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＦＴＰ型処理装置、そのＦＴＰ型処理装置とホスト装置とからなるＦＴＰシステム、および、その操作方法に関する。
【背景技術】
【０００２】
【特許文献１】特開２００３−１７７９８７号公報
【０００３】
ＦＴＰ（File Transfer Protocol）にて、ファイルを転送する仕組みは従来より知られている（例えば、特許文献１参照）。
【０００４】
また、近年、フラッシュメモリなどの不揮発性メモリがカード型にパッケージングされたいわゆるメモリーカード（記憶メディアの一例）が広く知られている。このメモリーカードは、デジタルカメラや携帯音楽プレーヤーなどのデジタル機器に用いられるデータの記憶媒体として急速に普及している。メモリーカードの仕様は統一されておらず、例えば、コンパクトフラッシュ（登録商標、以下「ＣＦ」と略称する）、スマートメディア（登録商標、以下「ＳＭ」と略称する）、メモリースティック（登録商標、以下「ＭＳ」と略称する）、ＳＤメモリーカード（登録商標、以下「ＳＤ」と略称する）など、種々のものが市場に出回っている。
【０００５】
ＰＣなどはメモリーカードの読み書きをも行うメモリーカードリーダライタ（以下「リーダライタ」と略称する）と通信することで、リーダライタに接続された上記メモリーカードへのアクセスが可能となる。近年ではこうしたリーダライタを搭載した印刷装置なども普及しており、例えば、ＪＰＥＧ形式等で保存された画像データファイルを書き込んだメモリーカードをリーダライタに接続することで、ＰＣを経由せずに画像を直接印刷できるようになっている。
【０００６】
ＰＣなどにＦＴＰクライアントプログラムをインストールしておき、カードリーダ側にＦＴＰサーバプログラムを搭載しておけば、デジタルカメラやカメラつき携帯電話の撮影画像データファイルの保存先として使用されるメモリーカードをリーダライタに接続することで、そのメモリーカードに保存されているデータファイルをＦＴＰによりＰＣへ転送することができる。つまり、リーダライタをＰＣの外付けＦＴＰ型記憶装置として利用することが可能である。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ところで、ＦＴＰはその名の通り、ファイル転送について設計されたプロトコルであり、記憶メディア（リムーバブルメディア、以下、単にメディアともいう）を取り扱うことを前提としたプロトコル設計がなされていない。
従って、上記のようなＦＴＰ型記憶装置（或いはそれを搭載したプリンタなどの周辺デバイス）にＦＴＰサーバを搭載した場合、ＦＴＰプロトコルそのものに準拠しただけのクライアントからは、ネットワーク上のメモリーカードリーダーからの情報を表示することは不可能であり、また、クライアントからメモリーカードのフォーマット等の操作も行うことが不可能であった。
上記の問題点を解決する手法として、まず、メディアそのものやメディアを単位とした操作をＦＴＰプロトコルに準拠したクライアントから直接行えるよう、ＦＴＰプロトコル自体の拡張変更を行うことが考えられる。しかし、拡張変更を行った場合、既存のＦＴＰクライアントのユーザはその恩恵にあずかることはできない。また、プロトコルの拡張変更は、国際的な団体を通して承認を得る必要があり、現実的ではない。
【０００８】
本発明の課題は、プロトコルの拡張変更を行うことなくＦＴＰプロトコルに準拠したクライアントからＦＴＰサーバ上のメディアそのものやメディアを単位とした操作を直接行えるようにすることにある。
【課題を解決するための手段及び発明の効果】
【０００９】
上記の課題を解決する為に、請求項１のＦＴＰ型処理装置は、メディア接続部を備えたＦＴＰ型処理装置であり、ホスト装置からのネットワークを介したＦＴＰ通信によるコマンドに従い、前記メディア接続部に接続された記憶メディアに対し、少なくともファイル単位によるデータの読出し、書込みを行うＦＴＰサーバ手段を備え、そのＦＴＰサーバ手段は、所定のファイル名を持つファイルへのアクセス要求を受けたことを条件として、前記記憶メディアを単位とした操作に対応付けられた操作対応リンクを含んだデータを前記ホスト装置に送信する操作対応データ送信手段と、前記操作対応リンクへのアクセス要求を受けたことを条件として、操作対応リンクに対応する操作を実行する操作実行手段と、を備えることを特徴とする。
【００１０】
請求項２のＦＴＰ型処理装置は、前記記憶メディアを単位とした操作に対応付けられたＵＲＬを含んだハイパーテキストデータを前記ホスト装置に送信し、前記操作実行手段は、前記ＵＲＬへのアクセス要求を受けたことを条件として、ＵＲＬに対応する操作を実行することを特徴とする。
【００１１】
請求項３のＦＴＰ型処理装置は、所定のファイル名を持つファイルへのアクセス要求を受けたことを条件として、前記ＦＴＰ型処理装置あるいは前記メディア接続部に接続された記憶メディアの状態に基づいて、前記記憶メディアを単位とした操作に対応付けられた操作対応リンクを含んだデータを作成する操作対応データ作製手段を備え、前記操作対応データ送信手段は、作製された操作対応データを前記ホスト装置に送信することを特徴とする。
【００１２】
請求項４のＦＴＰ型処理装置におけるＦＴＰサーバ手段は、前記操作実行手段による操作実行状況を反映した実体データを決定し、実体データを前記ホスト装置に送信することを特徴とする。
【００１３】
請求項５のＦＴＰ型処理装置におけるＦＴＰサーバ手段は、前記実体データへのリンクを含んだデータを前記ホスト装置に送信することを特徴とする。
【００１４】
請求項６のＦＴＰ型処理装置におけるＦＴＰサーバ手段は、前記実体データへのリンクと共に、リンク先に関するキャッシュデータを削除するコマンドを含んだデータを前記ホスト装置に送信することを特徴とする。
【００１５】
請求項７のＦＴＰ型処理装置におけるＦＴＰサーバ手段は、前記実体データへのリンクと、そのリンクへのリダイレクトを指示するリダイレクト指示データを前記ホスト装置に送信するＦＴＰサーバ手段を備えることを特徴とする。
【００１６】
請求項８のＦＴＰ型処理装置におけるＦＴＰサーバ手段は、前記実体データとともに前記リンクとは異なる、次の段階の操作実行状況を反映した次回実体データへのリンクとそのリンクへのリダイレクトを指示するリダイレクト指示データを前記ホスト装置に送信するＦＴＰサーバ手段を備えることを特徴とする。
【００１７】
請求項９のＦＴＰ型処理装置は、複数のメディア接続部が設けられ、前記操作対応リンクは、いずれかの前記メディア接続部に接続された記憶メディアに対する操作に対応することを特徴とする。
【００１８】
請求項１０のＦＴＰ型処理装置は、メディア接続部には種別の異なる記憶メディアを接続可能であり、前記操作対応リンクは、いずれかの種類の記憶メディアに対する操作に対応することを特徴とする。
【００１９】
請求項１１のＦＴＰ型処理装置における前記操作対応リンクは、前記メディア接続部に接続された記憶メディア内のファイル名又はディレクトリ名を前記ホスト装置に送信する操作に対応することを特徴とする。
【００２０】
請求項１２のＦＴＰ型処理装置における前記操作対応リンクは、前記メディア接続部に接続された記憶メディア内のファイルの実体データを前記ホスト装置に送信する操作に対応することを特徴とする。
【００２１】
請求項１３のＦＴＰ型処理装置における前記操作対応リンクは、前記メディア接続部に接続された記憶メディアのフォーマット操作に対応することを特徴とする。
【００２２】
請求項１４のＦＴＰ型処理装置における前記操作対応リンクは、前記メディア接続部に接続された記憶メディアのファイル消去に対応することを特徴とする。
【００２３】
請求項１５のＦＴＰ型処理装置はにおける前記操作対応リンクは、前記メディア接続部に接続された記憶メディア間のファイルコピーに対応することを特徴とする。
【００２４】
請求項１６のＦＴＰ型処理装置は、前記ネットワークを介して送信される印刷データに基づいて印刷を実行可能なネットワークプリンタに組み込まれてなることを特徴とする。
【００２５】
請求項１７のＦＴＰシステムは、ホスト装置と、メディア接続部を備え、前記ホスト装置からのネットワークを介したＦＴＰ通信によるコマンドに従い、前記メディア接続部に接続された記憶メディアに対し、少なくともファイル単位によるデータの読出し、書込みを行うＦＴＰサーバ手段を備えたＦＴＰ型処理装置とからなり、前記ＦＴＰ型処理装置は、所定のファイル名を持つファイルへのアクセス要求を受けたことを条件として、前記記憶メディアを単位とした操作に対応付けられた操作対応リンクを含んだデータを前記ホスト装置に送信する、操作対応データ送信手段と、前記操作対応リンクへのアクセス要求を受けたことを条件として、操作対応リンクに対応する操作を実行する操作実行手段と、を備え、前記ホスト装置は、所定のファイル名を持つファイルと、前記操作対応リンクへアクセスすることと、前記ＦＴＰ型処理装置から送信された前記操作対応リンクを含んだデータを表示装置に表示することを特徴とする。
【００２６】
請求項１８のＦＴＰシステムは、請求項３のＦＴＰ型処理装置は、前記所定のファイル名を持つファイルへのショートカットファイルを記憶している前記ホスト装置を含むことを特徴とする。
【００２７】
請求項１９のＦＴＰシステムの操作方法は、メディア接続部を備え、前記ホスト装置からのネットワークを介したＦＴＰ通信によるコマンドに従い、前記メディア接続部に接続された記憶メディアに対し、少なくともファイル単位によるデータの読出し、書込みを行うＦＴＰサーバ手段を備えたＦＴＰ型処理装置において、前記記憶メディアを単位とした操作に対応付けられた操作対応リンクを含んだデータを前記ホスト装置に送信し、前記操作対応リンクへのアクセス要求を受けたことを条件として、操作対応リンクに対応する操作を実行することを特徴とする。
【００２８】
請求項１のＦＴＰ型処理装置、請求項１７のＦＴＰシステム、請求項１９のＦＴＰシステムの操作方法によれば、ＦＴＰ型処理装置にはＦＴＰプロトコルに対応したＦＴＰサーバが備えられており、ホスト装置にはＦＴＰプロトコルに対応したＦＴＰクライアントが備えられている。ＦＴＰサーバは、ネットワークを介したＦＴＰ通信によるＦＴＰクライアントからのコマンドに従い、記憶メディアを単位とした操作に対応付けられた操作対応リンクを含んだデータをＦＴＰクライアントへ送信する。ＦＴＰクライアントは、ＦＴＰサーバから送信されたデータをブラウザで開くことにより、メディアの状態を確認することができる。また、ファイルに含まれている操作対応リンク操作することにより、メディアそのものやメディアを単位とした操作を直接行うことができる。
【００２９】
すなわち、ＦＴＰプロトコルの拡張変更を行なうことなく、ＦＴＰプロトコルに準拠したクライアントからＦＴＰサーバ上のメディアそのものやメディアを単位とした操作を直接行えるようにできる。
【００３０】
請求項２のＦＴＰ型処理装置によれば、ユーザが、ＦＴＰプロトコルに準拠したクライアントからＦＴＰサーバ上のメディアそのものやメディアを単位とした操作を直接行えるようにできる。また、ハイパーテキストデータを用いることによって、よりユーザにわかりやすい形（色を用いる等）でメディア情報や操作手段を伝えることも可能となる。
【００３１】
請求項３のＦＴＰ型処理装置によれば、ユーザは、ＦＴＰ処理装置がアクセス要求を受けた時点で操作可能な操作を知ることができる。そのため、操作不可能な操作をユーザが指定することによる不具合が発生しない。
【００３２】
請求項４のＦＴＰ型処理装置によれば、ユーザは、ユーザは、操作状況を記した実体ファイルを得ることができるため、ＦＴＰ型処理装置の操作実行状況を知ることができる。
【００３３】
請求項５のＦＴＰ型処理装置によれば、ユーザは、操作状況を記した実体ファイルを得る為のリンクを知ることができるため、ユーザは、ＦＴＰ型処理装置の操作実行状況を知ることができる。
【００３４】
請求項６のＦＴＰ型処理装置によれば、キャッシュデータを削除するコマンドを含んだデータを送信するため、ユーザは、キャッシュを保持するタイプのブラウザを用いて前記ＦＴＰ型処理装置にアクセスした場合にも、ファイルを更新することができ、最新の状態のファイルを開くことができる。
【００３５】
請求項７のＦＴＰ型処理装置におけるＦＴＰサーバ手段によれば、ホスト側で次の段階の操作実行状況を反映した次回実体データへと自動的にリダイレクトされるので、ユーザは自らリンクへのアクセス指示を行う手間無く操作実行状況を知ることができる。
【００３６】
請求項８のＦＴＰ型処理装置によれば、キャッシュ機能が働いているホストであっても、必ず新たな実体データをリダイレクトして取得しに行くので、ユーザは、必ず次の操作実行状況を知ることができる。
【００３７】
請求項９のＦＴＰ型処理装置によれば、ユーザは、意図した接続部に接続された記憶メディアに対して容易に操作を行うことができる。
【００３８】
請求項１０のＦＴＰ型処理装置によれば、ユーザは、意図した種類の記憶メディアに対して容易に操作を行うことができる。
【００３９】
請求項１１のＦＴＰ型記憶装置によればユーザは、操作対応リンクによって、ＦＴＰ型処理装置に接続された記憶メディアのディレクトリ、ファイル構成を容易に把握／取得することができる。
【００４０】
請求項１２のＦＴＰ型処理装置によれば、ユーザは、操作対応リンクによって、記憶メディア内の実体データを得ることができる。
【００４１】
請求項１３のＦＴＰ型処理装置によれば、ユーザは、ＦＴＰ型処理装置に接続された記憶メディアに対してフォーマット操作を行うことができる。
【００４２】
請求項１４のＦＴＰ型処理装置によれば、ユーザは、ＦＴＰ型処理装置に接続された記憶メディアに対してファイル消去操作を行うことができる。
【００４３】
請求項１５のＦＴＰ型処理装置によれば、ユーザは、ＦＴＰ型処理装置に接続された記憶メディアに対して記憶メディア間のファイルコピー操作を行うことができる。
【００４４】
請求項１６によれば、ＦＴＰ型処理装置としてネットワークプリンタを含むことができる。
【００４５】
請求項１８のＦＴＰシステムによれば、ブラウザにアドレスを入力する必要がなくなるため、ユーザはホスト側からＦＴＰ型処理装置に接続された記憶メディアへの状態確認や操作を容易に行うことができる。
【発明を実施するための最良の形態】
【００４６】
以下、添付の図面を参照しつつ、本発明の実施形態について説明する。なお、以下に説明するＦＴＰシステムの構成は、本発明を具現化するための単なる一例であり、本発明の要旨を変更しない範囲で構成を適宜変更できることは当然である。図１は、上記ＦＴＰシステム１の概略構成を示すブロック図である。ＦＴＰシステム１は、プリンタ８０と、そのプリンタ８０をネットワークプリンタとして使用するホスト装置（パーソナルコンピュータ：以下、「ＰＣ］ともいう）３とがネットワーク４１０にて通信可能にされている。
【００４７】
なお、ネットワーク４１０は、図示したような有線のネットワークでもよいし、無線のネットワークでもよい。
【００４８】
図２は、プリンタ８０の外観構成を示すものである。前記プリンタ８０は、いわゆる多機能装置（ＭＦＰ：Multi Function Peripheral）であり、ＦＴＰ型処理装置をなすマルチリーダライタ２をプリンタに組み込んだプリンタ複合機として構成されている。具体的には、装置前面にメディア接続用スロット（以下、単に「スロット」ともいう）１６〜１９が露出するように配設されたマルチリーダライタ２とを一体的に備えてなり、プリンタ機能、スキャナ機能、コピー機能及びファクシミリ機能などを有する。
【００４９】
なお、メディア接続用スロットに代えて、あるいは併設して、ＵＳＢ接続部を備え、記憶メディアとしてのＵＳＢメモリが接続できる構成でもよいし、無線接続部を備え、記憶メディアとしての無線機能を持ったメモリーカードを接続できる構成でもよい。
【００５０】
プリンタ８０は、ＰＣ３とネットワーク接続されて、ＰＣ３とマルチリーダライタ２に挿入されたメモリーカードとの間でデータ通信を行うリーダライタ装置として機能する。また、ＰＣ３（図１）から送信された印刷データに基づき、画像や文書を所定の用紙に印刷する。また、マルチリーダライタ２によってメモリーカード（記憶メディア）から読み取られた印刷データに基づいても、画像や文書を所定の用紙に印刷する（直接印刷）。また、スキャナ部により読み取られた画像データをＰＣ３へ送信したり、スキャナ部で読み取った画像を、印刷部を用いてコピーしたりすることも可能である。
【００５１】
プリンタ８０のマルチリーダライタ２は、図２に示すように、メディア接続用スロット１６〜１９として、第１メモリーカード１１を挿入するための第１スロット１６と、第２メモリーカード１２を挿入するための第２スロット１７と、第３メモリーカード１３を挿入するための第３スロット１８と、第４メモリーカード１４を挿入するための第４スロット１９とを備えている。また、その他のメモリーカード（ｘＤピクチャーカード（登録商標、以下「ＸＤ」と略称する）など）のスロットを備える構成としてもよい。
【００５２】
図３は、上記プリンタ８０の電気的構成を示すブロック図である。プリンタ８０は、その内部に、各構成部を制御するＣＰＵ３４と、制御プログラムや種々のデータ等を格納するＲＯＭ３５（本実施形態では、フラッシュメモリ等の不揮発性メモリにて構成している）と、ＣＰＵ３４による演算の作業領域となるＲＡＭ３７と、がバス３３を介して相互にデータ転送が可能なように接続されている。また、バス３３には、フラッシュメモリ制御用ＬＳＩを介して各スロット１６〜１９が接続されている。これらスロット１６〜１９に着脱可能に接続される各第１〜第４メモリーカード１１〜１４は、例えば、ＣＦ、ＳＭ、ＭＳ、ＳＤなど、データの書込み、書き換え、消去、読出しなどが可能なフラッシュメモリを搭載したカード型記憶メディアである。なお、上記のスロット１６〜１９は、いずれかの種類のメモリーカードを択一的に接続可能である。
【００５３】
バス３３には、印刷部８２、スキャナ部１３２、電話線Ｉ／Ｆ１３３、ＬＣＤ、キーボード及びカーソル移動キーなどからなる操作・表示部９１が繋がれている。さらに、バス３３には、ＬＡＮＩ／Ｆ２４が接続されている。ＬＡＮＩ／Ｆ２４は、第一のネットワークを介してホスト装置であるＰＣ３と接続している。複数のＰＣ３及びプリンタ８０はＴＣＰ／ＩＰネットワーク４１０にて相互接続されている（図１参照）。
【００５４】
ＲＯＭ３５には、マルチリーダライタ２の動作制御プログラム及び、印刷制御、スキャン制御、ＦＡＸ通信制御などを司る各々の制御プログラムが格納され、ＣＰＵ３４は、これらプログラムを、ＲＡＭ３７を実行エリアとして実行することで、プリンタ複合機としての総合的な動作制御を行なう。
【００５５】
ＲＯＭ３５にはさらに、ＦＴＰサーバプログラムが格納されている。また、ＴＣＰ／ＩＰネットワーク４１０上にてプリンタ８０が特定されるためのＩＰアドレス及びサブネットマスクもＲＯＭ３５に記憶されている。さらに、前記記憶メディアの状態を送信する状態データ送信プログラムと、前記記憶メディアを単位とした操作に対応付けられた操作対応リンクを含んだデータを前記ホスト装置に送信する、操作対応データ送信プログラムもＲＯＭ３５に記憶されている。
【００５６】
メディア接続用スロット１６〜１９には、メモリーカード（記憶メディア）１１〜１４が接続される。また、ＰＣ３は、ハードディスクなどからなるローカルディスク３Ｌと、液晶ディスプレイなどからなるモニタ３Ｍとを備え、ローカルディスク３Ｌには、ＦＴＰクライアントプログラムが組み込まれたブラウザがインストールされている。
【００５７】
プリンタ８０側では、前述した各々の制御プログラムと、状態反映ファイル名決定プログラム、及びＦＴＰサーバプログラムが、ＣＰＵ３４で実行されることにより、ＦＴＰサーバ手段、操作対応ファイル名決定手段、操作実行手段、がシステム上で実現されている。
【００５８】
以下、通信システム１におけるデータシーケンスを、図４のシーケンス図を用いて説明する。このシーケンス図は、ＰＣ３側でユーザがＦＴＰクライアント機能が組み込まれたブラウザを立ち上げ、プリンタ８０のノード名「ftp://brn_600789」を入力し、アクセスを開始させたときに始まる。なお、ＰＣ３側にノード名「ftp://brn_600789」へのショートカットを用意しておき、そのショートカットを操作することで、ブラウザが起動後そのままプリンタ８０へアクセスするよう構成していてもよい。プリンタ８０のノード名「ftp://brn_600789」は適宜変更してもよい。
【００５９】
まず、ＰＣ３（ＦＴＰクライアント）はプリンタ８０（ＦＴＰサーバ）にアクセスするために、ＦＴＰに割り当てられた２１番ポートにてコネクトする（Ｊ１）。プリンタ８０はＰＣ３に対しユーザ名要求レスポンスを送信する（Ｊ２）。ＰＣ３はこれを受けてプリンタ８０にＦＴＰサーバにログインするためのユーザ名を送信する（Ｊ３）。
【００６０】
次に、プリンタ８０からＰＣ３にパスワード要求レスポンスを送信する（Ｊ４）。そして、そのパスワード要求レスポンスを受けたＰＣ３からプリンタ８０に、前期ホスト装置にて入力されたパスワードを送信する（Ｊ５）。プリンタ８０では、受信したパスワードとユーザ名とに基づいてログインユーザを認証し、認証受理の場合にそのログインユーザのＦＴＰサーバ（プリンタ８０）へのログインを許可する応答をＰＣ３へ返信する（Ｊ６）。
【００６１】
ＦＴＰサーバへのログインが許可されたＰＣ３は、続いて、ルートディレクトリへのアクセスを要求するコマンド「cd/ (change directory root)」を発行する（Ｊ７）。
このコマンドを受信したプリンタ８０は、ルートディレクトリへアクセスし（カレントディレクトリをルートディレクトリに変更することを試み）、成功したことを示すコードをＰＣ３へ返信する（Ｊ８）。
【００６２】
なお、ルートディレクトリへのアクセスに失敗すれば、前述したようにレスポンスコード「５５０」などが返信されることになる。この実施形態では、記憶メディアが未接続の状態でも、ルートディレクトリへのアクセスが成功したことを示すコードをＰＣ３へ返信するように工夫している。
【００６３】
ルートディレクトリへのアクセスが成功したことを示すコードを受信したＰＣ３は、このルートディレクトリに対するlistコマンドを発行する（Ｊ９）。listコマンドを受信したプリンタ８０は、メディア接続部の状態や、操作対応ファイル名決定プログラムによって決定された、操作対応ファイル名を有したファイルを含むディレクトリが、ルートディレクトリに存在している、との情報を送信する（Ｊ１０）。
【００６４】
以下、フローチャート等を参照して、本発明の処理を説明する。
【００６５】
図２３はインストーラによるショートカットの作成を示したフローチャートである。プリンタ８０に対応するインストーラは、プリンタドライバなどのソフトウェアのインストールと同時に、ＦＴＰサーバ上のIndex.htmへのショートカットを作成する（Ｓ１８００）。ショートカットを作成することにより、ユーザは、ＦＴＰサーバに接続する際に必要となるＩＰアドレスやパスワード等の入力を接続の度に行う煩雑さを解消することができる。
【００６６】
図２４はショートカットを起動したときのＰＣ３の処理を示したフローチャートである。ショートカットにはＦＴＰサーバ上のIndex.htm等のＵＲＬが書かれており、ショートカットに書かれたＵＲＬを引数に与えてブラウザを起動することでプリンタ８０に搭載されたＦＴＰサーバに接続する。
【００６７】
図５は、プリンタ８０におけるＣＰＵ３４がＦＴＰサーバプログラムに従って実行するＦＴＰサーバ処理の動作フローである。ＦＴＰサーバ処理は、プリンタ８０の起動に伴って動作が開始される。
【００６８】
図５で示すＦＴＰサーバ処理では、まず、仮想ディレクトリツリーの初期化処理を実行し、ＦＴＰサーバ処理でＣＰＵが管理するディレクトリツリーをＲＡＭなどのメモリ上に形成する（Ｓ１００）。続いて、ＦＴＰポートのオープンなど、ＦＴＰサーバとしてネットワーク機器と接続するための準備を行う（Ｓ１１０）。続いてＦＴＰサーバとして、ファイルへのアクセス要求の受信、要求への応答などの定常動作処理を実行する（Ｓ１２０）。以降、プリンタ８０の電源が切断されたり、リセットなどが行われるまで、定常動作し続ける。
【００６９】
図６は、Ｓ１１０における仮想ディレクトリツリーの初期化処理を詳細に示したフローチャートである。まず、ＣＰＵ３４は、仮想ディレクトリツリーの構成を管理するために必要なメモリ、ＦＴＰサーバシステムを管理するために必要なメモリをＲＡＭなどに確保する（Ｓ２００）。
【００７０】
続いて、確保したメモリ上の仮想ディレクトリツリーに、ＦＴＰサーバのルートディレクトリ用の管理領域を確保する（Ｓ２１０）。続いて、確保したルートディレクトリ用の管理領域を初期化する。ここでは、ディレクトリ名称がないこと、ディレクトリの実体は、先に述べたシステム領域に存在すること、ディレクトリ内に格納されたファイルのファイル名はない（すなわち、ディレクトリ内にファイルがない）こと、サブディレクトリはない、という属性を管理領域に設定する（Ｓ２２０）。
【００７１】
続いて、先に述べたルートディレクトリがカレントディレクトリであると認識し（Ｓ２３０）、仮想ディレクトリツリーの初期化処理を終了する。このように認識しておくことで、ＦＴＰサーバにアクセスしてきたＦＴＰクライアント（以下、クライアントとも呼ぶ）が、「cd /」することなくlistコマンドを送信してきた場合でも、プリンタ８０はカレントディレクトリであるルートディレクトリ内に存在するファイルのファイル名およびサブディレクトリ名を返信するようになる。
【００７２】
なお、図１５（ａ）は、仮想ディレクトリツリーの初期化処理によって構成される仮想ディレクトリツリーを示す概念図である。
【００７３】
図７は、図５の（Ｓ１２０）における定常動作処理を詳細に示したフローチャートである。まず、ＦＴＰサーバとしての初期化が終了すると、ＣＰＵ３４はクライアントからのログイン（図４：Ｊ１参照）を待つログインウェイト状態になる（Ｓ３００）。
【００７４】
続いて、クライアントからのログインリクエストがなければ（Ｓ３１０：ＮＯ）、再びログインウェイト状態になる。クライアントからのログインリクエストがあれば（Ｓ３１０：ＹＥＳ）、ログインシーケンスを実行し（Ｓ３２０）（図４：Ｊ２〜Ｊ５参照）、ログインシーケンスが失敗ならば（Ｓ３３０：ＮＯ）、再びログインウェイト状態になる。
【００７５】
ログインシーケンスが成功ならば（Ｓ３３０：ＹＥＳ）、クライアントにログイン成功を示すコードを送信し（図４：Ｊ６参照）、クライアントからのＦＴＰコマンドを待つ、コマンドウェイト状態になる（Ｓ３４０）。
【００７６】
クライアントから「cd」コマンドがあれば（Ｓ３５０：ＹＥＳ）、コマンドに応じたcd処理を実行する（Ｓ３６０）。
【００７７】
クライアントから「list」コマンドがあれば（Ｓ３７０：ＹＥＳ）、コマンドに応じたlist処理を実行する（Ｓ３８０）。
【００７８】
クライアントから「get」コマンドがあれば（Ｓ３９０：ＹＥＳ）、コマンドに応じたget処理を実行する（Ｓ４００）。
【００７９】
クライアントから「put」コマンドがあれば（Ｓ４１０：ＹＥＳ）、コマンドに応じたput処理を実行する（Ｓ４２０）。
【００８０】
クライアントからのその他のコマンドがあれば、その他のコマンドに応じた処理を実行する（Ｓ４３０）。
【００８１】
それぞれの処理を実行するか、クライアントからコマンドがなければ、プリンタ８０のシャットダウン処理などで、プログラムを終了する指示がないか判断する（Ｓ４４０）。プログラムを終了する指示がなければ（Ｓ４４０：ＮＯ）、再びコマンドウェイト状態になり、プログラムを終了する指示があれば（Ｓ４４０：ＹＥＳ）、ＦＴＰサーバとしての機能を終了するシャットダウン処理を実行し（Ｓ４５０）、定常動作を終了する。
【００８２】
図８は、図７のＳ３６０におけるcd処理を詳細に示したフローチャートである。cd処理では、cdコマンドにより指定されたディレクトリを、カレントディレクトリとして認識する、換言すれば、カレントディレクトリを切り替える処理を行う。
【００８３】
まず、ＣＰＵ３４は、現在の装置状態に基づいて、仮想ファイル情報を作成する（Ｓ５００）。続いて、対象とするディレクトリをコマンドが指定していれば（Ｓ５１０：ＹＥＳ）、クライアントからコマンドによって指定されたディレクトリが、仮想ディレクトリツリーの中に存在するか、あるいは、実体ディレクトリの中に存在するかを判断する（Ｓ５２０）。指定されたディレクトリが、仮想ディレクトリツリーの中に存在する、または実体ディレクトリの中に存在する場合（Ｓ５２０：ＹＥＳ）は、指定されたディレクトリをカレントディレクトリであると認識し（Ｓ５３０）、コマンドが成功したことを示すＯＫコードをクライアントに送信し（Ｓ５４０）、cd処理を終了する。
【００８４】
なお、ＦＴＰサーバ処理においては、カレントディレクトリが認識しなおされない限りは、cdコマンドで指定されたディレクトリがカレントディレクトリとして認識され続けることになる。
【００８５】
指定されたディレクトリが、仮想ディレクトリツリーの中に存在せず、かつ、実体ディレクトリの中に存在しない場合（Ｓ５２０：ＮＯ）、指定されたディレクトリをカレントディレクトリであると認識せず、コマンドが失敗したことを示すＮＧコードをクライアントに送信し（Ｓ５５０）、cd処理を終了する。
【００８６】
一方、Ｓ５１０で、対象とするディレクトリをコマンドが指定していなければ（Ｓ５１０：ＮＯ）、コマンドは、カレントディレクトリを指定しているものであると認識し（Ｓ５６０）、Ｓ５３０以降の処理を実行する。
【００８７】
図１１は、図９のＳ３８０におけるlist処理を詳細に示したフローチャートである。list処理では、listコマンドにより指定されたディレクトリに存在するファイルのファイル名およびディレクトリのディレクトリ名を、クライアントに返信する、換言すれば、クライアントが指定したディレクトリ内のファイルおよびディレクトリのリストをクライアントに認識させる処理を行う。
【００８８】
まず、ＣＰＵ３４は、現在の装置状態に基づいて、仮想ファイル情報を作成する（Ｓ６００）。続いて、対象とするディレクトリをコマンドが指定していれば（Ｓ６１０：ＹＥＳ）、クライアントからコマンドによって指定されたディレクトリが、仮想ディレクトリツリーの中に存在するか、あるいは、実体ディレクトリの中に存在するかを判断する（Ｓ６２０）。
【００８９】
続いて、ＣＰＵ３４は、指定されたディレクトリが、仮想ディレクトリツリーの中に存在するか、あるいは、実体ディレクトリの中に存在する場合（Ｓ６２０：ＹＥＳ）、さらに、指定されたディレクトリの実体がシステム領域内であるか否かを判断する（Ｓ６３０）。指定されたディレクトリの実体がシステム領域内ならば（Ｓ６３０：ＹＥＳ）、指定されたディレクトリ用の管理領域に記憶されたファイル名およびサブディレクトリ名をクライアントに送信し（Ｓ６４０）、list処理を終了する。
【００９０】
指定されたディレクトリの実体がシステム領域内でない、換言すれば、記憶メディアなどの記憶装置内にあるならば（Ｓ６３０：ＮＯ）、指定されたディレクトリに記憶されたファイル名およびサブディレクトリ名をクライアントに送信し（Ｓ６５０）、list処理を終了する。すなわち、記憶メディアなどに実際に記憶されているファイルおよびディレクトリのファイル名およびディレクトリ名を送信する。
【００９１】
指定されたディレクトリが、仮想ディレクトリツリーの中に存在せず、かつ、実体ディレクトリの中に存在しない場合（Ｓ６２０：ＮＯ）、コマンドが失敗したことを示すＮＧコードをクライアントに送信し（Ｓ６６０）、list処理を終了する。
【００９２】
一方、Ｓ６１０で、対象とするディレクトリをコマンドが指定していなければ（Ｓ６１０：ＮＯ）、コマンドは、カレントディレクトリを指定しているものであると認識し（Ｓ６７０）、Ｓ６３０以降の処理を実行する。
【００９３】
図１０は、図７のＳ４００におけるget処理を詳細に示したフローチャートである。get処理では、getコマンドにより指定されたファイルの実体データを、クライアントに返信する、換言すれば、クライアントが指定したファイルの実体データをクライアントに取得させる処理を行う。まず、ＣＰＵ３４は、現在の装置状態に基づいて、仮想ファイル情報を作成する（Ｓ７００）。
【００９４】
続いて、対象とするファイルをコマンドが指定しているかどうかを判断する（Ｓ７１０）。対象とするファイルが指定されていれば、どこのディレクトリ内のファイルを対象としているか（対象とするディレクトリはどこか）をコマンドが指定しているかどうかを判断する（Ｓ７２０）。
【００９５】
対象とするディレクトリをコマンドが指定していれば（Ｓ７２０：ＹＥＳ）、クライアントからコマンドによって指定されたディレクトリが、仮想ディレクトリツリーの中に存在するか、あるいは、実体ディレクトリの中に存在するかを判断する（Ｓ７３０）。
【００９６】
指定されたディレクトリが、仮想ディレクトリツリーの中に存在するか、あるいは、実体ディレクトリの中に存在する場合（Ｓ７３０：ＹＥＳ）、さらに、指定されたディレクトリの実体がシステム領域内であるか否かを判断する（Ｓ７４０）。指定されたディレクトリの実体がシステム領域内ならば（Ｓ７４０：ＹＥＳ）、指定されたディレクトリ用の管理領域に記憶された情報に基づいて、メモリーカードの操作処理を行う（Ｓ７５０）。ファイルの実体データを取得できたならば（Ｓ７６０：ＹＥＳ）、クライアントに実体データを送信し（Ｓ７７０）、get処理を終了する。
【００９７】
ファイルの実体データを取得できなかったならば（Ｓ７６０：ＮＯ）、コマンドが失敗したことを示すＮＧコードをクライアントに送信し（Ｓ７８０）、get処理を終了する。
【００９８】
指定されたディレクトリの実体がシステム領域内でない、換言すれば、記憶メディアなどの記憶装置内であるならば（Ｓ７４０：ＮＯ）、指定されたディレクトリに記憶されたファイルの実体データを取得し（Ｓ７９０）、Ｓ７６０以降の処理を実行する。すなわち、記憶メディアなどに実際に記憶されているファイルの実体データを送信する。
【００９９】
指定されたディレクトリが、仮想ディレクトリツリーの中に存在せず、かつ、実体ディレクトリの中に存在しない場合（Ｓ７３０：ＮＯ）、コマンドが失敗したことを示すＮＧコードをクライアントに送信し（Ｓ７８０）、get処理を終了する。
【０１００】
一方、Ｓ７２０で、対象とするディレクトリをコマンドが指定していなければ（Ｓ７２０：ＮＯ）、コマンドは、カレントディレクトリ内のファイルを対象として指定しているものであると認識し（Ｓ８００）、Ｓ７４０以降の処理を実行する。また、対象とするファイルをコマンドが指定していなければ（Ｓ７１０：ＮＯ）、コマンドが失敗したことを示すＮＧコードをクライアントに送信し（Ｓ７８０）、get処理を終了する。
【０１０１】
図１１は、図９のＳ４２０におけるput処理を詳細に示したフローチャートである。put処理では、クライアントからputコマンドにより送信されたファイルの実体データを、ＦＴＰサーバ内の記憶装置に記憶する、換言すれば、クライアントが指定したファイルの実体データをＦＴＰサーバに書き込ませる処理を行う。
【０１０２】
まず、ＣＰＵ３４は、現在の装置状態に基づいて、仮想ファイル情報を作成する（Ｓ９００）。続いて、ファイルを記憶するディレクトリ（対象とするディレクトリ）をコマンドが指定しているかどうかを判断する（Ｓ９１０）。対象とするディレクトリをコマンドが指定していれば（Ｓ９１０：ＹＥＳ）、クライアントからコマンドによって指定されたディレクトリが、仮想ディレクトリツリーの中に存在するか、あるいは、実体ディレクトリの中に存在するかを判断する（Ｓ９２０）。指定されたディレクトリが、仮想ディレクトリツリーの中に存在するか、あるいは、実体ディレクトリの中に存在する場合（Ｓ９２０：ＹＥＳ）、さらに、指定されたディレクトリの実体がシステム領域内であるか否かを判断する（Ｓ９３０）。指定されたディレクトリの実体がシステム領域内ならば（Ｓ９３０：ＹＥＳ）、コマンドが失敗したことを示すＮＧコードをクライアントに送信し（Ｓ９６０）、put処理を終了する。すなわち、ＦＴＰクライアントにＦＴＰサーバ側の状態を知らせる情報の内容と接続されている記憶メディアに対してＦＴＰクライアントが行うことのできる操作を知らせ、記憶メディアに対して操作させるためのhtmlデータのファイル名をクライアントに送信するために設けられた、仮想的な特別なディレクトリへのアクセスができないようにする。これにより、ＰＣ３のユーザがファイルの実体データを書き込んだと思ったにもかかわらず、ディレクトリが仮想的なために書き込まれていなかった、という事態を防ぐことができる。
【０１０３】
指定されたディレクトリの実体がシステム領域内でない、換言すれば、記憶メディアなどの記憶装置内であるならば（Ｓ９３０：ＮＯ）、指定されたディレクトリに実体データを記憶させ（Ｓ９４０）、コマンドが成功したことを示すＯＫコードをクライアントに送信し（Ｓ９５０）、put処理を終了する。すなわち、記憶メディアなどに実際に実体データを記憶する。一方、指定されたディレクトリが、仮想ディレクトリツリーの中に存在せず、かつ、実体ディレクトリの中に存在しない場合（Ｓ９２０：ＮＯ）、コマンドが失敗したことを示すＮＧコードをクライアントに送信し（Ｓ９６０）、put処理を終了する。
【０１０４】
一方、対象とするディレクトリをコマンドが指定していなければ（Ｓ９１０：ＮＯ）、コマンドは、カレントディレクトリ内のファイルを対象として指定しているものであると認識し（Ｓ９７０）、Ｓ９３０以降の処理を実行する。
【０１０５】
図１２Ａ、図１２Ｂは、図８、図９、図１０、図１１における仮想ファイル情報の作成処理を詳細に示したフローチャートである。
【０１０６】
仮想ファイル情報の作成処理では、ＦＴＰクライアントが閲覧するIndex.htmの作成とMain.htmの内容を決定する、換言すれば、ＦＴＰクライアントにＦＴＰサーバ側の状態を知らせる情報の内容と接続されている記憶メディアに対してＦＴＰクライアントが行うことのできる操作を決定する処理を行う。
【０１０７】
また、ここで、プリンタ８０の状態や、メディア接続部に接続された記憶メディアの状態を確認することから、メディア接続部に別の記憶メディアが接続されなおされていても、新たな記憶メディアの状態を反映できることから、操作対応ファイル名が接続されているメモリーカードに対応するため、誤った操作を選択することが少なくなる。
【０１０８】
ここで、処理の説明に戻る。
【０１０９】
ＣＰＵ３４は、まず、Index.htmとMain.htmを作成する。
【０１１０】
Index.htmは、ftp://brn_600789/Main.htmへの転送コマンド（リダイレクト）が記載されている。これによって、Index.htmにアクセスすることで、Main.htmへと移動することが可能となる。
【０１１１】
また、Index.htmには、ftp://brn_600789/Main.htmのキャッシュ削除コマンドも記述されている。ブラウザの中には一度アクセスしたhtmlファイルをキャッシュとして保持するものがある。こうしたブラウザを利用する場合、以前にアクセスしたhtmlファイルがキャッシュとして残ってしまうため、更新されたhtmlファイルが表示されない場合がある。更新したhtmlファイルを表示するためにはキャッシュ削除を削除する必要があるため、キャッシュ削除コマンドを用いる。生成されたIndex.htmファイルの表示例を図１３に示す。
【０１１２】
また、生成された段階では、Main.htmの内容は空であり、以降の処理に従ってＦＴＰサーバが動的に内容を記述する。
【０１１３】
続いて、ＣＰＵ３４は、プリンタ８０の状態をチェックする（Ｓ１０２０）。プリンタ８０が備えるメディア接続部の数や、メディア接続部に接続可能な記憶メディアの種類に関する情報も、この時取得する。
【０１１４】
続いて、ＣＰＵ３４は、変数Ｎに０を代入する（Ｓ１０３０）。このＮは、メディア接続部全てについての情報を確認するためにプログラム内で使われる変数である。
【０１１５】
続いて、ＣＰＵ３４は、Ｎをメディア接続部の数と比較する（Ｓ１０４０）。Ｎがメディア接続部の数より少なければ（Ｓ１０４０：ＮＯ）、ＣＰＵ３４は、Ｎ番目のメディア接続部（以降、第Ｎスロットとも称する）に記憶メディアが接続されているかどうか確認する（Ｓ１１１０）。
【０１１６】
第Ｎスロットに記憶メディアが接続されていれば（Ｓ１１１０：ＹＥＳ）、続いて、記憶メディアがフォーマット済みであるかどうかを確認する（Ｓ１１２０）。
【０１１７】
第Ｎスロットの記憶メディアがフォーマット済みであれば（Ｓ１１２０：ＹＥＳ）、続いて、ＣＰＵ３４は、第Ｎスロットに接続された記憶メディアが開ける状態にあるかどうかを確認する（Ｓ１１３０）。
【０１１８】
第Ｎスロットに接続された記憶メディアが開ける状態にあるならば（Ｓ１１３０：）、続いて、ＣＰＵ３４は、第Ｎスロットに接続された記憶メディアの総記憶容量と残り記憶容量を確認する（Ｓ１２００）。
【０１１９】
続いて、ＣＰＵ３４は、Main.htmに書き出すスロットの状態を決定する（Ｓ１１５０）。書き出す状態は、対応カード名、総記憶容量、残り記憶容量、フォーマットを開始するためのリンク、カードを開くためのリンクとなる。
【０１２０】
続いて、再びＳ１０４０に戻り、プリンタ８０のメディア接続部全てについて確認が終了する（Ｓ１０４０：ＹＥＳ）までＳ１０４０〜Ｓ１１５０における一連の処理を繰り返す。
【０１２１】
プリンタ８０のメディア接続部全てについて確認が終了したならば（Ｓ１０４０：ＹＥＳ）、全てのメディア接続部に関する状態を確認したことになるため、繰り返しから抜ける。
【０１２２】
繰り返しから抜けた後、まずＣＰＵ３４は、スロットの数を確認する（Ｓ１２０５）。認識したスロットが１つだけの場合（Ｓ１２０５：ＹＥＳ）、スロットの状態にカードを開くためのリンクが存在するかどうかを確認する（Ｓ１２１０）。
【０１２３】
スロットの状態にカードを開くためのリンクが存在した場合、（Ｓ１２１０：ＹＥＳ）ＣＰＵ３４は、カードを開くためのリンクを用いてMain.htmに転送コマンドを書き出す（Ｓ１２１５）。スロットの状態にカードを開くためのリンクが存在した場合の画面表示例を図１４Ａ（ａ−１）、図１４Ａ（ａ−２）に示す。図１４Ａ（ａ−１）が、Main.htmの例であり、図１４Ａ（ａ−２）がMain.htmに書かれた転送コマンドに従ってブラウザがカードを開いた状況を示している。
【０１２４】
続いて、ＣＰＵ３４は、転送コマンドが示す転送先のキャッシュ削除コマンドをMain.htmに書き出す（Ｓ１２２０）。
【０１２５】
続いて、ＣＰＵ３４は、ルートディレクトリ用の管理領域の情報を更新する（Ｓ１２７０）。具体的には生成したIndex.htm、Main.htmをルートディレクトリに追加する。
【０１２６】
ＣＰＵ３４は、管理領域の情報を更新した後、仮想ファイル情報の作成処理を終了する。
【０１２７】
また、スロットの状態にカードを開くためのリンクが存在しない場合、（Ｓ１２１０：ＮＯ）ＣＰＵ３４は、Main.htmにスロットの状態を書き出した（Ｓ１２６５）後、ルートディレクトリ用の管理領域の情報を更新して（Ｓ１２７０）、仮想ファイル情報の作成処理を終了する。スロットの状態にカードを開くためのリンクが存在しない場合として、メモリーカードが未フォーマットである、もしくは接続されていないなどが考えられる。画面表示例を図１４Ｂ（ｂ−１）、図１４Ｂ（ｂ−２）に示す。
【０１２８】
一方、認識したスロットが複数の場合（Ｓ１２０５：ＮＯ）、ＣＰＵ３４は準備した変数Ｘに０を代入する（Ｓ１２２５）。
【０１２９】
続いて、ＣＰＵ３４はＸとＮを比較する。ＸがＮより小さい場合（Ｓ１２３０：ＮＯ）、スロットの状態にカードを開くためのリンクが存在するかどうかを確認する（Ｓ１２３５）。
【０１３０】
スロットの状態にカードを開くためのリンクが存在した場合、（Ｓ１２３５：ＹＥＳ）ＣＰＵ３４は、カードを開くためのリンクを用いてCardOpenX.htm（Xには変数Xの値が入る）に転送コマンドを書き出す（Ｓ１２１５）。
【０１３１】
続いて、ＣＰＵ３４は、転送コマンドが示す転送先のキャッシュ削除コマンドをCardOpenX.htmに書き出す（Ｓ１２４５）。
【０１３２】
続いて、ＣＰＵ３４は、Main.htmにスロットの状態を書き出した（Ｓ１２６５）後、ルートディレクトリ用の管理領域の情報を更新して（Ｓ１２７０）、仮想ファイル情報の作成処理を終了する。
認識したスロットが複数の場合の表示例を図１４Ｃ（ｃ−１）〜図１４Ｃ（ｃ−３）に示す。図１４Ｃ（ｃ−１）の「メモリーカードを開く」がブラウザ上でクリックされると、カードにアクセスするための転送コマンドが書かれたページが暫く表示され、続いてカードの内容がブラウザに表示される（図１４Ｃ（ｃ−２）、図１４Ｃ（ｃ−３）を参照）。
【０１３３】
図１５（ｂ）は仮想ファイル情報の作成処理実行後の仮想ディレクトリツリーを示す概念図である。ルートディレクトリの中にはファイルとしてIndex.htm、Main.htmが含まれており、各メディア接続部がディレクトリとして扱われていることがわかる。
【０１３４】
図１６（ａ）は仮想ファイル情報の作成処理実行後のシステム領域を示す概念図である。システム領域の中にファイルとしてIndex.htm、Main.htm、CardOpen１.htmが含まれていることがわかる。
【０１３５】
図１７は図１０のＳ７５０におけるメモリーカード操作処理を示したフローチャートである。メモリーカード操作処理では指定されたファイルに従ってメモリーカードの操作（フォーマット、メモリーカード内のファイルの削除等）を行う。
【０１３６】
指定されたファイルがIndex.htmであった場合（Ｓ１３００：ＹＥＳ）、ＣＰＵ３４はIndex.htmを取得し（Ｓ１３００）、メモリーカード操作処理を終了する。Index.htm取得処理に限らず、メモリーカード操作処理で取得されたファイルの実体は、Ｓ７７０にてクライアントに送信される。
【０１３７】
指定されたファイルがFormat000.htmであった場合（Ｓ１３２０：ＹＥＳ）、ＣＰＵ３４はFormat000.htmが要求された場合のＦＴＰサーバの処理を実行し（Ｓ１３３０）、Format000.htmを取得後（Ｓ１３４０）、メモリーカード操作処理を終了する。Format000.htmの表示例を図２０に示す。
【０１３８】
指定されたファイルがFormatN.htm（Nには変数Nの値が入る。ここで用いられる変数Nは仮想ファイル情報の作成で用いられた変数Ｎとは異なる変数である。）であった場合（Ｓ１３５０：ＹＥＳ）、ＣＰＵ３４はFormatN.htmが要求された場合のＦＴＰサーバの処理を実行し（Ｓ１３６０）、FormatN.htmを取得後（Ｓ１３７０）、メモリーカード操作処理を終了する。
【０１３９】
指定されたファイルがMain.htmであった場合（Ｓ１３８０：ＹＥＳ）、ＣＰＵ３４はMain.htmを取得し（Ｓ１３９０）、メモリーカード操作処理を終了する。
【０１４０】
指定されたファイルがIndex.htm、FormatN.htm、Main.htmのいずれにも当てはまらなかった場合（Ｓ１３８０：ＮＯ）、ＣＰＵ３４は指定のディレクトリ用の管理領域に記憶された情報に基づいてファイルの実体を取得し（Ｓ１４００）、メモリーカード操作処理を終了する。
【０１４１】
図１８は図１７のＳ１３３０におけるFormat000.htmが要求された場合のＦＴＰサーバの処理を詳細に示したフローチャートである。まず、ＣＰＵ３４は、メモリーカードのフォーマットを開始する（Ｓ１５００）。
【０１４２】
続いて、ＣＰＵ３４は、Format000.htmの内容を決定する（Ｓ１５１０）。Format000.htmの内容として決定されるのは、フォーマットの進行状況（０％）を示すメッセージと、FormatN.htmを表示するための転送コマンドと、FormatN.htmを更新するためのキャッシュ削除コマンドである。
【０１４３】
続いて、ＣＰＵ３４は、Format000.htmを作成し（Ｓ１５２０）、フォーマットの進行度を示す変数Ｎを１に設定（Ｓ１５３０）した後、Format000.htmが要求された場合のＦＴＰサーバの処理を終了する。
【０１４４】
図１９は図１７のＳ１３６０におけるFormatN.htmが要求された場合のＦＴＰサーバの処理を詳細に示したフローチャートである。NはＳ１５３０で設定された変数であり、フォーマットの進行によって変化する。まず、ＣＰＵ３４は、メモリーカードのフォーマットを開始する（Ｓ１５００）。
【０１４５】
続いて、ＣＰＵ３４は、確認したメモリーカードがフォーマット済みもしくはフォーマットが終了した場合（Ｓ１６１０：ＹＥＳ）、FormatN.htmの内容を決定する（Ｓ１６２０）。FormatN.htmの内容として決定されるのは、フォーマットの進行状況（１００％）を示すメッセージである。続いて、ＣＰＵ３４は、FormatN.htm を作成し（Ｓ１６３０）、FormatN.htmが要求された場合のＦＴＰサーバの処理を終了する。
【０１４６】
一方、フォーマットが終了していない場合（Ｓ１６１０：ＮＯ）、ＣＰＵ３４は、FormatN.htmを作成し（Ｓ１６３０）、フォーマットの進行度を示す変数Ｎを１に設定した後、Ｓ１６１０の処理に戻り、フォーマットが終了するまで繰り返す。FormatN.htmの表示例を図２１（ａ）〜（ｃ）に示す。変数Ｎの増加とともに進行度が増加していくのがわかる。FormatN.htm転送するタイミングは適宜決定してもよい。
【０１４７】
図１６（ｂ）はFormat000.htm〜FormatN.htmが要求された場合のＦＴＰサーバの処理実行後のシステム領域を示す概念図である。システム領域の中にファイルとしてFormat000.htm、FormatN.htm等が含まれていることがわかる。図には記されていないが、システム領域には、Format000.htmからFormat001.htm、Format002.htm、Format003.htm…と順次生成される。
【０１４８】
図２２はメモリーカード接続部（スロット）の監視処理を示したフローチャートである。スロットの監視はＦＴＰサーバとは独立した処理であるが、常にスロットの状態をＦＴＰサーバに伝達している。
【０１４９】
まず、ＣＰＵ３４はスロットの増減または、カードの接続／離脱を確認する（Ｓ１７００）。スロットの増減や、カードの接続／離脱が確認された場合（Ｓ１７００：ＹＥＳ）、ＣＰＵ３４はカレントディレクトリの実体ディレクトリが存在するかどうかの確認を行う（Ｓ１７１０）。カードの接続／離脱が確認されなかった場合（Ｓ１７００：ＮＯ）、ＣＰＵ３４はスロットの増減や、カードの接続／離脱が確認されるまで、待つこととなる。
【０１５０】
カレントディレクトリの実体ディレクトリが存在した場合、（Ｓ１７１０：ＹＥＳ）ＣＰＵ３４は、Ｓ１７００の処理に戻る。
【０１５１】
一方、カレントディレクトリの実体ディレクトリが存在しなかった場合、（Ｓ１７１０：ＮＯ）ＣＰＵ３４は、ルートディレクトリをカレントディレクトリであると認識して、Ｓ１７００の処理に戻る。
【０１５２】
図２５はＰＣ３におけるブラウザの定常動作の処理を示したフローチャートである。まず、ＰＣ３はブラウザの起動処理（Ｓ２０００）を行う。
【０１５３】
続いて、ブラウザはファイルへのリンクがクリックされたかどうか確認する（Ｓ２０１０）。クリックされたことが確認されれば、ブラウザは、ファイルへのリンクをクリックされたときのブラウザの処理を実行し（Ｓ２０７０）、ブラウザの終了指示があるかどうかを確認する（Ｓ２０５０）。
【０１５４】
ブラウザの終了指示があった場合（Ｓ２０５０：ＹＥＳ）、ブラウザの終了処理（Ｓ２０６０）を実行し、ブラウザの定常動作を終了する。
【０１５５】
一方、ファイルへのリンクがクリックされなかった場合（Ｓ２０１０：ＮＯ）、ブラウザは、ディレクトリへのリンクがクリックされたかどうかを確認する（Ｓ２０２０）。クリックされたことが確認されれば（Ｓ２０２０：ＹＥＳ）、ブラウザは、ディレクトリへのリンクをクリックされたときのブラウザの処理を実行し、Ｓ２０５０の処理に移る。
【０１５６】
一方、ディレクトリへのリンクがクリックされなかった場合（Ｓ２０２０：ＮＯ）、ブラウザは、表示しているhtmlファイルに転送コマンドが書かれているかどうかの確認を行う（Ｓ２０３０）。転送コマンドが書かれていることが確認されれば（Ｓ２０３０：ＹＥＳ）、ブラウザは、転送処理を実行し（Ｓ２０９０）、Ｓ２０５０の処理に移る。
【０１５７】
図２６は図２５のＳ２０００におけるブラウザの起動処理を示したフローチャートである。まず、ブラウザは、引数にファイルを指定されたかどうかの判定を行う（Ｓ２１００）。引数にファイルを指定された場合（Ｓ２１００：ＹＥＳ）、ブラウザは、ファイルへのリンクをクリックされたときのブラウザの処理を実行し、起動処理を終了する。
【０１５８】
引数にファイルを指定されなかった場合（Ｓ２１００：ＮＯ）、ブラウザは引数にディレクトリを指定されたかどうかの判定を行う（Ｓ２１１０）。引数にディレクトリを指定された場合（Ｓ２１１０：ＹＥＳ）、ブラウザは、ディレクトリへのリンクをクリックされたときのブラウザの処理を実行し、起動処理を終了する。
【０１５９】
引数にディレクトリを指定されなかった場合（Ｓ２１１０：ＮＯ）、ブラウザはブラウザのホームページに設定されているhtmlファイルをサーバに要求する（Ｓ２１２０）。
【０１６０】
続いて、ブラウザは、ブラウザのホームページに設定されているhtmlファイルを取得できたかどうかの判定を行う（Ｓ２１３０）。htmlファイルを取得できた場合（Ｓ２１３０：ＹＥＳ）、ブラウザは、取得したhtmlファイルを表示して（Ｓ２１４０）起動処理を終了する。
【０１６１】
ブラウザのホームページに設定されているhtmlファイルを取得できなかった場合（Ｓ２１３０：ＮＯ）ブラウザはhtmlファイルが取得できるまで待つことになる。
【０１６２】
図２７は図２６のＳ２１５０におけるファイルへのリンクをクリックされたときのブラウザの処理を示したフローチャートである。まず、ブラウザは、リンクに書かれたファイルをＦＴＰサーバに要求する（Ｓ２２００）。続いて、ブラウザはファイルを取得できたかどうかの確認を行う（Ｓ２２１０）。
【０１６３】
ファイルが取得できた場合（Ｓ２２１０：ＹＥＳ）、ブラウザは、取得したファイルを表示してファイルへのリンクをクリックされたときのブラウザの処理を終了する。
【０１６４】
ファイルが取得できなかった場合（Ｓ２２１０：ＮＯ）ブラウザはファイルが取得できるまで待つこととなる。
【０１６５】
図２８は図２６のＳ２１６０におけるディレクトリへのリンクをクリックされたときのブラウザの処理を示したフローチャートである。まず、ブラウザは、リンクに書かれたディレクトリのファイルリストをＦＴＰサーバに要求する（Ｓ２３００）。
【０１６６】
ファイルリストが取得できた場合（Ｓ２３１０：ＹＥＳ）、ブラウザは、取得したファイルリストを表示してディレクトリへのリンクをクリックされたときのブラウザの処理を終了する。
【０１６７】
ファイルリストが取得できなかった場合（Ｓ２３１０：ＮＯ）ブラウザはファイルリストが取得できるまで待つこととなる。
【０１６８】
図２９は、図２５のＳ２０９０における転送処理を示したフローチャートである。まず、ブラウザは、表示しているhtmlファイルにキャッシュ削除コマンドが記述されているかどうかの確認を行う（Ｓ２４００）。
【０１６９】
htmlファイルにキャッシュ削除コマンドが記述されていれば（Ｓ２４００：ＹＥＳ）、ブラウザは、転送先のキャッシュを削除する（Ｓ２４１０）。htmlファイルにキャッシュ削除コマンドが記述されていなければ（Ｓ２４００：ＮＯ）、ブラウザは、転送先の確認を行う（Ｓ２４２０）。
【０１７０】
続いて、ブラウザは、転送先の確認を行う（Ｓ２４２０）。転送先がディレクトリであれば（Ｓ２４２０：ＹＥＳ）、ブラウザはhtmlファイルに書かれた転送コマンドに従い、転送先のディレクトリのファイルリストをサーバに要求（listコマンド）する（Ｓ２４３０）。
【０１７１】
続いてブラウザはファイルリストが取得できたかの確認を行う（Ｓ２４４０）。ファイルリストが取得できた場合（Ｓ２４４０：ＹＥＳ）ブラウザは取得したファイルリストを表示（Ｓ２４５０）して転送処理を終了する。ファイルリストが取得できなかった場合（Ｓ２４４０：ＮＯ）、ブラウザは、ファイルリストが取得できるまで待つことになる。
【０１７２】
一方、転送先がディレクトリで無かった場合（Ｓ２４２０：ＮＯ）、ブラウザはhtmlファイルに書かれた転送コマンドに従い、転送先のファイルをサーバに要求（getコマンド）する（Ｓ２４６０）。
【０１７３】
続いて、ブラウザはファイルが取得できたかどうかの確認を行う（Ｓ２４７０）。ファイルが取得できた場合（Ｓ２４７０：ＹＥＳ）ブラウザは取得したファイルを表示（Ｓ２４８０）して転送処理を終了する。ファイルが取得できなかった場合（Ｓ２４７０：ＮＯ）、ブラウザは、ファイルが取得できるまで待つことになる。
【０１７４】
なお、ＦＴＰ型処理装置の例として、プリンタ８０を示したが、スキャナ装置、ディスプレイ装置、オーディオ装置、カラオケ装置、デジタルカメラ装置、プロジェクタ装置、ディスクドライブ装置、ミシン、電話機、モバイル装置、工作用装置、ロボットなど、ＦＴＰサーバ機能を有し、メディア接続部を持ちうる構成の装置であればいずれに適用しても良いことは明らかである。
【図面の簡単な説明】
【０１７５】
【図１】本発明のＦＴＰシステムの全体構成の概略を示すブロック図。
【図２】本発明のＦＴＰシステムに適用されるプリンタの一例を示す斜視図。
【図３】プリンタ（カードリーダ）の電気的構成の一例を示すブロック図。
【図４】本発明のＦＴＰシステムの動作の一例を示すシーケンス図。
【図５】プリンタ８０におけるＦＴＰサーバ処理を示したフローチャート。
【図６】プリンタ８０における仮想ディレクトリツリーの初期化処理を示したフローチャート。
【図７】プリンタ８０における定常動作処理を示したフローチャート。
【図８】プリンタ８０におけるcd処理を示したフローチャート。
【図９】プリンタ８０におけるlist処理を示したフローチャート。
【図１０】プリンタ８０におけるget処理を示したフローチャート。
【図１１】プリンタ８０におけるput処理を示したフローチャート。
【図１２Ａ】プリンタ８０における仮想ファイル情報の作成の前段処理を詳細に示したフローチャート。
【図１２Ｂ】プリンタ８０における仮想ファイル情報の作成の後段処理を詳細に示したフローチャート。
【図１３】生成されたIndex.htmファイルの表示例。
【図１４Ａ】スロットの状態にカードを開くためのリンクが存在した場合のMain.htmファイルの画面表示例。
【図１４Ｂ】スロットの状態にカードを開くためのリンクが存在しない場合におけるMain.htmファイルの画面表示例。
【図１４Ｃ】スロットが複数認識されている場合におけるMain.htmファイルの画面表示例。
【図１５】仮想ディレクトリツリーを示す概念図。
【図１６】システム領域を示す概念図。
【図１７】プリンタ８０におけるメモリーカード操作処理を示すフローチャート。
【図１８】プリンタ８０においてFormat000.htmが要求された場合のＦＴＰサーバの処理を示すフローチャート。
【図１９】プリンタ８０においてFormatN.htmが要求された場合のＦＴＰサーバの処理を詳細に示すフローチャート。
【図２０】プリンタ８０におけるFormat000.htmの表示例。
【図２１】プリンタ８０におけるFormatN.htmの表示例。
【図２２】プリンタ８０におけるメモリーカード接続部の監視処理を示すフローチャート。
【図２３】プリンタ８０においてインストーラによるショートカットの作成を示すフローチャート。
【図２４】プリンタ８０においてショートカットを起動したときのＰＣ３の処理を示したフローチャート。
【図２５】ＰＣ３におけるブラウザの定常動作の処理を示したフローチャート。
【図２６】ＰＣ３におけるブラウザの起動処理を示したフローチャート。
【図２７】ＰＣ３においてファイルへのリンクをクリックされたときのブラウザの処理を示したフローチャート。
【図２８】ＰＣ３においてディレクトリへのリンクをクリックされたときのブラウザの処理を示したフローチャート。
【図２９】ＰＣ３において転送処理時のブラウザの処理を示したフローチャート。
【符号の説明】
【０１７６】
１  ＦＴＰシステム
２  マルチリーダライタ
３  パーソナルコンピュータ
３Ｌ  ローカルディスク
３Ｍ  モニタ
１１  第１メモリーカード（ＣＦ）
１２  第２メモリーカード（ＳＭ）
１３  第３メモリーカード（ＭＳ）
１４  第４メモリーカード（ＳＤ）
１６  メディア接続用スロット（第１スロット）
１７  メディア接続用スロット（第２スロット）
１８  メディア接続用スロット（第３スロット）
１９  メディア接続用スロット（第４スロット）
２４  ＬＡＮ Ｉ／Ｆ
３３  バス
３４  ＣＰＵ
３５  ＲＯＭ
３７  ＲＡＭ
８０  プリンタ
８２  印刷部
９１  操作・表示部
１５２  操作対応ファイル名を持つファイルのアイコン
１５３  操作対応ファイル名
４１０  ネットワーク
【図１】
2008217140.tif 000003
【図２】
2008217140.tif 000004
【図３】
2008217140.tif 000005
【図４】
2008217140.tif 000006
【図５】
2008217140.tif 000007
【図６】
2008217140.tif 000008
【図７】
2008217140.tif 000009
【図８】
2008217140.tif 000010
【図９】
2008217140.tif 000011
【図１０】
2008217140.tif 000012
【図１１】
2008217140.tif 000013
【図１２Ａ】
2008217140.tif 000014
【図１２Ｂ】
2008217140.tif 000015
【図１３】
2008217140.tif 000016
【図１４Ａ】
2008217140.tif 000017
【図１４Ｂ】
2008217140.tif 000018
【図１４Ｃ】
2008217140.tif 000019
【図１５】
2008217140.tif 000020
【図１６】
2008217140.tif 000021
【図１７】
2008217140.tif 000022
【図１８】
2008217140.tif 000023
【図１９】
2008217140.tif 000024
【図２０】
2008217140.tif 000025
【図２１】
2008217140.tif 000026
【図２２】
2008217140.tif 000027
【図２３】
2008217140.tif 000028
【図２４】
2008217140.tif 000029
【図２５】
2008217140.tif 000030
【図２６】
2008217140.tif 000031
【図２７】
2008217140.tif 000032
【図２８】
2008217140.tif 000033
【図２９】
2008217140.tif 000034