(57)【特許請求の範囲】
【請求項１】
外部装置にサービスを提供する情報処理装置であって、
前記情報処理装置が提供する前記サービスを特定可能な識別情報を、ユーザの指示に応じて生成する生成手段と、
前記サービスを提供する前記情報処理装置が備える表示部に、前記識別情報を表示する表示手段と、
前記情報処理装置が提供する前記サービスを検索するために前記外部装置において入力され、マルチキャスト送信された検索条件を受信する受信手段と、
前記検索条件と前記識別情報とが対応するか否かを判定する判定手段と、
前記判定手段によって前記検索条件と前記識別情報とが対応すると判定された場合に、前記情報処理装置のアドレス情報を前記外部装置に通知する通知手段とを有することを特徴とする情報処理装置。
【請求項２】
所定の期間経過後に前記識別情報を無効にする制御手段を更に有することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記情報処理装置が提供するサービスを停止する停止手段を更に有し、
前記制御手段は、前記停止手段による前記情報処理装置が提供するサービスの停止に応じて、前記識別情報を無効にすることを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記判定手段は、前記検索条件を予め定められた方法で処理し、前記識別情報に一致するか否かを判定することを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記識別情報は、前記情報処理装置のアドレス情報とは異なる情報であることを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記識別情報は、ワンタイムＩＤであることを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記検索条件として前記識別情報が前記外部装置で入力されることを特徴とする請求項１乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
前記サービスはドキュメントファイルを保管するストレージサービスであることを特徴とする請求項１乃至７のいずれか１項に記載の情報処理装置。
【請求項９】
前記サービスはドキュメントファイルを読み込むスキャンサービスであることを特徴とする請求項１乃至７のいずれか１項に記載の情報処理装置。
【請求項１０】
外部装置にサービスを提供する情報処理装置の制御方法であって、
生成手段が、前記情報処理装置が提供する前記サービスを特定可能な識別情報を、ユーザの指示に応じて生成する生成工程と、
表示手段が、前記サービスを提供する前記情報処理装置が備える表示部に、前記識別情報を表示する表示工程と、
受信手段が、前記情報処理装置が提供する前記サービスを検索するために前記外部装置において入力され、マルチキャスト送信された検索条件を受信する受信工程と、
判定手段が、前記検索条件と前記識別情報とが対応するか否かを判定する判定工程と、
通知手段が、前記判定工程によって前記検索条件と前記識別情報とが対応すると判定された場合に、前記情報処理装置のアドレス情報を前記外部装置に通知する通知工程とを有することを特徴とする情報処理装置の制御方法。
【請求項１１】
請求項１０に記載の制御方法の各工程をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理装置及びその制御方法に関し、特に、ネットワークを介して外部装置と通信する情報処理装置で使われる通信技術に関するものである。
【背景技術】
【０００２】
コンピュータ(以下、PC)に、デバイスからスキャンしたデータを転送するサービスが知られている。このサービスによって、ユーザは、物理的なドキュメントを、電子ドキュメントとして、自分のPCに取り込むことが可能になる。
【０００３】
こうしたサービスを利用するためには、ユーザは、PCをネットワーク上に接続した後、デバイスから自分のPCに対してスキャンしたデータを転送する処理を行う必要がある。このとき、ユーザは、転送先のPCが自分のPCであることを特定するために、そのPCのIPアドレスや認証情報をデバイスから入力したりする（例えば、特許文献１）。
【０００４】
又、デバイスから自分のPCを検索したりする必要も生じる。例えば、デバイスからネットワーク上のPCを検索する場合、ユーザはネットワークに接続している数多くのPCから自分のPCを特定する必要がある。かかる検索に問題が起これば、誤ってほかのPCにデータを転送してしまう可能性もある。
【０００５】
一方、ユーザが自分のPCのIPアドレスをデバイスに入力する方法の場合、ユーザは自分のPCのIPアドレスを知っている必要がある。この場合には、ユーザは、公共のネットワーク環境でその都度割り振られるIPアドレスに注意を払う必要が生じする。すなわち、ネットワーク環境においては、PCのIPアドレスが動的に変化する場合がある。例えば、PCが、自分が起動するたびにサーバにIPアドレスを要求し、サーバから発行されるIPアドレスを自分のIPアドレスとして使用する場合などである。この場合、サーバは、現在ネットワークで使用されていないIPアドレスを動的にPCに割り当てる。このような状況では、ユーザによるIPアドレスの入力ミスにより、デバイスがデータを他PCへ誤送信してしまう可能性も払拭できない。
【特許文献１】特開2000-244694号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
このように、公共の場で一時的にネットワークに接続するPCへデバイスからスキャンデータなどを転送する場合、
(1) スキャンデータの宛先となるPCのIPアドレスの入力操作に手間が生じる。
(2) 誤ってほかのPCにデータを転送してしまう。
といった問題点があった。
【０００７】
例えば、悪意ある第三者がネットワーク上にPCを接続しておき、デバイスからのユーザの認証に対してそのPCが常に認証OKをデバイスに返してしまうと、結局、スキャンしたデータが悪意ある第三者のPCに取り込まれてしまう可能性がある。又、その際、認証情報も悪意ある第三者のPCにわたってしまう可能性も出てくる。
【０００８】
本発明は、上記問題点を解決するためになされたものであり、ユーザが特定のサービスを適切に選択して当該サービスをネットワークを介して使用できる情報処理装置及びその制御方法を提供する。
【課題を解決するための手段】
【０００９】
かかる課題を解決するために、本発明の情報処理装置は、外部装置にサービスを提供する情報処理装置であって、前記情報処理装置が提供する前記サービスを特定可能な識別情報を、ユーザの指示に応じて生成する生成手段と、前記サービスを提供する前記情報処理装置が備える表示部に、前記識別情報を表示する表示手段と、前記情報処理装置が提供する前記サービスを検索するために前記外部装置において入力され、マルチキャスト送信された検索条件を受信する受信手段と、前記検索条件と前記識別情報とが対応するか否かを判定する判定手段と、前記判定手段によって前記検索条件と前記識別情報とが対応すると判定された場合に、前記情報処理装置のアドレス情報を前記外部装置に通知する通知手段とを有することを特徴とする。
【発明の効果】
【００１６】
以上説明したように、本発明によれば、ユーザが特定のサービスを適切に選択して当該サービスをネットワークを介して使用できる情報処理装置及びその制御方法を提供できる。
【００１７】
すなわち、一時的に生成される識別情報をデータの転送元や転送先の特定条件として使用することにより、目的のサービスをほぼ確実に実施することができる。又、識別情報でサービスを特定できるのは所定の時間内のみとすることができるため、他の悪意のあるユーザからの不正なアクセスを避けることができ、セキュリティが向上する。又、この識別情報は一時的なものであるため、他人に知られたとしてもその後に攻撃される可能性が少ない。
【発明を実施するための最良の形態】
【００１８】
以下、添付の図面を参照して本発明の実施形態を詳細に説明する。
【００１９】
＜本実施形態のネットワークシステムの構成例＞
図１は、本実施形態のネットワークストレージサービスが動作するPC、およびネットワーク接続機能を持つマルチファンクションデバイスがLANに接続しているネットワークシステムの概略構成を示す図である。尚、図１には、LANで接続されるシステム例を示したが、インターネットなどの公共ネットワークを含むシステムであっても、本発明の構成及び効果は同様であり、これらも本発明に含まれる。又、接続される機器やその数についても、何ら制限はない。
【００２０】
図１において、101は、LANに接続可能なマルチファンクションデバイスで、ネットワーク印刷サービスやスキャンサービスをローカルエリアネットワーク（LAN）100を介して提供している。更に、マルチファンクションデバイス101はネットワーク上の他の端末のストレージサービスへのファイル送信機能も備える。同一のネットワーク上にLAN100を介して、ネットワークストレージサービスを持つPC102、およびPC103が接続されている。PC102やPC103は、マルチファンクションデバイス101からのスキャンサービスにより取り込まれたデータを受信するPCである。
【００２１】
実施形態１では、PC102が一時的に生成するサービス名（ワンタイムID：サービス及びサービスを提供する装置を特定可能な識別情報）を用いてネットワークストレージサービスを起動する。マルチファンクションデバイス101では、そのサービス名でストレージサービスの検索を行うことにより、特定のPC102上のストレージサービスを確実に検索する。その検索結果により、マルチファンクションデバイス101のスキャンサービスからPC102のストレージサービスに間違いなくスキャンしたドキュメントデータを渡す。
【００２２】
実施形態２では、マルチファンクションデバイス101が一時的に生成するサービス名（ワンタイムID：サービス及びサービスを提供する装置を特定可能な識別情報）を用いてネットワークスキャンサービスを起動する。PC102では、ストレージサービスの起動時にそのサービス名でスキャンサービスの検索を行うことにより、特定のマルチファンクションデバイス101上のスキャンサービスを確実に検索する。その検索結果により、マルチファンクションデバイス101のスキャンサービスからPC102のストレージサービスに間違いなくスキャンしたドキョメントデータを渡す。
【００２３】
かかる実施形態１及び２の例は、本発明の技術思想を理解するために単純化されたシステム及びその動作例である。従って、これらを組み合わせたあるいは本発明の技術思想の範囲を逸脱しない変形例が当業者には可能であり、それらも本発明に含まれる。それ故、ネットワークに接続されるPCもマルチファンクションデバイスも、本発明では同様に情報処理装置として表現されている。又、サービスもストレージサービスやスキャンサービスに限定されない。更に、サービスによりネットワークを介して転送されるデータもスキャンされたドキョメントデータに限定されない。
【００２４】
［実施形態１］
以下、本発明に係る実施形態１の構成と動作を詳細に説明する。
【００２５】
＜実施形態１の動作概念図＞
図２は、本実施形態におけるストレージサービス起動から、スキャンサービス起動、ストレージサービスの検索、検索結果表示、ファイル操作、ストレージサービス停止までの流れを概念的に示したフロー図である。図２では、PC102のストレージサービスと、マルチファンクションデバイス101のスキャンサービスとの間で行われるストレージサービスの検索の例を示す。
【００２６】
まず、PC102においてストレージサービスが起動されると、ステップS101において、ストレージサービスは、サービス名(以下、ワンタイムIDとも言う)を生成し、PC102の画面に、以下の図５に示すようなサービス名を表示する。その後、ユーザがサービス名(ワンタイムID)を確認してOKボタンを押すと、ステップS102において、PC102で比較的短期間の有効期限のあるストレージサービスが開始される。
【００２７】
一方、ストレージサービスのクライアントでもあるマルチファンクションデバイス101は、ステップS103において、スキャンデータの転送先を見付ける。そのため、ユーザは以下の図１１に示すような画面からサービス名(ワンタイムID)を入力し、マルチファンクションデバイス101はストレージサービスの検索を開始する。検索には、検索条件が指定されたマルチキャスト検索パケットが使用される。マルチファンクションデバイス101は、入力されたサービス名が検索条件として指定されているマルチキャスト検索パケットをLAN100上に送信する。
【００２８】
PC102のストレージサービスでは、ステップS104において、マルチキャスト検索パケットを受信した際に、生成したサービス名と受信したマルチキャスト検索パケット内のサービス名（検索条件）とが一致するか否かを検査する。一致する場合には（サービス名の入力が正しければ一致する）、ストレージサービスはマルチファンクションデバイス101に検索応答パケットを返信する。
【００２９】
検索応答パケットを受信したマルチファンクションデバイス101は、ステップS105で、応答してきたストレージサービスのサービス名とそのストレージサービスを実行しているPC102のＩＰアドレスとを、以下の図１２のように表示する。マルチファンクションデバイス101のユーザが、サービス名が表示されたストレージサービスを選択する。その後は、ステップS106において、マルチファンクションデバイス101はPC102のストレージサービスに対するファイルの書き込みやファイルの削除などのファイル操作を行うことが可能となる。ステップS107では、PC102で起動したストレージサービスの有効期限が経過したことにより、あるいは、PC102でのユーザによる終了指示により、ストレージサービスが停止され、そのサービス名は無効になる。
【００３０】
＜本実施形態のPCの構成例＞
（PCのブロック構成例）
図３Ａは、本実施形態でネットワークに接続されたPCの構成例を示すブロック図である。
【００３１】
302は、PCの制御を司る演算制御用のCPUである。303は、CPU302が実行するブートプログラムが可能されているブートロムである。304は、CPU302が一時記憶メモリとして使用するRAMである。305は、操作部などから設定された値を保持しておくための不揮発性のRAM(NVRAM)である。307は、CPU302が実行するプログラムやデータを記憶するHDDである。308は、現在時刻や時間間隔をカウントするタイマである。309はスピーカ、表示部、操作部やランプなどといったユーザインターフェース部分314を制御するI/O制御部ユニットである。310は、PCが接続されたネットワークを介した送受信を制御するネットワーク制御部ユニットである。これらの上記各構成要素のそれぞれがバス311に接続している。
【００３２】
PCを制御するプログラムはHDD307内に格納されている。電源が投入されると、CPU302はブートロム303からブートプログラムを読み出し、ブートプログラムの制御にしたがって、PCのブートを実行する。CPU302は、ブートプログラムにしたがって、HDD307からPC制御プログラムをRAM304に展開し、RAM304上に展開されたPC制御プログラムを読み出すことによって、PCの制御を実行することになる。
【００３３】
尚、図３Ａでは、プログラムやデータを格納する構成要素をHDD307として説明したが、かかる構成要素は不揮発性の記憶媒体、例えばFD、CDROM、メモリカードなどでも良いことは明らかである。
【００３４】
（PCの記憶構成例）
図３Ｂは、本実施形態でネットワークに接続されたPCの記憶構成例を示す図である。図３Ｂには、本実施形態１及び２に関連するプログラムやデータを示しており、他のプログラムやデータは省かれている。又、図３ＢのHDD307、NVRAM305、RAM304への振り分けは一例であって限定されるものではない。
【００３５】
図３Ｂで、307aは、ＯＳなどを含むシステムプログラムである。307bは、本実施形態でPCが実行するストレージサービスに関連するプログラムであり、図４又は図２０にその内容が示されている。307cは、ストレージサービスでデータを保管するストレージ領域である。
【００３６】
305aは、本実施形態でPCが実行するストレージサービスを記憶するストレージサービス実行テ−ブルである。PCは複数のストレージサービスを実行でき、その起動に際して、サービス名（ワンタイムID）を各ストレージサービスに割り振り、その有効期間を管理する。ストレージポインタは、前述のストレージ領域307cの各ストレージサービスに対応するデータの記憶領域を検索可能にポイントしている。305bは、ストレージサービスの起動から終了までの有効期間の幅を記憶する領域である。又、305cは、サービス名（ワンタイムID）をどのようなアルゴリズムで生成するかを記憶する領域である。尚、有効期間幅305bやワンタイムID算出アルゴリズム305cは、固定でも良いしユーザにより書き換え可能にしても良い。特に、ワンタイムID算出アルゴリズム305cをユーザにより書き換え可能とする。そして、サービス名としてはワンタイムID算出元のデータ（ユーザの覚えやすいデータ）を割り当て、PCでワンタイムID算出アルゴリズム305cにより演算したものを比較する。これにより、より簡単でより秘匿性の高いデータ転送が可能となる。
【００３７】
304aは、生成して発行されるワンタイムID（サービス名）である。尚、実施形態２では、ストレージサービスの起動時にユーザにより設定されたワンタイムID（サービス名）となる。304bは、ネットワークに接続される他の装置、本例ではマルチファンクションデバイス101から送信されPCで受信されたワンタイムID（サービス名）である。304cは、マルチファンクションデバイス101から送信されPCで受信されたワンタイムIDとPCで生成して発行されるワンタイムIDとが一致したか否かを示すフラグである。304dは、PCの表示部に表示される画面（例えば、図５や図２１〜図２３）を記憶する領域である。304eは、操作部から設定される他の設定情報を記憶する設定情報記憶領域である。304fは、本例ではHDD307から読出されたプログラムをCPU302により実行するためにロードするプログラムロード領域である。
【００３８】
＜実施形態１のPCの動作例＞
（PCのソフトウェア構成例）
図４は、実施形態１におけるPC上で動作するネットワークストレージサービス関連のソフトウェア構成例を示すブロック図である。図４ではPC102として説明する。
【００３９】
403は、ストレージサービス制御部であり、PC102上で動作するストレージサービスの全体の動作を制御するソフトウェアモジュールである。401は、ワンタイムID生成部であり、ストレージサービス起動時に、一時的な識別子としてワンタイムIDを生成するソフトウェアモジュールである。本実施形態のストレージサービスは、ワンタイムID生成部で生成されたワンタイムIDをサービス名として使用する。402は、画面制御部であり、PC102が持つ表示部のディスプレイ上にストレージサービスを制御するための各種画面(ウィンドウ)を表示するためのソフトウェアモジュールである。
【００４０】
404は、検索応答制御部であり、ネットワーク上のクライアントからの検索要求における検索条件に一致する場合に応答を返す動作を制御するソフトウェアモジュールである。例えば、クライアントがサービス名を検索条件に指定して検索要求を発行する。この場合、検索応答制御部404は、クライアントが指定したサービス名とストレージサービスのサービス名とを比較し、一致していればクライアントに応答を返す動作を行う。一方、一致していなければ応答は返さない。あるいは、一致しないとの情報と共に、例えば既に有効期間を過ぎているなどのステータス情報を返す構成としてもよい。
【００４１】
405は、オペレーション制御部である。クライアントからストレージサービスに対する各種指示の解析し、ストレージサービス制御部403に通知するとともに、ストレージサービス制御部403からの指示により応答を返すソフトウェアモジュールである。例えば、クライアントからのファイルの書き込みオペレーションやファイルの削除オペレーションを解析するモジュールである。406は、通信制御部であり、TCP/IPプロトコルを制御するソフトウェアモジュールであり、クライアントとストレージサービスとの間のTCP/IP通信制御を司る。
【００４２】
（PCの表示画面例）
図５は、実施形態１におけるPC上で動作するストレージサービスを起動したときに表示される画面例を示す図である。
【００４３】
501は、サービス名であり、本実施形態のストレージサービスが起動されたときにストレージサービスが一時的に生成するワンタイムIDを表示している。上述のように、本例のストレージサービスでは、ワンタイムIDをサービス名として使用する。このようにすることによって、クライアントはサービス名を検索条件として所望のストレージサービスを検索することができる。502は、ストレージサービスの有効期間を表示している。ストレージサービスが起動後に自動的に停止する時刻を表している。503は、OKボタンであり、ユーザがこのボタンを押すとストレージサービスが起動される。504は、キャンセルボタンであり、ユーザがこのボタンを押すとストレージサービスは起動せずに終了する。
【００４４】
本実施形態におけるストレージサービスは一時的に生成されるワンタイムIDをサービス名として使用しているが、他の検索条件の項目に割り当ててもよいことは言うまでもない。
【００４５】
尚、実施形態１では、サービス名501は画面において書き換え不能であるが、有効期間502は書き換え可能としても良い。
【００４６】
（ストレージサービスの制御例）
図６は、実施形態１におけるPC上で動作するストレージサービスの起動から終了までの動作手順例を示すフローチャートである。尚、かかるフローチャートは、ストレージサービスの起動／終了を制御するプログラムの手順を示している。ストレージサービス自体は、下記ステップS604での起動指示（ストレージサービス実行テーブル305aへの登録）、ステップS606での終了指示（ストレージサービス実行テーブル305aからの削除）を参照して実行されるサブルーチンである。
【００４７】
ストレージサービスが起動されると、CPU302は、ステップS601においてワンタイムID算出アルゴリズム305cを使ってワンタイムIDを生成する。例えば、「1234567890」というキーワードを生成する。ワンタイムIDの生成方法はここでは特に言及しないが、PC102のユーザ名、時刻情報、ランダム値等の組み合わせを用いることにより、他のストレージサービスとできるだけ重複しないようにすることが重要である。又、より重複を避けるために、ワンタイムIDは、PC102の使用者が入力するキーワードとストレージサービスが生成するキーワードとの組み合わせにしてもよい。次に、ステップS602において、CPU302は、図５に示す画面をPC102のディスプレイ上に表示する。ステップS601で生成したワンタイムIDはサービス名501として表示されている。PC102のユーザはこの時点で表示されるサービス名(ワンタイムID)501を記憶しておく。
【００４８】
次に、ステップS603において、CPU302はキャンセルボタン504が押下されたか、OKボタン503が押下されたかを判断する。図５のキャンセルボタン504が押された場合は、CPU302は、ストレージサービスを終了する。一方、OKボタン503が押された場合は、ステップS604へ進む。ステップS604では、CPU302は、ストレージサービスの開始処理を行なう。このとき、ステップS601で生成したワンタイムIDがストレージサービスのサービス名として使用される。その後、ステップS605において、CPU302は、ユーザから終了が指示されたかどうかを判断し、さらに有効期限が経過したかどうかを判断する。ユーザから終了が指示された、あるいは、有効期限が経過した場合は、CPU302は、ステップS606においてストレージサービスの終了処理を行う。
【００４９】
尚、ユーザが記憶し図１１の画面で入力するサービス名をワンタイムIDとして説明したが、「1234567890」という１０桁の数字もユーザが記憶して置くのは大変である。ユーザが記憶し図１１の画面で入力するサービス名として、ワンタイムIDの算出途中で生成されたデータあるいはワンタイムIDの算出元となるデータであってユーザが記憶し易いデータが用いられても良い。この場合は、ワンタイムIDの算出途中で生成されたデータあるいはワンタイムIDの算出元となるデータが図５の画面でサービス名として表示される。そして、以下の図７のステップS702で示すように、マルチファンクションデバイス101から取得したサービス名を元にPCで最終的なワンタイムIDを算出して、生成されたワンタイムIDとの一致を判定してもよい。又、有効期限については特に言及しないが、予めユーザが設定できるようにしてもよいし、特に有効期限を持たなくてもよい。
【００５０】
（ストレージサービスの問合わせ応答手順例）
図７は、マルチファンクションデバイス101から送信されたサービス名に対応するストレージサービスがPCで実行中か否かを判定して、応答する手順例を示すフローチャートである。
【００５１】
まず、ステップS701で、CPU302は、受信したマルチキャスト検索パケットからサービス名を取得する。図１１の画面で入力されるべきサービス名がワンタイムIDそのものであるとして設計された場合はステップS703に進む。ステップS703では、CPU302は、ステップS701で取得されたサービス名とステップS601で生成されたワンタイムIDとを比較して、ステップS701で取得したサービス名と同じサービス名を有するストレージサービスを検索する。同じサービス名を有するストレージサービスが見つかれば、CPU302は、ステップS704で、ストレージサービス有りを示す情報とサービス名（ワンタイムID）とを含む検索応答パケットを返信する。尚、この検索応答パケットにはそのストレージサービスを実行しているPCのネットワークにおけるアドレス（例えば、IPアドレスなど）が含まれるのは、当然である。一方、同じサービス名を有するストレージサービスが見つからなければ、返信をせずに終了する、あるいは、ステップS705で、CPU302が有効期間切れなどのステータス情報を返してもよい。
【００５２】
図１１の画面で入力されるべきサービス名がワンタイムIDを算出する途中で生成されたデータや算出元のデータであるとして設計された場合は、ステップS702が実行される。ステップS702では、CPU302は、取得したサービス名とワンタイムID算出アルゴリズム305cとに基づいてワンタイムIDを算出する。ステップS703では、CPU302は、ステップS702で算出されたワンタイムIDをサービス名としているストレージサービスを検索する。
【００５３】
＜本実施形態のマルチファンクションデバイスの構成例＞
（マルチファンクションデバイスのブロック構成例）
図８Ａは、本実施形態におけるマルチファンクションデバイスの概略構成例を示すブロック図である。
【００５４】
図８Ａで、801は、スキャナエンジン813を制御するスキャナエンジン制御部ユニットである。802は、マルチファンクションデバイスの制御を司る演算制御用のCPUである。803は、CPU802が実行するブートプログラムが可能されているブートロムである。804は、CPU802が一時記憶メモリとして使用するRAMである。805は、操作部などから設定された値を保持しておくための不揮発性のRAM(NVRAM)である。806は、プリンタエンジン812を制御するエンジン制御部ユニットである。807は、CPU302が実行するプログラムやデータを記憶するHDDである。808は、現在時刻や時間間隔をカウントするタイマである。809はスピーカ、タッチパネル、ボタンやランプなどといったユーザインターフェース部分814を制御するI/O制御部ユニットである。810は、マルチファンクションデバイスが接続されたネットワークを介した送受信を制御するネットワーク制御部ユニットである。これらの上記各構成要素のそれぞれがバス811に接続している。
【００５５】
マルチファンクションデバイスを制御するプログラムはHDD807内に格納されている。電源が投入されると、CPU802はブートロム803からブートプログラムを読み出し、ブートプログラムの制御にしたがって、マルチファンクションデバイスのブートを実行する。CPU802は、ブートプログラムにしたがって、HDD807からマルチファンクションデバイス制御プログラムをRAM804に展開する。CPU802は、RAM804上に展開されたマルチファンクションデバイス制御プログラムを読み出すことによって、マルチファンクションデバイスの制御を実行することになる。
【００５６】
尚、図８Ａでは、プログラムやデータを格納する構成要素をHDD807として説明したが、かかる構成要素は不揮発性の記憶媒体、例えばFD、CDROM、メモリカードなどでも良いことは明らかである。
【００５７】
（マルチファンクションデバイスの記憶構成例）
図８Ｂは、本実施形態でネットワークに接続されたマルチファンクションデバイスの記憶構成例を示す図である。図８Ｂには、本実施形態１及び２に関連するプログラムやデータを示しており、他のプログラムやデータは省かれている。又、図８ＢのHDD807、NVRAM805、RAM804への振り分けは一例であって限定されるものではない。
【００５８】
図８Ｂで、807aは、ＯＳなどを含むシステムプログラムである。807bは、本実施形態でマルチファンクションデバイスが実行するスキャンサービス及びドキュメント送信に関連するプログラムであり、図１０又は図１６にその内容が示されている。307cは、スキャンサービスでドキュメントデータを保管するドキュメント保管領域である。
【００５９】
805aは、本実施形態でマルチファンクションデバイスが実行するスキャンサービスを記憶するドキュメント送信テ−ブルである。マルチファンクションデバイスは複数のスキャンサービスを実行でき、その起動に際して、サービス名（ワンタイムID）を各スキャンサービスに割り振り、その有効期間を管理する。ドキュメントポインタは、前述のドキュメント保管領域807cの各スキャンサービスに対応するデータの記憶領域を検索可能にポイントしている。805bは、スキャンサービスの起動から終了までの有効期間の幅を記憶する領域である。又、805cは、サービス名（ワンタイムID）をどのようなアルゴリズムで生成するかを記憶する領域である。尚、有効期間幅805bやワンタイムID算出アルゴリズム805cは、固定でも良いしユーザにより書き換え可能にしても良い。特に、ワンタイムID算出アルゴリズム805cをユーザにより書き換え可能とする。そして、サービス名としてはワンタイムID算出元のデータ（ユーザの覚えやすいデータ）を割り当て、マルチファンクションデバイスでワンタイムID算出アルゴリズム805cにより演算したものを比較する。これにより、より簡単でより秘匿性の高いデータ転送が可能となる。
【００６０】
804aは、ストレージサービス検索時にタッチパンネルから入力されたワンタイムID（サービス名）である。尚、実施形態２では、スキャンサービスの起動時に生成して発行されたワンタイムID（サービス名）となる。804bは、ストレージサービス検索結として返信された情報から獲得した、送信宛先データ(PCのネットワークにおけるアドレス、例えばIPアドレス）の記憶領域である。804cは、スキャン読み込みした、あるいは今から送信するドキュメントデータの記憶領域である。804dは、マルチファンクションデバイス101のタッチパネルに表示される画面（例えば、図１１〜図１３や図１７）を記憶する領域である。804eは、操作部から設定される他の設定情報を記憶する設定情報記憶領域である。
【００６１】
804fは、ネットワークに接続される他の装置、本例ではPCから送信されマルチファンクションデバイス101で受信されたワンタイムID（サービス名）である。304gは、PCから送信されマルチファンクションデバイス101で受信されたワンタイムIDとマルチファンクションデバイス101で生成して発行されるワンタイムIDとが一致したか否かを示すフラグである。かかる804fと804gは、実施形態２で使用されるデータである。804hは、本例ではHDD807から読出されたプログラムをCPU802により実行するためにロードするプログラムロード領域である。
【００６２】
図９は、本実施形態におけるマルチファンクションデバイス101が所有するユーザインターフェース部分の例を示す図である。
【００６３】
901は大型タッチパネルで、ユーザはタッチパネル901を操作することで、各種設定を行うことが可能である。図の画面はコピーの待機画面である。902はテンキーボタンで、1から0の数字を入力するのに使う。Ｓボタンはサービスボタンである。ユーザがこのＳボタンを押下することにより、タッチパネル上に各種サービス画面が出現し、コピー以外のサービスを行うことができる。本実施形態では、ユーザがこのＳボタンを押下することによってドキュメント送信のサービスが起動し、スキャンしたデータを任意のPCのストレージ（HDD等）上に転送することが可能となる。Ｒボタンは設定ボタンである。ユーザがこのＲボタンを押下することによって、タッチパネル上に各種設定画面が出現し、パラメータの設定を行うことができる。903はスピーカで、音声やブザー等をここから出力する。904はランプで、印刷やコピーがジャムした場合にはランプが点滅する。905は省電力へのON/OFFボタンで、ユーザが省電力モードへの移行、および復帰をボタン操作することが可能となる。
【００６４】
＜実施形態１のマルチファンクションデバイスの動作例＞
（マルチファンクションデバイスのソフトウェア構成例）
図１０は、本実施形態におけるマルチファンクションデバイス101上のドキュメント送信機能を司るソフトウェア構成例を示すブロック図である。
【００６５】
1003は、ドキュメント送信制御部であり、マルチファンクションデバイス101のドキュメント送信全体を制御するソフトウェアモジュールである。1001は、スキャナ制御部であり、スキャナエンジン813を制御して紙原稿の読み取りを行うソフトウェアモジュールである。1002は、画面制御部であり、タッチパネル901等のユーザインタフェース部814を制御するソフトウェアモジュールである。1004は、サービス検索制御部であり、検索条件を指定してストレージサービスを検索するためのソフトウェアモジュールである。1005は、オペレーション制御部であり、ストレージサービスに対して通信を行い、例えばファイルの書き込みやファイルの削除を行うためのソフトウェアモジュールである。1006は、通信制御部であり、TCP/IP通信を制御するためのソフトウェアモジュールである。
【００６６】
（マルチファンクションデバイスの表示画面例）
図１１は、実施形態１におけるマルチファンクションデバイス101上のタッチパネル301に表示されるストレージサービス検索画面の例を示す図である。
【００６７】
1101は検索条件としてサービス名を入力するフィールドである。図１１の例では、ユーザは、サービス名として、図５の画面で表示された「1234567890」を入力している。1102は検索開始ボタンであり、ユーザがこのボタンを押すと、マルチファンクションデバイス101は、入力したサービス名1101を持つネットワーク上のストレージサービスの検索を開始する。1103はキャンセルボタンであり、ユーザはストレージサービスの検索を中止したい場合はこのボタンを押す。
【００６８】
図１２及び図１３は、実施形態１におけるマルチファンクションデバイス101上のタッチパネル901に表示されるストレージサービスの検索結果画面の例を示す図である。図１２は、ストレージサービスが見つかった場合の例であり、図１３はストレージサービスが何も見つからなかった場合の例である。
【００６９】
図１２においては、サービス名が「1234567890」である１つのストレージサービスが検索により見つかったことを示している。ユーザはこのサービスを選択してOKボタン1203を押すことにより、以後、このサービスに対してファイルの書き込みや削除などのファイル操作を行うことができる。尚、複数のストレージサービスが検索により見つかった場合は、ユーザは選択ボタン1202で所望のストレージサービスを選択してOKボタン1203を押す。ストレージサービスへのスキャンしたドキュメントデータの送信が無ければ、あるいは終われば、ユーザがキャンセルボタン1204を押すことにより終了する。
【００７０】
（ストレージサービスの検索制御例）
図１４は、実施形態１におけるマルチファンクションデバイスのドキュメントスキャンサービスの処理手順例を示すフローチャートである。
【００７１】
まず、スキャンサービスの実行時に、マルチファンクションデバイスは、図１１のような画面をタッチパネル901に表示し、ユーザによるサービス名（ワンタイムID）の入力を受ける。ステップS1402では、マルチファンクションデバイスは、かかるサービス名を有するマルチキャスト検索パケットを送信することで、起動時にそのサービス名を割り振られたストレージサービスを検索する。
【００７２】
検索応答パケットがあれば、ステップS1403で、マルチファンクションデバイスは、検索応答パケットからサービス名とPCのＩＰアドレスとを取得し、図１２の検索結果をタッチパネル901に表示する。検索応答パケットが無ければ、マルチファンクションデバイスは図１３の検索結果を、タッチパネル901に表示する。ステップS1404では、マルチファンクションデバイスは、サービスが選択されてかつOKボタン1203が押されたか、キャンセルボタン1204が押されたかを判断する。キャンセルボタン1204が押された場合は、マルチファンクションデバイスは、スキャンサービスを終了する。サービスが選択されてかつOKボタン1203が押された場合に、マルチファンクションデバイスは、ステップS1405に進んで、スキャナエンジン813でドキュメントデータの読み込みが行われるようスキャナ制御ユニット801を制御する。ステップS1406で、マルチファンクションデバイスは、選択されたストレージサービスを起動しているPCのＩＰアドレスに基づいて、選択されたストレージサービスへ、読み込まれたドキュメントデータを送信する。なお、選択されたストレージサービスを起動しているＰＣを識別するために、ＩＰアドレス等のアドレス情報が使用されている。が、ＰＣを識別するその他の識別情報が使用されても良い。例えば、その他の識別情報の一例としてＵＲＬ（Uniform Resource Locator）やホスト名が挙げられる。
【００７３】
［実施形態２］
以下、本発明に係る実施形態２を説明する。尚、PC及びマルチファンクションデバイスの構成例は、実施形態１で示したので、ここでは省略する。
【００７４】
＜実施形態２の動作概念図＞
図１５は、本実施形態におけるスキャンサービス起動から、ストレージサービス起動、スキャンサービスの検索、検索結果表示、ファイル操作、ストレージサービス停止までの流れを概念的に示したフロー図である。図１５では、マルチファンクションデバイス101のスキャンサービスと、PC102のストレージサービスとの間で行われるスキャンサービスの検索の例を示す。
【００７５】
まず、ストレージサービスのクライアントであるマルチファンクションデバイス101においてスキャンサービスが起動される。すると、ステップS1501において、スキャンサービスは、サービス名(以下、ワンタイムIDとも言う)を生成し、マルチファンクションデバイス101の画面に、以下の図１７に示すようなサービス名を表示する。その後、ユーザがサービス名(ワンタイムID)を確認してOKボタンを押すと、ステップS1502において、マルチファンクションデバイス101で比較的短期間の有効期限のあるスキャンサービスが開始される。ユーザは、かかるサービス名(ワンタイムID)を記憶して置く。
【００７６】
一方、PC102では、ステップS1503において、ストレージサービスを起動して、スキャンデータの転送元を見付ける。そのため、ユーザは以下の図２１に示すような画面から、ユーザが記憶していたサービス名(ワンタイムID)を入力し、PC102はスキャンサービスの検索を開始する。検索には、検索条件が指定されたマルチキャスト検索パケットが使用される。
【００７７】
マルチファンクションデバイス101のスキャンサービスでは、ステップS1504において、マルチキャスト検索パケットを受信する。その際に、生成したサービス名と受信したマルチキャスト検索パケット内のサービス名（検索条件）とが一致するか否かを検査する。一致する場合には（サービス名の入力が正しければ一致する）、スキャンサービスはPC102に検索応答パケットを返信する。
【００７８】
PC102が検索応答パケットを受信する。PC102は、ステップS1505で、応答してきたスキャンサービスのサービス名とそのスキャンサービスを実行しているマルチファンクションデバイス101のＩＰアドレスとドキュメントデータのファイル名とを、以下の図２２のように表示する。PC102のユーザが、サービス名が表示されたスキャンサービスを選択する。その後は、ステップS1506において、PC102はマルチファンクションデバイス101のスキャンサービスに対するファイルの読み出しや削除などのファイル操作を行うことが可能となる。ステップS1507では、マルチファンクション101で起動したスキャンサービスの有効期限が経過したことにより、あるいは、PC102でのユーザによる終了指示によりスキャンサービスが停止され、そのサービス名は無効になる。
【００７９】
＜実施形態２のマルチファンクションデバイスの動作例＞
（マルチファンクションデバイスのソフトウェア構成例）
図１６は、本実施形態におけるマルチファンクションデバイス101上のドキュメント送信機能を司るソフトウェア構成例を示すブロック図である。尚、図１０と同じ機能を果たすモジュールには同じ参照番号を付してある。
【００８０】
1603は、ドキュメント送信制御部であり、マルチファンクションデバイス101のドキュメント送信全体を制御するソフトウェアモジュールである。1600は、ワンタイムID生成部であり、スキャンサービス起動時に、一時的な識別子としてワンタイムIDを生成するソフトウェアモジュールである。1001は、スキャナ制御部であり、スキャナエンジン813を制御して紙原稿の読み取りを行うソフトウェアモジュールである。1002は、画面制御部であり、タッチパネル901等のユーザインタフェース部814を制御するソフトウェアモジュールである。
【００８１】
1604は、検索応答制御部であり、ネットワーク上のPCからの検索要求における検索条件に一致する場合に応答を返す動作を制御するソフトウェアモジュールである。例えば、PCのストレージサービスがサービス名を検索条件に指定して検索要求を発行する。その場合、検索応答制御部1604は、PCのストレージサービスが指定したサービス名とスキャンサービスのサービス名とを比較し、一致していればPCに応答を返す動作を行う。一方、一致していなければ応答は返さない。あるいは、一致しないとの情報と共に、例えば既に有効期間を過ぎているなどのステータス情報を返す構成としてもよい。
【００８２】
1605は、オペレーション制御部である。PCからのスキャンサービスに対する各種指示を解析し、ドキュメント送信制御部1603に通知するとともに、ドキョメント送信制御部1603からの指示により応答を返すソフトウェアモジュールである。例えば、PCのストレージサービスからのファイルの読み出しオペレーションやファイルの削除オペレーションを解析するモジュールである。1006は、通信制御部であり、TCP/IP通信を制御するためのソフトウェアモジュールである。
【００８３】
（マルチファンクションデバイスの表示画面例）
図１７は、実施形態２におけるマルチファンクションデバイス上で動作するスキャンサービスを起動したときに表示される画面例を示す図である。
【００８４】
1701は、サービス名であり、本実施形態のスキャンサービスが起動されたときにスキャンサービスが一時的に生成するワンタイムIDを表示している。上述のように本例のスキャンサービスでは、ワンタイムIDをサービス名として使用する。このようにすることによって、PCのストレージサービスはサービス名を検索条件として所望のストレージサービスを検索することができる。1702は、スキャンサービスの有効期間を表示している。スキャンサービスが起動後に自動的に停止する時刻を表している。1703は、OKボタンであり、ユーザがこのボタンを押すとスキャンサービスが起動される。1704は、キャンセルボタンであり、ユーザがこのボタンを押すとスキャンサービスは起動せずに終了する。1705は、スキャンサービスで読み込んだドキュメントの保管するためのファイル名であり、ユーザにより書込み可能である。
【００８５】
本実施形態におけるスキャンサービスは一時的に生成されるワンタイムIDをサービス名として使用しているが、他の検索条件の項目に割り当ててもよいことは言うまでもない。
【００８６】
尚、実施形態２では、サービス名1701及び有効期間1702は画面において書き換え不能としている。
【００８７】
（スキャンサービスの制御例）
図１８は、実施形態２におけるマルチファンクションデバイス上で動作するスキャンサービスの起動から終了までの動作手順例を示すフローチャートである。尚、かかるフローチャートは、スキャンサービスの起動／終了を制御するプログラムの手順を示している。スキャンサービス自体は、下記ステップS1804での起動指示（ドキュメント送信テーブル805aへの登録）、ステップS1806での終了指示（ドキュメント送信テーブル805aからの削除）を参照して実行されるサブルーチンである。
【００８８】
スキャンサービスが起動されると、CPU802は、ステップS1801においてワンタイムID算出アルゴリズム805cを使ってワンタイムIDを生成する。例えば、「0987654321」というキーワードを生成する。ワンタイムIDの生成方法はここでは特に言及しないが、マルチファンクションデバイス101のユーザ名、時刻情報、ランダム値等の組み合わせを用いることにより、他のスキャンサービスとできるだけ重複しないようにすることが重要である。又、より重複を避けるために、ワンタイムIDは、マルチファンクションデバイス101の使用者が入力するキーワードとスキャンサービスが生成するキーワードとの組み合わせにしてもよい。次に、ステップS1802において、CPU802は、図１７に示す画面をマルチファンクションデバイス101のタッチパネル上に表示する。ステップS1801で生成したワンタイムIDはサービス名1701として表示されている。マルチファンクションデバイス101のユーザは、この時点で表示されるサービス名(ワンタイムID)1701を記憶しておく。
【００８９】
次に、ステップS1803において、CPU802はキャンセルボタン1704が押下されたか、OKボタン1703が押下されたかを判断する。図１７のキャンセルボタン1704が押された場合は、CPU802は、スキャンサービスを終了する。一方、OKボタン1703が押された場合は、ステップS1804へ進む。ステップS1804では、CPU802は、スキャンサービスの開始処理を行なう。このとき、ステップS1801で生成したワンタイムIDがスキャンサービスのサービス名として使用される。また、CPU802は、スキャナエンジン813でドキュメントデータの読み込みが行われるようにスキャナ制御ユニット801を制御する。その後、ステップS1805において、CPU802は、有効期限が経過したかどうかを判断する。有効期限が経過した場合は、CPU802は、ステップS1806において、読み込まれたドキュメントデータを削除して、スキャンサービスの終了処理を行う。
【００９０】
尚、ユーザが記憶し図２１の画面で入力するサービス名をワンタイムIDとして説明したが、「0987654321」という１０桁の数字もユーザが記憶して置くのは大変である。ユーザが記憶し図２１の画面で入力するサービス名として、ワンタイムIDの算出途中で生成されたデータあるいはワンタイムIDの算出元となるデータであってユーザが記憶し易いデータが用いられても良い。この場合は、ワンタイムIDの算出途中で生成されたデータあるいはワンタイムIDの算出元となるデータが図１７の画面でサービス名として表示される。そして、以下の図１９のステップS1902で示すように、PC102から取得したサービス名を元にマルチファンクションデバイス101で最終的なワンタイムIDを算出して、生成されたワンタイムIDとの一致を判定してもよい。又、有効期限については特に言及しないが、予めユーザが設定できるようにしてもよいし、特に有効期限を持たなくてもよい。
【００９１】
（スキャンサービスの問合わせ応答手順例）
図１９は、PC102から送信されたサービス名に対応するスキャンサービスがマルチファンクションデバイス101で実行中か否かを判定して、応答する手順例を示すフローチャートである。
【００９２】
まず、ステップS1901で、CPU802は、受信したマルチキャスト検索パケットからサービス名を取得する。図２１の画面で入力されるべきサービス名がワンタイムIDそのものであるとして設計された場合はステップS1903に進む。ステップS1903では、CPU802は、ステップS1901で取得されたサービス名とステップS1801で生成されたワンタイムIDとを比較して、ステップS1901で取得されたサービス名と同じサービス名を有するスキャンサービスを検索する。同じサービス名を有するスキャンサービスが見つかれば、CPU802は、ステップS1904で、スキャンサービス有りを示す情報とサービス名（ワンタイムID）とを含む検索応答パケットを返信する。尚、この検索応答パケットにはそのスキャンサービスを実行しているマルチファンクションデバイス101のネットワークにおけるアドレス（例えば、IPアドレスなど）が含まれるのは、当然である。一方、同じサービス名を有するスキャンサービスが見つからなければ、返信をせずに終了する、あるいは、ステップS1905で、CPU802が、有効期間切れなどのステータス情報を返してもよい。
【００９３】
図２１の画面で入力されるべきサービス名がワンタイムIDを算出する途中で生成されたデータや算出元のデータであるとして設計された場合は、ステップS1902が実行される。ステップS1902では、CPU802は、取得したサービス名とワンタイムID算出アルゴリズム805cとに基づいてワンタイムIDを算出する。ステップS1903では、CPU802は、ステップS1902で算出されたワンタイムIDをサービス名としているスキャンサービスを検索する。
【００９４】
＜実施形態２のPCの動作例＞
（PCのソフトウェア構成例）
図２０は、実施形態２におけるPC上で動作するネットワークストレージサービス関連のソフトウェア構成例を示すブロック図である。尚、図２０ではPC102として説明する。又、実施形態１と同じ機能を果たすモジュールには同じ参照番号を付する。
【００９５】
2003は、ストレージサービス制御部であり、PC102上で動作するストレージサービスの全体の動作を制御するソフトウェアモジュールである。401は、ワンタイムID生成部であり、ストレージサービス起動時に、一時的な識別子としてワンタイムIDを生成するソフトウェアモジュールである。本実施形態のストレージサービスは、ワンタイムID生成部で生成されたワンタイムID又はユーザが入力したワンタイムIDをサービス名として使用する。402は、画面制御部であり、PC102が持つ表示部のディスプレイ上にストレージサービスを制御するための各種画面(ウィンドウ)を表示するためのソフトウェアモジュールである。
【００９６】
2004は、ドキュメントファイル検索制御部であり、検索条件を指定してスキャンサービスを検索するためのソフトウェアモジュールである。405は、オペレーション制御部である。すなわち、クライアントからストレージサービスに対する各種指示の解析し、ストレージサービス制御部403に通知するとともに、ストレージサービス制御部403からの指示により応答を返すソフトウェアモジュールである。例えば、クライアントからのファイルの書き込みオペレーションやファイルの削除オペレーションを解析するモジュールである。406は、通信制御部であり、TCP/IPプロトコルを制御するソフトウェアモジュールであり、クライアントとストレージサービスとの間のTCP/IP通信制御を司る。
【００９７】
（PCの表示画面例）
図２１は、実施形態２におけるPC上で動作するストレージサービスを起動したときに表示されるスキャンサービス検索画面の例を示す図である。
【００９８】
2101は検索条件としてサービス名を入力するフィールドである。図２１の例では、ユーザは、サービス名として、図１７の画面で表示された「0987654321」を入力している。
【００９９】
2102は検索開始ボタンであり、ユーザがこのボタンを押すと、マルチファンクションデバイス101は、入力したサービス名2101を持つネットワーク上のスキャンサービスの検索を開始する。
【０１００】
2103はキャンセルボタンであり、ユーザはスキャンサービスの検索を中止したい場合はこのボタンを押す。
【０１０１】
図２２及び図２３は、実施形態２におけるPC102の表示部に表示されるスキャンサービスの検索結果画面の例を示す図である。図２２は、スキャンサービスが見つかった場合の例であり、図２３はスキャンサービスが何も見つからなかった場合の例である。
【０１０２】
図２２においては、サービス名が「0987654321」である１つのスキャンサービスが検索により見つかったことを示している。ユーザはこのサービスを選択してOKボタン2203を押すことにより、以後、このサービスに対してファイルの読み出しや削除などのファイル操作を行うことができる。尚、複数のスキャンサービスが検索により見つかった場合は、ユーザは選択ボタン2202で所望のスキャンサービスを選択してOKボタン2203を押す。スキャンサービスへのスキャンしたドキュメントデータの読み出しが無ければ、あるいは終われば、ユーザはキャンセルボタン2204を押すことにより終了する。
【０１０３】
（ストレージサービスの制御例）
図２４は、実施形態２におけるPC上で動作するストレージサービスの起動から終了までの動作手順例を示すフローチャートである。尚、かかるフローチャートは、ストレージサービスの起動／終了を制御するプログラムの手順を示している。ストレージサービス自体は、下記ステップS2405での起動指示（ストレージサービス実行テーブル305aへの登録）、ステップS2407での終了指示（ストレージサービス実行テーブル305aからの削除）を参照して実行されるサブルーチンである。
【０１０４】
ストレージサービスが起動されると、CPU302は、ステップS2401において図２１の画面を表示し、ユーザによって入力されたサービス名（ワンタイムID）を取得する。例えば、「0987654321」というキーワードを取得する。次に、ステップS2402では、CPU302は、かかるサービス名を有するマルチキャスト検索パケットを送信することで、起動時にそのサービス名を割り振られたスキャンサービスを検索する。
【０１０５】
検索応答パケットがあれば、ステップS2403で、CPU302は、検索応答パケットからサービス名とマルチファンクションデバイスのＩＰアドレスとを取得して、図２２の検索結果を表示部のディスプレイに表示する。検索応答パケットが無ければ、CPU302は図２３の検索結果を、表示部のディスプレイに表示する。
【０１０６】
次に、ステップS2404において、CPU302は、サービスが選択されてかつOKボタン2203が押されたか、キャンセルボタン2204が押されたかを判断する。図２２のキャンセルボタン2204が押された場合は、CPU302は、ストレージサービスを終了する。一方、サービスが選択されてOKボタン2203が押された場合は、ステップS2405へ進む。ステップS2405では、CPU302は、ストレージサービスの開始処理を行ない、選択されたスキャンサービスを起動しているマルチファンクションデバイスのＩＰアドレスに基づいて、選択されたスキャンサービスにアクセスする。そして、CPU302は、選択されたスキャンサービスに対するファイルの読み出しや削除などのファイル操作を行う。なお、選択されたスキャンサービスを起動しているマルチファンクションデバイスを識別するために、ＩＰアドレス等のアドレス情報が使用されている。が、マルチファンクションデバイスを識別するその他の識別情報が使用されても良い。例えば、その他の識別情報の一例としてＵＲＬ（Uniform Resource Locator）やホスト名が挙げられる。
【０１０７】
その後、ステップS2406において、CPU302は、ユーザから終了が指示されたかどうかを判断する。ユーザから終了が指示された場合は、CPU302は、ステップS2407においてストレージサービスの終了処理を行う。
【０１０８】
＜サービス名の他例＞
上記、算出した最終的なワンタイムIDでないサービス名の例を図２５に示す。図２５は、マルチファンクションデバイス101におけるPCのストレージサービスの検索時の例である（実施形態１の図１１に相当）。尚、他の検索時に設定するサービス名についても同様であるので、ここでは説明しない。
【０１０９】
2501aは、ユーザ名の入力領域、2501bは、パスワードの入力領域、2501cは、キーワードの入力領域である。このような入力情報であれば、ユーザ名やパスワードはユーザが常に記憶している情報である。又、例えばキーワードをストレージサービス起動の日付や時間、場所（所属部署）などとすればよい。
【０１１０】
これらサービス名を受信したPCは、自身が記憶するワンタイムID算出アルゴリズムでこれらサービス名からワンタイムIDを算出して、同じワンタイムIDを割り振られたストレージサービスを検索する。更に、起動された各ストレージサービスに起動時間などを記憶して置けば、入力するサービス名をユーザの記憶し易い更に簡略化した情報にしても、本発明におけるストレージサービスの検索（起動したPCの識別）の信頼度を達成できる。
【０１１１】
尚、上記実施形態の説明の最初にも記載したように、実施形態１と２をそれぞれ独立に説明した。しかし、これらの制御を組み合わせることによって、あるいは本発明の技術思想の範囲内で更なる変形により、同様に簡単な操作で転送元から転送先に誤り無く行なうことができるのは明らかであり、これらも本発明に含まれる。
【０１１２】
又、本発明は、複数の機器（例えばホストコンピュータ、インタフェース機器、プリンタなど）から構成されるシステムあるいは統合装置に適用しても、ひとつの機器からなる装置に適用してもよい。
【０１１３】
又、本発明の目的が、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給することによって、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。又、コンピュータが読み出したプログラムコードの指示に基づき、オペレーティングシステム（OS）などが実際の処理の一部または全部を行い、前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１１４】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれる。その後、そのプログラムコードの指示に基づき、機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１１５】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【０１１６】
【図１】本実施形態のネットワークストレージサービスが動作するPCとネットワーク接続機能を持つマルチファンクションデバイスとがLANに接続しているネットワークの一例を示す概略図である。
【図２】実施形態１におけるストレージサービス起動から、ストレージサービスの検索、検索結果表示、ファイル操作、ストレージサービス停止までの流れを示した動作フロー図である。
【図３Ａ】本実施形態におけるPCの概略構成例を示すブロック図である。
【図３Ｂ】本実施形態におけるPCの記憶構成例を示す図である。
【図４】実施形態１におけるPC上で動作するネットワークストレージサービスのソフトウェアの構成例を示すブロック図である。
【図５】実施形態１におけるPCでストレージサービスを起動したときに表示される表示画面例を示す図である。
【図６】実施形態１におけるPC上で動作するストレージサービスの起動から終了までの動作例を示すフローチャートである。
【図７】実施形態１におけるPC上で動作するストレージサービスの問合わせに対する動作例を示すフローチャートである。
【図８Ａ】本実施形態におけるマルチファンクションデバイスの概略構成例を示すブロック図である。
【図８Ｂ】本実施形態におけるマルチファンクションデバイスの記憶構成例を示す図である。
【図９】本実施形態におけるマルチファンクションデバイスが所有するユーザインターフェース部分の例を示す図である。
【図１０】実施形態１におけるマルチファンクションデバイス上のドキュメント送信機能を司るソフトウェアの構成例を示すブロック図である。
【図１１】実施形態１におけるマルチファンクションデバイスのタッチパネルに表示されるストレージサービス検索指示の表示画面例を示す図である。
【図１２】実施形態１におけるマルチファンクションデバイスのタッチパネルに表示されるストレージサービスの検索結果の表示画面例を示す図である。
【図１３】実施形態１におけるマルチファンクションデバイスのタッチパネルに表示されるストレージサービスの検索結果の表示画面例を示す図である。
【図１４】実施形態１におけるマルチファンクションデバイス上で動作するスキャンサービスの動作例を示すフローチャートである。
【図１５】実施形態２におけるスキャンサービス起動から、ストレージサービス起動、スキャンサービスの検索、検索結果表示、ファイル操作、ストレージサービス停止までの流れを示した動作フロー図である。
【図１６】実施形態２におけるマルチファンクションデバイス上のドキュメント送信機能を司るソフトウェアの構成例を示すブロック図である。
【図１７】実施形態２におけるマルチファンクションデバイスでスキャンサービスを起動したときに表示される画面例を示す図である。
【図１８】実施形態２におけるマルチファンクションデバイス上で動作するスキャンサービスの起動から終了までの動作例を示すフローチャートである。
【図１９】実施形態２におけるマルチファンクションデバイス上で動作するスキャンサービスの問合わせに対する動作例を示すフローチャートである。
【図２０】実施形態２におけるPC上で動作するネットワークストレージサービスのソフトウェアの構成例を示すブロック図である。
【図２１】実施形態２におけるPCでストレージサービスを起動したときに表示される表示画面例を示す図である。
【図２２】実施形態２におけるPCの表示部に表示されるスキャンサービスの検索結果の表示画面例を示す図である。
【図２３】実施形態２におけるPCの表示部に表示されるスキャンサービスの検索結果の表示画面例を示す図である。
【図２４】実施形態２におけるPC上で動作するストレージサービスの起動から終了までの動作例を示すフローチャートである。
【図２５】本実施形態における他のサービス名の例を示す図である。
【図１】
0004748792.tif 000002
【図２】
0004748792.tif 000003
【図３Ａ】
0004748792.tif 000004
【図３Ｂ】
0004748792.tif 000005
【図４】
0004748792.tif 000006
【図５】
0004748792.tif 000007
【図６】
0004748792.tif 000008
【図７】
0004748792.tif 000009
【図８Ａ】
0004748792.tif 000010
【図８Ｂ】
0004748792.tif 000011
【図９】
0004748792.tif 000012
【図１０】
0004748792.tif 000013
【図１１】
0004748792.tif 000014
【図１２】
0004748792.tif 000015
【図１３】
0004748792.tif 000016
【図１４】
0004748792.tif 000017
【図１５】
0004748792.tif 000018
【図１６】
0004748792.tif 000019
【図１７】
0004748792.tif 000020
【図１８】
0004748792.tif 000021
【図１９】
0004748792.tif 000022
【図２０】
0004748792.tif 000023
【図２１】
0004748792.tif 000024
【図２２】
0004748792.tif 000025
【図２３】
0004748792.tif 000026
【図２４】
0004748792.tif 000027
【図２５】
0004748792.tif 000028