(57)【特許請求の範囲】
【請求項１】
情報機器の操作のための操作処理装置であって、
前記情報機器に処理を行なわせるスクリプトの組み込まれたＷｅｂページを当該操作処理装置のディスプレイによって表示する表示手段と、
前記Ｗｅｂページが表示されている状態において当該スクリプトを実行するスクリプト実行手段と、
前記スクリプトの実行中に前記Ｗｅｂページの表示の終了を指示する操作が行なわれたときに、当該操作に従って前記Ｗｅｂページの表示を終了させる表示終了手段と、
前記表示終了手段によって前記Ｗｅｂページの表示が終了されるときに、前記スクリプト実行手段から前記スクリプトを引き継いで実行するスクリプト継続実行手段と、を備える
ことを特徴とする操作処理装置。
【請求項２】
前記スクリプト継続実行手段は、前記スクリプトが前記情報機器に当該操作処理装置が複数の処理を順に行なわせるスクリプトである場合は、当該スクリプトにおける前記スクリプト実行手段によって実行されている部分が、前記複数の処理のうちの実行順位が１位ではない設定された順位以降の順位のいずれかである処理に対応するのであれば、前記スクリプトを引き継いで実行する
請求項１記載の操作処理装置。
【請求項３】
前記スクリプト継続実行手段は、前記スクリプトが前記情報機器に当該操作処理装置が複数の処理を順に行なわせるスクリプトである場合に前記スクリプトを引き継いで実行する
請求項１記載の操作処理装置。
【請求項４】
前記表示終了手段は、前記スクリプト継続実行手段によって前記スクリプトが実行されるときに、当該スクリプトが継続されていることをユーザーに知らせるウィンドウを前記ディスプレイに表示させ、当該スクリプトの実行が完了したときに当該ウィンドウの表示を終了させる
請求項１ないし３のいずれかに記載の操作処理装置。
【請求項５】
情報機器の制御方法であって、
前記情報機器が接続されるネットワーク上の情報処理装置に備わるＷｅｂブラウザが、指定された処理を前記情報機器に行なわせるスクリプトが組み込まれたＷｅｂページを前記ネットワーク上のサーバーから取得し、
前記Ｗｅｂブラウザが、取得した前記Ｗｅｂページを前記情報処理装置のディスプレイによって表示し、
前記Ｗｅｂブラウザが、前記スクリプトに関連付けられた操作が行なったことを契機として前記スクリプトを実行し、
前記Ｗｅｂブラウザが、前記スクリプトの実行中に前記Ｗｅｂページの表示の終了を指示する操作が行なわれたときに、前記Ｗｅｂページの表示を終了しかつ前記スクリプトの実行を継続する
ことを特徴とする情報機器の制御方法。
【請求項６】
情報機器の操作のための装置において実行されるコンピュータープログラムであって、
前記装置が有するコンピューターに、
前記情報機器に処理を行なわせるスクリプトの組み込まれたＷｅｂページを前記装置のディスプレイによって表示する表示処理と、
前記Ｗｅｂページが表示されている状態において当該スクリプトを実行するスクリプト実行処理と、
前記スクリプトの実行中に前記Ｗｅｂページの表示の終了を指示する操作が行なわれたときに、当該操作に従って前記Ｗｅｂページの表示を終了する表示終了処理と、
前記表示終了処理によって前記Ｗｅｂページの表示が終了されるときに、前記スクリプト実行処理から前記スクリプトを引き継いで実行するスクリプト継続実行処理と、を実行させる
ことを特徴とするコンピュータープログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、Ｗｅｂブラウザを用いて情報機器を制御する技術に関する。
【背景技術】
【０００２】
複合型の情報機器であるＭＦＰ（Multi-functional Peripheral）のリモートアクセスにＷｅｂ技術が用いられている。リモートアクセスされるＭＦＰは、ユーザーが直接に操作するユーザー端末とネットワークを介して接続される。ユーザー端末として用いられるパーソナルコンピューターおよびスマートフォンといった情報機器にはＷｅｂブラウザが備わっている。
【０００３】
ユーザー端末のＷｅｂブラウザは、ネットワーク上のサーバーからリモートアクセス用のＷｅｂページを取得して表示する。ユーザーが機能の選択や動作設定といった入力操作をすると、入力された情報がサーバーに通知され、操作に応じたコンテンツがサーバーからＷｅｂブラウザに送られる。Ｗｅｂブラウザは送られてきたコンテンツを直ちに表示する。表示は操作に応じて逐次に切り替わる。ユーザーが処理の実行を指示する操作をすると、サーバーがユーザーの指定した処理を行なわせるジョブを作成してＭＦＰに与え、ＭＦＰがジョブを実行する。
【０００４】
リモートアクセス用のＷｅｂページに、ＭＦＰに所定の処理を実行させるスクリプトを組み入れておく技術がある（特許文献１）。ユーザー端末においてユーザーがＷｅｂブラウザに対して例えばスクリプトの関連付けられているボタンを選択するといった特定の操作をすると、スクリプトが実行されてユーザー端末からＭＦＰへ処理の実行が指示される。
【０００５】
また、スクリプトによって開始されたジョブが実行されている間、Ｗｅｂブラウザに対するユーザーによる画面遷移の指示の受付を制限することが提案されている（特許文献２）。この提案によると、スクリプトの関連付けられた画面が他の画面に遷移することでスクリプトが失われ、それによってジョブの制御ができなくなってしまうのを防ぐことができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−３８３３号公報
【特許文献２】特開２０１１−１４２６０８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
従来では、Ｗｅｂページに組み込まれたスクリプトによって制御される処理を完結させたいユーザーに対して、スクリプトの実行が終了するまでＷｅｂブラウザに対する操作が制限されるという問題があった。すなわち、スクリプトを中断させてしまう操作である、Ｗｅｂブラウザ自体を終了させる操作および別のＷｅｂページへ表示を遷移させる操作をすることができなかった。
【０００８】
このため、１つの処理の実行を指示した後、その実行が終わるまで次の処理の設定をしたりその実行を指示したりすることができなかった。
【０００９】
本発明は、このような事情に鑑み、スクリプトの実行の完了を待たずにユーザーが当該スクリプトの組み込まれたＷｅｂページの表示を終了させることができる操作環境を実現することを目的としている。
【課題を解決するための手段】
【００１０】
上記目的を達成する装置は、情報機器の操作のための操作処理装置であって、前記情報機器に処理を行なわせるスクリプトの組み込まれたＷｅｂページを当該操作処理装置のディスプレイによって表示する表示手段と、前記Ｗｅｂページが表示されている状態において当該スクリプトを実行するスクリプト実行手段と、前記スクリプトの実行中に前記Ｗｅｂページの表示の終了を指示する操作が行なわれたときに、当該操作に従って前記Ｗｅｂページの表示を終了させる表示終了手段と、前記表示終了手段によって前記Ｗｅｂページの表示が終了されるときに、前記スクリプト実行手段から前記スクリプトを引き継いで実行するスクリプト継続実行手段と、を備える。
【発明の効果】
【００１１】
本発明によれば、Ｗｅｂブラウザを用いて行なう情報機器の操作に際して、スクリプトの実行の完了を待たずにユーザーは当該スクリプトの組み込まれたＷｅｂページの表示を終了させる操作をすることができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態に係るＭＦＰを有するネットワークの例を示す図である。
【図２】ＭＦＰのハードウェア構成の概略を示す図である。
【図３】ユーザー端末のハードウェア構成の概略を示す図である。
【図４】Ｗｅｂサーバーの機能構成を示す図である。
【図５】Ｗｅｂブラウザの機能構成を示す図である。
【図６】Ｗｅｂブラウザによって開かれるウィンドウの構成およびウィンドウ内に表示される操作画面の第１例を示す図である。
【図７】スクリプトが実行中に表示される子ウィンドウの例を示す図である。
【図８】Ｗｅｂブラウザによって表示される操作画面の第２例を示す図である。
【図９】Ｗｅｂブラウザによって表示される操作画面の第３例を示す図である。
【図１０】Ｗｅｂブラウザによって表示される操作画面の第４例を示す図である。
【図１１】レンダリングエンジンの動作を示すフローチャートである。
【図１２】スクリプトエンジンの第１実行部の動作を示すフローチャートである。
【図１３】スクリプトエンジンの第２実行部の動作を示すフローチャートである。
【図１４】第２実行部が実行する判定ルーチンのフローチャートである。
【図１５】判定ルーチンに関わる順位ｋの設定例を示す図である。
【図１６】第２実行部が実行する継続実行ルーチンのフローチャートである。
【図１７】リモートアクセスの第１例を示すシーケンス図である。
【図１８】リモートアクセスの第２例を示すシーケンス図である。
【図１９】判定ルーチンの変形例のフローチャートである。
【図２０】継続実行ルーチンの変形例のフローチャートである。
【図２１】ＭＦＰの要部の機能構成の他の例を示す図である。
【発明を実施するための形態】
【００１３】
本発明の実施形態に係る情報機器としてＭＦＰを挙げる。ＭＦＰは、オフィスワークに有用な複数の機能を集約した複合型の情報機器である。
【００１４】
図１に例示されるＭＦＰ１は、企業のオフィスに構築されたＬＡＮ（Local Area Network）７に接続され、複数のユーザーによって共用される。ＬＡＮ７には、１以上のユーザー端末３を含む各種の情報機器が接続される。図１では、ユーザー端末３としてラップトップ型（ノート型）のパーソナルコンピューター４，５およびタブレット６が描かれている。ＭＦＰ１は、ＬＡＮ７上の情報機器およびＬＡＮ７に接続される他のネットワーク上の情報機器との通信が可能である。また、ＭＦＰ１は公衆電話回線に接続されることによって、公衆電話回線を用いるファクシミリ通信を行なうことができる。
【００１５】
ＭＦＰ１は、ＭＦＰ１の操作の関わるＷｅｂサーバー２００を備えている。Ｗｅｂサーバー２００は、ユーザー端末３上のＷｅｂブラウザからのアクセスに応じて、操作画面ととして表示されることになるＷｅｂページをユーザー端末３に送信する。ユーザー端末３上のＷｅｂブラウザがＷｅｂサーバー２００から送られてきたＷｅｂページをユーザー端末３に備わるディスプレイに表示させ、これによってユーザー端末３を用いるリモートアクセス環境がユーザーに提供される。
【００１６】
また、Ｗｅｂサーバー２００は、ＭＦＰ１上で稼働するＷｅｂブラウザからのアクセスに対して、ユーザー端末３からのアクセスと同様に応答する。ＭＦＰ１上のＷｅｂブラウザは、ＭＦＰ１に備え付けられている操作パネルのタッチパネルディスプレイに、Ｗｅｂサーバー２００から取得したＷｅｂページを表示させる。
【００１７】
図２はＭＦＰのハードウェア構成の概略を示している。
【００１８】
ＡＤＦ（Auto Document Feeder）１４は、ユーザーによってセッティングされた原稿シートをイメージスキャナー１５の読取り位置へ搬送する。イメージスキャナー１５は、搬送された原稿シートに記録されている画像を光学的に読み取る。プリンターエンジン１６は、コピー、プリントおよびファクシミリ受信において、例えば電子写真法によって画像を用紙に印刷する。印刷方法はインクジェット法または他の方法であってもよい。
【００１９】
操作パネル１７は、タッチパネルディスプレイを有している。操作パネル１７のタッチパネルディスプレイはフリックおよびマルチタッチ操作を検出することができる。
【００２０】
通信インタフェース１８は、ＭＦＰ１と外部装置との通信を可能にする。通信インタフェース１８は、ＭＦＰ１をＬＡＮ７に通信可能に接続するネットワーク・インタフェース・カード（ＮＩＣ）、および公衆電話回線によるファクシミリ通信のためのモデムを含んでいる。
【００２１】
ストレージ１９は例えばハードディスクドライブであり、アプリケーションプログラムや設定データの保存、およびデータ処理におけるデータの一時的な記憶に用いられる。Ｗｅｂサーバー２００の機能を実現するサーバー用のアプリケーションプログラム２００Ｐがストレージ１９に記憶される。他にも、ユーザー認証に際して参照される登録ユーザー情報、ファクシミリやデータ送信の宛先の登録情報もストレージ１９に記憶される。
【００２２】
ストレージ１９のメモリエリアの一部分１９０は、ボックス（ＢＯＸ）と呼ばれる文書保存エリアとして利用される。通常、個々のユーザーに割り当てられる個人ボックス（ユーザーボックスとも呼ばれる）および複数のユーザーが共有する共通ボックスといった複数のボックスがストレージ１９内に設けられる。複数のボックスは所定の識別子（例えばボックス名またはボックス番号）によって特定される。
【００２３】
ＭＦＰ１の制御を統括するメインコントローラー１０は、各種のプログラムを実行するコンピューターとしてのＣＰＵ１１、ＭＦＰ１の多様な機能を実現するための組み込みプログラムを含むソフトウェアを記憶するＲＯＭ（Read Only Memory）１２、およびプログラム実行のワークエリアとして使用されるＲＡＭ（Random Access Memory）１３を有する。
【００２４】
図３はユーザー端末のハードウェア構成の概略を示している。ユーザー端末３は、ＣＰＵ３１、ＲＯＭ３２、ＲＡＭ３３、ストレージ３４、操作入力部３５、ディスプレイ３６、および通信インタフェース３７を備える。
【００２５】
ＣＰＵ３１は、ＲＯＭ３２またはストレージ３４に格納されているプログラムをＲＡＭ３３にロードして実行する。ストレージ３４は、ハードディスクドライブまたはソリッドステートドライブ（ＳＳＤ：Solid State Drive）であり、ブラウジング用のプログラム３００Ｐを記憶することができる。このプログラム３００Ｐは、所定のサーバーからのダウンロード、またはリムーバブルメディアからのインストールによってストレージ３４に格納することができる。ＣＰＵ３１がプログラム３００Ｐを実行することによって実現されるＷｅｂブラウザが、後述するＷｅｂブラウザ３００である。
【００２６】
操作入力部３５は、ユーザーの操作に応じた信号を出力する１以上の入力デバイスを備える。例えば、ユーザー端末３がラップトップ型のパーソナルコンピューター４または５である場合、キーボードおよびポインティングデバイスとしてのタッチパッドが操作入力部３５に含まれる。ユーザー端末３がデスクトップ型のパーソナルコンピューターである場合、一般にキーボードおよびマウスが操作入力部３５に含まれる。ユーザー端末３がタブレット５である場合、タッチパネルディスプレイが操作入力部３５に含まれる。また、音声による操作を受け付ける構成のユーザー端末３では、マイクロフォンが操作入力部３５に含まれる。
【００２７】
ディスプレイ３６は、液晶パネル、有機エレクトロルミネッセンスパネル、または画面表示の可能な他のデバイスである。ユーザー端末３がデスクトップ型のパーソナルコンピューターである場合、一般に、ディスプレイ３６はＣＰＵ３１を備える本体と別体であって、外部接続ケーブルを介して本体と接続される。
【００２８】
通信インタフェース３７は、有線通信のためのデバイスおよび無線通信のためのデバイスを備える。無線通信にはＷＬＡＮ（Wireless Local Area Network）の規格に準拠した通信、およびＢｌｕｅｔｏｏｔｈ（登録商標）の規格に準拠した通信が含まれる。
【００２９】
図４はＷｅｂサーバーの機能構成を示し、図５はＷｅｂブラウザの機能構成を示している。図４および図５では、ＭＦＰ１の操作の態様としてユーザー端末３によるリモートアクセスが想定されており、ユーザー端末３がＭＦＰ１の操作のためのＷｅｂページ５０を表示する操作処理装置となる。
【００３０】
図４に示されるように、ＭＦＰ１に設けられたＷｅｂサーバー２００は、通信部２０１、リクエスト処理部２０２、およびレスポンス生成部２０３を備える。これらの要素は、ＣＰＵ１１がサーバー用のアプリケーションプログラム２００Ｐを実行することによって実現される機能要素である。アプリケーションプログラム２００ＰはＭＦＰ１に電源が投入されたときに自動的に起動される。ＭＦＰ１に電源が投入されている間、Ｗｅｂサーバー２００はユーザー端末３からの随時のアクセスに応答する。
【００３１】
通信部２０１は、ＨＴＴＰ（Hypertext Transfer Protocol）を含む所定のプロトコルを用いてユーザー端末３のＷｅｂブラウザ３００と通信する。通信部２０１は、Ｗｅｂサーバー２００宛てに送られてきたデータを受信し、リクエスト処理部２０２から引き渡されるＷｅｂブラウザ３００宛てのレスポンスをユーザー端末３へ送信する。
【００３２】
リクエスト処理部２０２は、通信部２０１が受信したデータからＷｅｂブラウザ３００からのリクエストを抽出してレスポンス生成部２０３に引き渡す。そして、リクエスト処理部２０２は、レスポンス生成部２０３によって生成されたレスポンスを通信部２０１に引き渡してユーザー端末３へ送信させる。
【００３３】
なお、レスポンス生成部２０３に引き渡すリクエストおよびレスポンス生成部２０３が生成するレスポンスにリクエストの送信元を特定する情報を含めておくことにより、複数のユーザー端末３のそれぞれからのリクエストに対してそれぞれに対応するレスポンスを正しくリクエストの送信元に返すことができる。
【００３４】
レスポンス生成部２０３は、リクエスト処理部２０２から入力されるリクエストに応じたレスポンスを生成してリクエスト処理部２０２に引き渡す。リクエストがＷｅｂページのデータの送信を求めるものである場合、レスポンス生成部２０３は求められたＷｅｂページのデータをレスポンスとして生成する。Ｗｅｂページのデータは、文書の構造をＨＴＭＬ（Hypertext Markup Language）で記述したＨＴＭＬファイルに、必要に応じて図表ファイルおよび写真ファイルといったコンテンツファイルを付属させたデータである。なお、Ｗｅｂページの文書の構造を記述するマークアップ言語として、ＨＴＭＬに代えてＸＭＬ（Extensible Markup Language）を用いてもよい。
【００３５】
あらかじめストレージ１９には操作画面となる各種のＷｅｂページを構成するコンテンツのデータベース２００Ｃが記憶されており、レスポンス生成部２０３はこのデータベース２００Ｃに登録されたコンテンツを公知の手法を用いて組み合わせることによってＷｅｂページのデータを生成する。
【００３６】
求められたＷｅｂページがスクリプトを組み込むものである場合、レスポンス生成部２０３は、例えばJavaScript（登録商標）で記述したスクリプトを実行させるＨＴＭＬファイルを生成する。スクリプトには、入力のエラーをチェックしたりボタンがクリックされたときにボタンの色を変えたりするいわゆるクライアントサイドスクリプトの他に、例えばユーザーによって指定される処理をユーザー端末３がＭＦＰ１に実行させるもの（これを「ＭＦＰ制御スクリプト」と呼称する）がある。
【００３７】
図５（Ａ）に示されるように、ユーザー端末３のＷｅｂブラウザ３００は、通信部３０１、レンダリングエンジン３０２、およびスクリプトエンジン３０３を有している。これらの要素は、ＣＰＵ３１がブラウジング用のプログラム３００Ｐを実行することによって実現される機能要素である。プログラム３００Ｐは、例えば、ユーザー端末３を使用するユーザーが起動を指示したときにオペレーティングシステムによって起動される。
【００３８】
通信部３０１は、ＨＴＴＰを含む所定のプロトコルを用いてＭＦＰ１のＷｅｂサーバー２００と通信する。通信部３０１は、レンダリングエンジン３０２から引き渡されるＷｅｂサーバー２００宛てのリクエストをＭＦＰ１へ送信し、Ｗｅｂブラウザ３００宛てに送られてきたデータを受信する。また、通信部３０１は、スクリプトエンジン３０３からのＭＦＰ１に対する指示をＭＦＰ１へ送信する。
【００３９】
レンダリングエンジン３０２は、ディスプレイ３６にＷｅｂページを表示させる表示処理部の役割をもつ。以下、レンダリングエンジン３０２が表示させる各種のＷｅｂページを総称してＷｅｂページ５０という。レンダリングエンジン３０２は、Ｗｅｂブラウザ３００の起動時に、あらかじめホームページに定められているＷｅｂページ５０を表示させる。その後、ユーザーによる操作に応じて表示内容を変更する。
【００４０】
レンダリングエンジン３０２は、表示すべきＷｅｂページ５０の送信を求めるリクエストを通信部３０２を介してＷｅｂサーバー２００に送る。そして、レンダリングエンジン３０２は、リクエストに対するレスポンスとして受け取ったＨＴＭＬの記述を解釈してＷｅｂページ５０を表わすページ画像データを作成する。このページ画像データに基づいてＷｅｂページ５０がディスプレイ３６によって表示される。
【００４１】
スクリプトエンジン３０３は、レンダリングエンジン３０２が受け取るＨＴＭＬファイルに含まれるスクリプトを実行する。スクリプトに従ってスクリプトエンジン３０３からＭＦＰ１へ通信部３０１を介して動作の指示が与えられる。図５（Ｂ）に示されるように、スクリプトエンジン３０３は、第１実行部３１０と第２実行部３２０とを有する。
【００４２】
第１実行部３１０は、ＭＦＰ制御スクリプトを含む何らかのスクリプトの組み込まれたＷｅｂページ５０が表示されている状態において、当該スクリプトを実行する。第２実行部３２０は、ＭＦＰ制御スクリプトの実行中に当該ＭＦＰ制御スクリプトの組み込まれたＷｅｂページ５０の表示を終了させる表示変更が行なわれるときに、第１実行部３１０から当該ＭＦＰ制御スクリプトを引き継いで実行する。
【００４３】
次に、ＭＦＰ１に対するユーザー端末３によるリモートアクセスにおいてユーザー端末３上のＷｅｂブラウザ３００によって表示される操作画面を例示する。操作画面は、ＭＦＰ１の操作のためのＷｅｂページ５０である。
【００４４】
Ｗｅｂブラウザ３００によって開かれるウィンドウの構成が図６に示されている。図６のように、ウィンドウ４０は、上端部に設けられたブラウジング操作エリア４１とブラウジング操作エリア４１の下側の部分であるページ表示エリア４２とを有する。ブラウジング操作エリア４１には、戻すキー４３、進めるキー４４、アドレスバー４５、ホームページキー４７、お気に入りキー４８、および閉じるキー４９などが配置されている。ページ表示エリア４２は、Ｗｅｂサーバー２００または他のＷｅｂサーバーから取得した任意のＷｅｂページ５０を表示するためのエリアである。図６の状態ではページ表示エリア４２にＷｅｂサーバー２００からＷｅｂページ５０として取得される操作画面５０１が表示されている。
【００４５】
Ｗｅｂブラウザ３００は、ページ表示エリア４２に表示するＷｅｂページ５０をユーザーによる操作に応じて遷移させる。詳しくは次のとおりである。なお、ここでの説明では画面上のキーに対する操作がマウス操作であるものとする。
【００４６】
ウィンドウ４０を開いたとき、Ｗｅｂブラウザ３００は、あらかじめホームページに定められているＷｅｂページ５０をページ表示エリア４２に表示させる。ホームページはＷｅｂサーバー２００が管理するＷｅｂページ５０であってもよいし、他の任意のＷｅｂページ５０であってもよい。
【００４７】
ホームページが表示された後、例えばアドレスバー４５に任意のＷｅｂページ５０のＵＲＬ（Uniform Resource Locator）が入力され、操作入力デバイス３５であるキーボードのエンターキーが押下されたとき、Ｗｅｂブラウザ３００は、現在表示されているＷｅｂページ５０に代えて、アドレスバー４５に入力されたＵＲＬで特定されるＷｅｂページ５０を表示させる。また、お気に入りキー４８がクリックされたとき、Ｗｅｂブラウザ３００は、登録されているＷｅｂページ名のリストをポップアップ表示させる。そして、リスト内のいずれかのＷｅｂページ名がクリックされたとき、Ｗｅｂブラウザ３００は、クリックされたＷｅｂページ名に対応するＷｅｂページ５０をページ表示エリア４２に表示させる。
【００４８】
既にＷｅｂページ５０の遷移が１回以上行われた後の状態において、戻すキー４３がクリックされたとき、Ｗｅｂブラウザ３００は、最後に行なった遷移の直前に表示されていたＷｅｂページ５０に戻すようにＷｅｂページ５０を遷移させる。また、進めるキー４４がクリックされたとき、Ｗｅｂブラウザ３００は、戻すキー４３の操作に従って戻した表示を逆に戻すようにＷｅｂページ５０を遷移させる。
【００４９】
ホームページ以外のＷｅｂページ５０が表示されている状態でホームページキー４７がクリックされたとき、Ｗｅｂブラウザ３００は、現在表示されているＷｅｂページ５０からホームページへＷｅｂページ５０を遷移させる。
【００５０】
閉じるキー４９は、ユーザーがウィンドウ４０の表示の終了（すなわちウィンドウ４０を閉じること）を指示するためのキーである。閉じるキー４９がクリックされたとき、Ｗｅｂブラウザ３００はウィンドウ４０を閉じる。ウィンドウ４０を閉じるとディスプレイ３６においてそれまで表示されていたＷｅｂページ５０が消失する。すなわち、ウィンドウ４０を閉じるという表示内容の変更は、Ｗｅｂページ５０の表示を終了させることの一態様である。
【００５１】
このようにＷｅｂブラウザ３００は、ブラウジング操作エリア４１における操作に応じてページ表示エリア４２に表示されるＷｅｂページ５０を遷移させたり、ウィンドウ４０を閉じたりする。ユーザーは、ブラウジング操作エリア４１における操作を、ページ表示エリア４２の表示内容とは無関係に随時に行なうことができる。つまり、ウィンドウ４０が開いている間、ユーザーはいつでもＷｅｂページ５０の遷移を指示することができ、ウィンドウ４０を閉じることを指示することができる。Ｗｅｂページ５０の遷移が行なわれ、またはウィンドウ４０が閉じると、それまで表示されていたＷｅｂページ５０の表示が終了する。したがって、Ｗｅｂページ５０の遷移を指示する操作およびウィンドウ４０を閉じることを指示する操作は、それを行なう時点で表示されているＷｅｂページ５０の表示の終了を指示する操作に相当する。
【００５２】
図６においてページ表示エリア４２に表示されている操作画面５０１は、入力されたファイルをＭＦＰ１内のボックス１９０に保存する処理をＭＦＰ１に行なわせる操作のための画面である。操作画面５０１は、ユーザーのログインが承認されたときに表示される機能選択画面においてボックス処理を選択する操作が行なわれ、それにより表示されるボックス処理選択画面で送信処理が選択された場合に表示される。
【００５３】
操作画面５０１は、保存させたいファイルを指定するための入力エリア７１、保存先のボックスを指定するための入力エリア７２、送信ボタン８１、およびキャンセルボタン８２を有する。そして、操作画面５０１にはＭＦＰ制御スクリプトが組み込まれている。操作画面５０１のＭＦＰ制御スクリプトは、入力エリア７１で指定されたファイルをＭＦＰ１へ送信する処理をユーザー端末３に行なわせるとともに、受信したファイルを入力エリア７２で指定された保存先ボックスへ格納する処理をＭＦＰ１に行なわせるスクリプトである。
【００５４】
ユーザーが所望のファイルを特定するパスを入力エリア７１し、保存先とする個人ボックまたは共通ボックスの識別子を入力エリア７２に入力し、送信ボタン８１をクリックしたとき、ＭＦＰ制御スクリプトが実行される。ＭＦＰ制御スクリプトの実行中にユーザーがキャンセルボタン８２をクリックすると、ＭＦＰ制御スクリプトの実行が中止される。
【００５５】
ユーザーがＭＦＰ制御スクリプトの実行を指示した後、ユーザー端末３のＣＰＵ３１に大きな負荷が掛かっていたりＭＦＰ１がＭＦＰ制御スクリプトの実行指示時点でスリープ状態であったりしたために、ＭＦＰ制御スクリプトの実行が完了するまでに例えば数秒以上の時間を要することがある。したがって、ＭＦＰ制御スクリプトの実行中（実行が指示されてから完了までの期間）に、ユーザーがＷｅｂページ５０の表示の終了を指示する上述の操作を行なうことがあり得る。本実施形態において、Ｗｅｂブラウザ３００のスクリプトエンジン３０３は、上述のとおり第２実行部３２０を備えており、ＭＦＰ制御スクリプトの実行中にユーザーの指示に従ってＷｅｂページ５０を遷移させる場合、およびＭＦＰ制御スクリプトの実行中にウィンドウ４０を閉じる場合に、ＭＦＰ制御スクリプトの実行を継続することができる。
【００５６】
図７はＭＦＰ制御スクリプトが実行中であることを示すお知らせウィンドウの例を示している。図７のお知らせウィンドウ９１は、スクリプトの実行中にユーザーがＷｅｂページ５０の切替えを指示したときに表示される画面であり、ＭＦＰ制御スクリプトに従う処理が進行中であることを知らせる文字列７４を有している。
【００５７】
ＭＦＰ制御スクリプトの実行中にユーザーがＷｅｂページ５０の遷移を指示したとき、Ｗｅｂブラウザ３００はＭＦＰ制御スクリプトが実行されていない場合と同様に、指示に従ってＷｅｂページを遷移させる。このとき、Ｗｅｂブラウザ３００は、現在表示されているＷｅｂページ５０の表示を終了させてよいかどうかをユーザーに尋ねることはしない。それは、例えばユーザーに尋ねるための確認画面を表示すると、ユーザーが自己の操作に誤りがあったとか、ＭＦＰ制御スクリプトに従う処理にエラーが生じたとかというような誤解をしてしまうおそれがあるからである。また、ユーザーに尋ねることは返答を入力する手間を強いることになるからである。
【００５８】
お知らせウィンドウ９１は、ＭＦＰ制御スクリプトの実行中にユーザーの指示に従って遷移した後のＷｅｂページ５０をできるだけ隠さないように、例えばページ表示エリア４２の下端部に遷移後のＷｅｂページ５０に重ねて表示される。ウィンドウ４０がディスプレイ３６の表示面よりも小さい場合、ウィンドウ４０の外側にお知らせウィンドウ９１を表示するようにしてもよい。お知らせウィンドウ９１は、ＭＦＰ制御スクリプトの実行中に閉じるキー４９がクリックされてウィンドウ４０が閉じた場合にも表示される。いずれの場合も、ＭＦＰ制御スクリプトの実行が完了したときに、お知らせウィンドウ９１は閉じられる。
【００５９】
図８は、Ｗｅｂブラウザによって表示される操作画面の第２例を示している。図８の操作画面５０２は図６の操作画面５０１の変形例である。操作画面５０２には図６の操作画面５０１と同様の要素である入力エリア７１，７２、送信ボタン８１、およびキャンセルボタン８２が配置されており、送信ボタン８１によって実行が指示されるＭＦＰ制御スクリプトが組み込まれている。
【００６０】
操作画面５０２と操作画面５０１との相違点は、操作画面５０２がログアウトボタン８３を有する点である。ログアウトボタン８３がクリックされたとき、Ｗｅｂブラウザ３００はＷｅｂサーバー２００にログアウトリクエストを送信する。ログアウトリクエストを受けたＷｅｂサーバー２００は、ユーザーのログインを解除し、その旨を知らせる画面であるＷｅｂページ５０のデータをレスポンスとしてＷｅｂブラウザ３００に送信する。レスポンスを受信したＷｅｂブラウザ３００は、ページ表示エリア４２における操作画面５０２の表示を終了させ、代わりにログインの解除を知らせる画面を表示させる。つまり、ログアウトボタン８３のクリックは、ログアウトを指示する操作であるとともに、Ｗｅｂページ５０の遷移を指示する操作でもある。
【００６１】
このようにページ表示エリア４２における操作がＷｅｂページの遷移を指示する操作になる場合がある。すなわち、Ｗｅｂページ５０の遷移を指示する操作はブラウジング操作エリア４１における操作に限らない。
【００６２】
図９は、Ｗｅｂブラウザによって表示される操作画面の第３例を示している。図９の操作画面５０３は、入力されたファイルをＭＦＰ１内のボックス１９０に保存する第１の処理および保存した当該ファイルを電子メールに添付して送信する第２の処理をＭＦＰ１に行なわせる操作のための画面である。操作画面５０１は、ボックス処理選択画面において送信・電子メール処理がユーザーによって選択された場合に表示される。
【００６３】
操作画面５０３は、図６の操作画面５０１と同様の要素である入力エリア７１，７２、送信ボタン８１、およびキャンセルボタン８２に加えて、電子メールの宛先を指定するための入力エリア７３を有している。また、操作画面５０３には、送信ボタン８１によって実行が指示されるＭＦＰ制御スクリプトが組み込まれている。操作画面５０３のＭＦＰ制御スクリプトは、入力エリア７１で指定されたファイルをＭＦＰ１へ送信する処理をユーザー端末３に行なわせるとともに、上記の第１の処理および第２の処理をＭＦＰ１に行なわせるスクリプトである。
【００６４】
操作画面５０３のＭＦＰ制御スクリプトの実行中にＷｅｂページ５０が切り替えられ、かつＭＦＰ制御スクリプトの実行が継続されている場合、図７のお知らせウィンドウ９１が表示される。
【００６５】
図１０は、Ｗｅｂブラウザによって表示される操作画面の第４例を示している。図１０の操作画面５０４は、入力されたファイルをＭＦＰ１内のボックス１９０に保存する第１の処理および保存した当該ファイルの複製を保存先に関連付けられている宛先に転送する第２の処理をＭＦＰ１に行なわせる操作のための画面である。操作画面５０１は、ボックス処理選択画面において送信・転送処理が選択された場合に表示される。
【００６６】
操作画面５０４は、図６の操作画面５０１と同様の要素である入力エリア７１、送信ボタン８１、およびキャンセルボタン８２に加えて、保存先を指定するための入力エリア７６を有している。また、操作画面５０４には、送信ボタン８１によって実行が指示されるＭＦＰ制御スクリプトが組み込まれている。操作画面５０４のＭＦＰ制御スクリプトは、入力エリア７１で指定されたファイルをＭＦＰ１へ送信する処理をユーザー端末３に行なわせるとともに、上記の第１の処理および第２の処理をＭＦＰ１に行なわせるスクリプトである。
【００６７】
入力エリア７６は、保存先の選択肢となる個人ボックスおよび共通ボックスと各選択肢に関連付けられた宛先とを表形式で一覧表示するエリアである。入力エリア７６における各選択肢の欄にチェックボックス７５１が配置されている。ユーザーは、チェックボックス７５１をクリックすることにより、１つまたは複数の保存先を指定することができる。選択されたことを表わすチェックマークが付加されたチェックボックス７５１をクリックすると、選択が解除されてチェックマークが消える。宛先として関連付けられる情報の形式によって転送の態様が決まる。例えば、宛先がメールアドレスであれば、電子メールに添付してファイルが送信され、宛先がＩＰアドレスであれば、ファイル転送プロトコルを用いてデータが送信される。
【００６８】
操作画面５０４のＭＦＰ制御スクリプトの実行中にＷｅｂページ５０が切り替えられ、かつＭＦＰ制御スクリプトの実行が継続されている場合、図７のお知らせウィンドウ９１が表示される。
【００６９】
以下、フローチャートを参照してＷｅｂブラウザ３００の動作を説明する。
【００７０】
図１１はレンダリングエンジンの動作を示すフローチャートである。
【００７１】
レンダリングエンジン３０２は通信処理を行なう（Ｓ１０）。この通信処理は、ユーザーによる操作に従ってＷｅｂサーバー２００にリクエストを送ったり、リクエストに対するレスポンスを受け取ったりする処理である。通信処理において、レンダリングエンジン３０２は、操作入力部３５を管理するオペレーティングシステムからＷｅｂブラウザ３００に与えられる操作情報を取得し、この操作情報が示す操作の内容に応じたリクエストを作成してＷｅｂサーバー２００に送る。なお、操作情報はスクリプトエンジン３０３に伝えられる。
【００７２】
通信処理を行なったレンダリングエンジン３０２は、Ｗｅｂページ切替えイベントが発生したかどうかをチェックする（Ｓ１１）。Ｗｅｂページ切替えイベントとは、通信部３０１からのＨＴＭＬファイルの入力、すなわちＷｅｂページ５０の表示要求である。Ｗｅｂページ切替えイベントは、ユーザーがＷｅｂページ５０の遷移を指示する操作をしたときに発生し、Ｗｅｂブラウザ３００の起動直後にホームページを自動的に表示するときにも発生する。
【００７３】
Ｗｅｂページ切替えイベントが発生したと判断した場合（Ｓ１０でＹＥＳ）、レンダリングエンジン３０２はスクリプト実行中フラグがＯＮであるかどうかをチェックする（Ｓ１２）。スクリプト実行中フラグはスクリプトエンジン３０３によってＭＦＰ制御スクリプトの実行ごとに設けられ、かつこれの状態を示す値を変更することによってＯＮおよびＯＦＦのいずれかに切り替えられるフラグである。ステップＳ１１においてＷｅｂページ切替えイベントが発生していないと判断した場合、フローはステップＳ１６へ進み、後述の処理が行なわれる。
【００７４】
スクリプト実行中フラグがＯＮである場合（Ｓ１２でＹＥＳ）、レンダリングエンジン３０２は、スクリプトエンジン３０３からの子ウィンドウ表示指示があるかどうかをチェックする（Ｓ１３）。子ウィンドウ表示指示がある場合（Ｓ１３でＹＥＳ）、レンダリングエンジン３０２は、現在表示されているＷｅｂページ５０に関連付けられている子ウィンドウをディスプレイ３６上に開く（Ｓ１４）。子ウィンドウは、図７のお知らせウィンドウ９１のように、ＭＦＰ制御スクリプトの組み込まれたＷｅｂページ５０の表示が終了される際に、ＭＦＰ制御スクリプトの実行が継続されている場合に表示される小画面である。
【００７５】
スクリプト実行中フラグがＯＮではない場合（Ｓ１２でＮＯ）、フローはステップＳ１３およびステップＳ１４を経ずにステップＳ１２からステップＳ１５へ進む。また、子ウィンドウ表示指示がない場合（Ｓ１３でＮＯ）、フローはステップＳ１４を経ずにステップＳ１２からステップＳ１５へ進む。
【００７６】
ステップＳ１５において、レンダリングエンジン３０２はＷｅｂページ切替え処理を実行する。Ｗｅｂページ切替え処理は、ステップＳ１１でその発生を検知したＷｅｂページ切替えイベントに対応するＷｅｂページ５０を現在表示されているＷｅｂページ５０に代えてディスプレイ３６に表示させる処理である。レンダリングエンジン３０２は通信部３０１から受け取ったＨＴＭＬファイルの記述内容を解釈してページ画像データを生成し、生成したページ画像データをディスプレイ３６のコントローラーに送る。フローはステップＳ１５からステップＳ１０へ戻る。
【００７７】
一方、Ｗｅｂページ切替えイベントが発生していないと判断した場合（Ｓ１１でＮＯ）、レンダリングエンジン３０２は、スクリプト実行中フラグがＯＦＦであるかどうかをチェックする（Ｓ１６）。スクリプト実行中フラグがＯＦＦである場合（Ｓ１６でＹＥＳ）、レンダリングエンジン３０２は、現在開かれている子ウィンドウを閉じる（Ｓ１７）。このとき、レンダリングエンジン３０２は、子ウィンドウの開閉状態を示す所定のレジスタの値を調べ、開かれている子ウィンドウを検知する。子ウィンドウが開いていない場合には、ステップＳ１７はスキップされ、フローはステップＳ１０へ戻る。
【００７８】
ステップＳ１６でスクリプト実行中フラグがＯＦＦではない場合、フローはステップＳ１６からステップＳ１０へ戻る。また、フローはステップＳ１７からステップＳ１０へ戻る。
【００７９】
なお、複数の子ウィンドウが開かれている場合、子ウィンドウごとに設けられるスクリプト実行中フラグのそれぞれがステップＳ１６においてチェックされる。そして、ＯＦＦであるスクリプト実行中フラグに対応する子ウィンドウがステップＳ１６において閉じられ、ＯＮであるスクリプト実行中フラグに対応する子ウィンドウは閉じられない。
【００８０】
図１２はスクリプトエンジンの第１実行部の動作を示すフローチャートである。
【００８１】
スクリプトエンジン３０３の第１実行部３１０は、表示されたＷｅｂページに組み込まれているＭＦＰ制御スクリプトの実行を指示する操作が行なわれたかどうかをチェックする（Ｓ２０）。詳しくは、レンダリングエンジン３０２から逐次に伝えられる最新の操作情報の示す操作が、ＭＦＰ制御スクリプトの実行の契機としてＨＴＭＬファイルに記述されている特定のコンテンツに対する操作であるかをチェックする。例えば、図６の操作画面５０１においては、送信ボタン８１のクリックが特定のコンテンツに対する操作である。
【００８２】
ステップＳ２０のチェックがＮＯである場合、ＯＮ状態のスクリプト実行中フラグがあるかどうかのチェックが行なわれる（Ｓ２７）。スクリプト実行中フラグはＭＦＰ制御スクリプトの実行ごとに設けられるので、以前に実行が開始された複数のＭＦＰ制御スクリプトにそれぞれ対応する複数のスクリプト実行中フラグの中にＯＮ状態のものがあるという状況が起こり得る。ＯＮ状態のスクリプト実行中フラグがなければ（Ｓ２７でＮＯ）、フローはステップＳ２０へ戻る。ＯＮ状態のスクリプト実行中フラグが１つでもあれば（Ｓ２７でＹＥＳ）、フローはステップＳ２３へ進む。
【００８３】
ステップＳ２０のチェックがＹＥＳである場合、第１実行部３１０は、実行が指示されたＭＦＰ制御スクリプトに対応するスクリプト実行中フラグを新たに設け、当該スクリプト実行中フラグをＯＮとする（Ｓ２１）。そして、第１実行部３１０は、当該ＭＦＰ制御スクリプトの実行を開始する（Ｓ２２）。
【００８４】
ステップＳ２２の次のステップＳ２３において、第１実行部３１０は、第２実行部３２０からの停止指示があるかどうかをチェックする。複数のＭＦＰ制御スクリプトを並行して実行する場合があることから、停止指示には停止すべきＭＦＰ制御スクリプトを指定する情報が含まれる。停止指示がある場合（Ｓ２３でＹＥＳ）、第１実行部３１０は、停止指示によって指定されているＭＦＰ制御スクリプトの実行を停止し（Ｓ２８）、停止時の処理段階を特定するステップ番号を保存する（Ｓ２９）。その後、フローはステップＳ２０へ戻る。
【００８５】
ステップＳ２３において停止指示がないと判断した場合（Ｓ２３でＮＯ）、第１実行部３１０は、ＭＦＰ制御スクリプトの実行を進め（Ｓ２４）、それによって実行が完了したかどうかをチェックする（Ｓ２５）。実行が完了した場合（Ｓ２５でＹＥＳ）、第１実行部３１０は実行が完了したＭＦＰ制御スクリプトに対応するスクリプト実行中フラグをＯＦＦにする（Ｓ２６）。実行が完了していない場合（Ｓ２５でＮＯ）、フローがステップＳ２０へ戻った後に再びステップＳ２４へ進むことによってＭＦＰ制御スクリプトの実行が続く。
【００８６】
図１３はスクリプトエンジンの第２実行部の動作を示すフローチャートである。
【００８７】
スクリプトエンジン３０３の第２実行部３２０は、ＯＮ状態のスクリプト実行中フラグがあるかどうかをチェックする（Ｓ４０）。ＯＮ状態のスクリプト実行中フラグがなければ（Ｓ４０でＮＯ）、ステップＳ４０のチェックが繰り返される。ＯＮ状態のスクリプト実行中フラグが１つでもあれば（Ｓ４０でＹＥＳ）、フローはステップＳ４１へ進む。すなわち、第２実行部３２０は、ＭＦＰ制御スクリプトが実行されているときに以下の処理を行なう。
【００８８】
ステップＳ４１において、第２実行部３２０は、上述したＷｅｂページ切替えイベントが発生したかどうかをチェックする。Ｗｅｂページ切替えイベントが発生していない場合（Ｓ４１でＮＯ）、フローはステップＳ４６へ進む。
【００８９】
Ｗｅｂページ切替えイベントが発生した場合（Ｓ４１でＹＥＳ）、第２実行部３２０は判定ルーチンを実行する（Ｓ４２）。判定ルーチンにおいて、第２実行部３２０は、現在表示されているＷｅｂページ５０（遷移する前のＷｅｂページ）のスクリプトであって実行中であるＭＦＰ制御スクリプトを判定の対象とし、その実行を継続するか停止するかを判定する。
【００９０】
判定ルーチンの判定結果によってフローは分岐する（Ｓ４３）。判定結果が「継続する」である場合、第２実行部３２０は継続実行ルーチンを実行する（Ｓ４４）。この場合、フローはステップＳ４４からステップＳ４６へ進む。一方、判定結果が「停止する」である場合、第２実行部３２０は第１実行部３２０に対して当該判定の対象とされたＭＦＰ制御スクリプトの実行の停止を指示する（Ｓ４５）。この場合、ステップＳ４５からステップＳ４０へ戻る。
【００９１】
ステップＳ４６において、第２実行部３２０は、継続実行ルーチンで継続されたＭＦＰ制御スクリプトの実行が完了したかどうかをチェックする。チェック結果がＹＥＳである場合、第２実行部３２０は、実行が完了したＭＦＰ制御スクリプトに対応するスクリプト実行中フラグをＯＦＦにする（Ｓ４７）。その後、フローはステップＳ４０へ戻る。
【００９２】
図１４は図１３の判定ルーチンのフローチャートである。
【００９３】
第２実行部３２０は、スクリプト実行中フラグがＯＮ状態であることから実行中であると判断したＭＦＰ制御スクリプトが、ＭＦＰ１に対して複数の処理を行なわせるスクリプトであるかどうかをチェックする（Ｓ４２１）。ここでいう「処理」とは、ユーザーが１つの作業として認識するＭＦＰ１の動作であり、行なわせるか行なわせないかをユーザーが操作画面で指定することができるものである。
【００９４】
例えば、図９の操作画面５０３で指定される“入力されたファイルをボックス１９０に保存し、かつ保存したファイルを電子メールに添付して送信する”という動作は、ボックス１９０への保存という第１の処理と電子メールによる送信という第２の処理とを行なう動作である。
【００９５】
これに対して、図６の操作画面５０１で指定される“入力されたファイルをボックス１９０に保存する”という動作は、単一の処理を行なう動作である。この“入力されたファイルをボックス１９０に保存する”という動作は、実際には入力先との通信およびＭＦＰ１内でのデータ転送を含む種々の処理を伴う。しかし、これら種々の処理はユーザーが操作に際してそれぞれを１つの作業として認識するものではない。したがって、ステップＳ４２１のチェックにおいては“入力されたファイルをボックス１９０に保存する”という動作は単一の処理とされる。
【００９６】
ＭＦＰ制御スクリプトがＭＦＰ１に対して複数の処理を行なわせるスクリプトではないと判断した場合（Ｓ４２１でＮＯ）、第２実行部３２０は判定結果を「継続する」にする（Ｓ４２２）。つまり、ＭＦＰ１に対して単一の処理を行なわせるＭＦＰ制御スクリプトについては、対応するＷｅｂページ５０の表示が終了される場合に必ず実行を継続すると判定する。
【００９７】
これに対して、ＭＦＰ制御スクリプトがＭＦＰ１に対して複数の処理を行なわせるスクリプトである場合（Ｓ４２１でＹＥＳ）、実行中の処理の実行順位によって判定結果が異なる。すなわち、ＭＦＰ制御スクリプトがＭＦＰ１に対してｎ（ｎ≧２）個の処理を行なわせるものであるとき、実行中の処理の実行順位が１位ではないあらかじめ設定された順位ｋ（ｋ≧２）以降の順位のいずれかである場合、第２実行部３２０は判定結果を「継続する」にする（Ｓ４２２ａ、Ｓ４２２）。そして、実行中の処理の実行順位が１位から（ｋ−１）位までの順位のいずれかである場合、第２実行部３２０は判定結果を「停止する」にする（Ｓ４２２ａ、Ｓ４２３）。
【００９８】
このように処理の実行順位によって判定結果を異ならせるのは、次の推測に基づいている。ユーザーがＭＦＰ制御スクリプトを実行させてからある程度の時間が経過した時点でＷｅｂページ５０の切替え操作をする場合は、ＭＦＰ制御スクリプトの実行が完了したと勘違いをした場合であると考えられる。つまり、指定した複数の処理がＭＦＰ１によって完結されるのをユーザーが望んでいると考えられる。したがって、この場合はＭＦＰ制御スクリプトの実行を継続させる。これとは反対に、ユーザーがＭＦＰ制御スクリプトを実行させて直ぐにＷｅｂページ５０の切替え操作をする場合は、ユーザーは処理の完結を望んではおらず、ＭＦＰ制御スクリプトの実行指示をキャンセルする意図をもってＷｅｂページ５０の表示の終了を指示する操作をすると考えられる。したがって、この場合はＭＦＰ制御スクリプトの実行を停止させる。
【００９９】
判定結果を左右する順位ｋの値を、図１５のように処理の数ｎに応じて設定しておくことができる。ステップＳ４２３のチェックに際して、第１実行部３１０がＭＦＰ制御スクリプトを実行する過程で判別したｎの値を第２実行部３２０が取得し、ｎの値に対して設定されているｋの値に基づいて、実行中の処理の実行順位ｘ（１≦ｘ≦ｎ）が１〜ｋであるか１〜（ｋ−１）であるかを判別するようにすればよい。
【０１００】
図１６は図１３の継続実行ルーチンのフローチャートである。
【０１０１】
第２実行部３２０は、判定ルーチンで判定の対象とされたＭＦＰ制御スクリプトの実行の停止を第１実行部３２０に対して指示し（Ｓ４４０）、指示を受けた第１実行部３１０によって保存された実行中断時のステップ番号を取得する（Ｓ４４１）。そして、第２実行部３２０は、取得したステップ番号からＭＦＰ制御スクリプトの実行を再開し（Ｓ４４２）、レンダリングエンジン３０１に対して子ウィンドウの表示を指示する（Ｓ４４３）。
【０１０２】
以上のように動作するＷｅｂブラウザ３００を用いるリモートアクセスの例が図１７および図１８に示される。例示されるリモートアクセスでは、図９の操作画面５０３に組み込まれたＭＦＰ制御スクリプト６００が実行される。ＭＦＰ制御スクリプト６００は、受信した文書の保存（処理１）をＭＦＰ１に行なわせる部分６１０と、受信した文書の電子メールによる送信（処理２）をＭＦＰ１に行なわせる部分６２０とを有している。図１７の例ではＭＦＰ制御スクリプト６００の実行中にＷｅｂページ５０の表示に関わる操作が行なわれず、図１８の例ではＭＦＰ制御スクリプト６００の実行中にＷｅｂページの表示に関わる操作が行なわれる。
【０１０３】
図１７において、既に操作画面５０３が表示され、保存する文書の指定、保存先のボックスの指定および電子メールの送信先の指定をユーザーが済ませた状態を想定する。この状態において、ユーザーが送信ボタン８１をクリックすると、それを示すイベント通知を受けてスクリプトエンジン３０３がＭＦＰ制御スクリプト６００の実行を開始する。
【０１０４】
まず、ＭＦＰ制御スクリプト６００のうちの処理１に対応する部分６１０が実行されることによって、ユーザー端末３からユーザーの指定した文書のファイルがＭＦＰ１にアップロードされ、ユーザーの指定したボックスに保存される。保存が終わると、アップロードの完了がＭＦＰ１からスクリプトエンジン３０３へ通知される。アップロードの完了通知を受け取ることで、ＭＦＰ制御スクリプト６００のうちの部分６１０の実行が正常に終了することになる。
【０１０５】
次に、ＭＦＰ制御スクリプト６００のうちの処理２に対応する部分６２０が実行されることによって、ユーザー端末３からＭＦＰ１に対して電子メールの送信が指示される。指示を受けてＭＦＰ１が先に保存した文書を電子メールに添付して送信する。送信が終わると、メール送信の完了がＭＦＰ１からスクリプトエンジン３０３へ通知される。メール送信の完了通知を受け取ることで、ＭＦＰ制御スクリプト６００のうちの部分６２０の実行が正常に終了することになる。
【０１０６】
図１８において、ユーザーが送信ボタン８１をクリックしてから文書のアップロードの完了が通知されるまでの動作は、図１７と同様である。ＭＦＰ制御スクリプト６００のうちの部分６１０の実行が終了した後、続いて処理２に対応する部分６２０が実行されることによって、ユーザー端末３からＭＦＰ１に対して電子メールの送信が指示される。図１８の例では、ＭＦＰ１が電子メールの送信指示を受けてから送信を行なってメール送信の完了を通知するまでの間に、ユーザーが閉じるキー４９をクリックするというＷｅｂページ５０の表示に関わる操作を行なう。
【０１０７】
Ｗｅｂページ切替えイベントの通知を受けて、スクリプトエンジン３０３はレンダリングエンジン３０２に対して子ウィンドウの表示を指示する。この指示に従ってレンダリングエンジン３０２によって子ウィンドウとしてお知らせウィンドウ９１が表示される。このとき、スクリプトエンジン３０３は第１実行部３１０と第２実行部３２０との連携によってＭＦＰ制御スクリプト６００の実行を継続する。
【０１０８】
お知らせウィンドウ９１を表示させたレンダリングエンジン３０２は、ユーザーによる閉じるキー４９のクリックに応答して親ウィンドウであるウィンドウ４０を閉じる。その後、ＭＦＰ１において文書を添付した電子メールの送信が終わり、メール送信の完了通知を受け取ることでＭＦＰ制御スクリプト６００の実行が終了すると、レンダリングエンジン３０２はお知らせウィンドウ９１（子ウィンドウ）を閉じる。
【０１０９】
図１９は図１３の判定ルーチンの変形例のフローチャートである。
【０１１０】
第２実行部３２０は、実行中のＭＦＰ制御スクリプト６００がＭＦＰ１に対して複数の処理を行なわせるスクリプトであるかどうかをチェックする（Ｓ４２１）。ＭＦＰ制御スクリプトが複数の処理を行なわせるスクリプトであると判断した場合（Ｓ４２１でＹＥＳ）、第２実行部３２０は判定結果を「継続する」にする（Ｓ４２２）。これに対して、ＭＦＰ制御スクリプトが複数の処理を行なわせるスクリプトではないと判断した場合（Ｓ４２１でＮＯ）、第２実行部３２０は判定結果を「停止する」にする（Ｓ４２３）。つまり、ＭＦＰ１に対して単一の処理を行なわせるＭＦＰ制御スクリプト６００については、対応するＷｅｂページ５０の表示が終了される場合に実行を停止すると判定する。
【０１１１】
図２０は図１３の継続実行ルーチンの変形例のフローチャートである。
【０１１２】
第２実行部３２０は、判定ルーチンで判定の対象とされたＭＦＰ制御スクリプトの実行の停止を第１実行部３２０に対して指示し（Ｓ４４０）、指示を受けた第１実行部３１０によって保存された実行中断時のステップ番号を取得する（Ｓ４４１）。そして、第２実行部３２０は、取得したステップ番号からＭＦＰ制御スクリプトの実行を再開する（Ｓ４４２）。
【０１１３】
再開に際して、第２実行部３２０は、ＭＦＰ制御スクリプトの実行するステップに対応する処理が当該ＭＦＰ制御スクリプトのＭＦＰ１に行なわせる処理のうちの最後の処理ではないかどうかをチェックする（Ｓ４４３ａ）。ＭＦＰ制御スクリプトがＭＦＰ１に単一の処理を行なわせるスクリプトである場合、当該単一の処理は最後の処理とみなされる。
【０１１４】
実行するステップに対応する処理が最後の処理ではない場合（Ｓ４４３ａでＹＥＳ）、第２実行部３２０は、レンダリングエンジン３０１に対して子ウィンドウの表示を指示する（Ｓ４４３ｂ）。
【０１１５】
実行するステップに対応する処理が最後の処理である場合（Ｓ４４３ａでＮＯ）、子ウィンドウの表示は指示されず、フローは図１４のフローに戻る。この場合、子ウィンドウの表示が省略されることになる。その理由は、ＭＦＰ制御スクリプトの実行が完了するまでに長い時間はかからないであろうから、ＭＦＰ制御スクリプトの実行の継続をユーザーに知らせることの必要性が小さいと考えられるからである。本例のように子ウィンドウを開かないことにすると、ユーザーがＷｅｂページの切替えを指示したときに、子ウィンドウが開くというユーザーが予期していなかった表示にユーザーが戸惑うという状況は起こらない。
【０１１６】
図２１はＭＦＰの要部の機能構成の他の例を示している。図２１の例では、ＭＦＰ１においてＷｅｂブラウザ３００ｂが起動される。Ｗｅｂブラウザ３００ｂの構成は図５のＷｅｂブラウザ３００の構成と同様である。Ｗｅｂブラウザ３００ｂは、ＭＦＰ１内に設けられたＷｅｂサーバー２００から操作画面５０１，５０２，５０３，５０４のいずれかとなるＷｅｂページ５０を取得し、そのＷｅｂページ５０を操作パネル１７のディスプレイに表示させる。
【０１１７】
Ｗｅｂブラウザ３００ｂのスクリプトエンジン３０３は、Ｗｅｂページ５０に組み込まれたＭＦＰ制御スクリプト６００を実行する。その過程でスクリプトエンジン３０３は、ユーザーが指定した処理をＭＦＰ１に行なわせるための制御をメインコントローラー１０に依頼したり、処理の完了通知をメインコントローラー１０から受けたりする。
【０１１８】
以上の実施形態の変形例として、ＭＦＰ制御スクリプト６００の実行によって発生するＷｅｂブラウザ３００からの要求を受け付けるサービス機能をＷｅｂサーバー２００に設け、このサービス機能を利用してユーザー端末３がＭＦＰ１に所定の処理を行わせるようにすることができる。
【０１１９】
上述の実施形態によれば、Ｗｅｂページ５０が表示されたときに自動的に実行されるスクリプトが当該Ｗｅｂページに組み込まれている場合において、当該Ｗｅｂページに組み込まれたＭＦＰ制御スクリプト６００の実行中に、ユーザーは当該Ｗｅｂページの表示を終了させることができる。当該Ｗｅｂページの表示が終了するときに、ＭＦＰ制御スクリプト６００以外のスクリプトの実行を中止することにより、ユーザー端末３におけるリソース負荷（ＣＰＵ稼働率、メモリ使用量、ウィンドウサイズ）を低減することができる。
【０１２０】
上述の実施形態ではＷｅｂサーバー２００をＭＦＰ１に設ける構成を例示したが、必ずしもＷｅｂサーバー２００をＭＦＰ１に設ける必要はない。例えばサーバー機や他のＭＦＰといったＭＦＰ１とは別の情報機器にＷｅｂサーバー２００を設けることができる。そのようする場合、ユーザー端末３上のＷｅｂブラウザ３００に、ＭＦＰ１の外部のＷｅｂサーバー２００からＷｅｂページ５０を取得させる。そして、Ｗｅｂページ５０に組み込まれたＭＦＰ制御スクリプト６００が実行されるとき、指定された処理をユーザー端末３がＭＦＰ１に行なわせる。
【符号の説明】
【０１２１】
１    ＭＦＰ（情報機器）
３    ユーザー端末（操作処理装置）
６００    ＭＦＰ制御スクリプト（スクリプト）
６１０，６２０    ＭＦＰ制御スクリプトの部分
５０  Ｗｅｂページ
５０１，５０２，５０３，５０４    操作画面（Ｗｅｂページ）
２００    Ｗｅｂサーバー
３１０    第１実行部（スクリプト実行手段）
３２０    第２実行部（スクリプト継続実行手段）
９１    お知らせウィンドウ
３００Ｐ    ブラウジング用のプログラム（コンピュータープログラム）
【図１】
0005939264.tif 000002
【図２】
0005939264.tif 000003
【図３】
0005939264.tif 000004
【図４】
0005939264.tif 000005
【図５】
0005939264.tif 000006
【図６】
0005939264.tif 000007
【図７】
0005939264.tif 000008
【図８】
0005939264.tif 000009
【図９】
0005939264.tif 000010
【図１０】
0005939264.tif 000011
【図１１】
0005939264.tif 000012
【図１２】
0005939264.tif 000013
【図１３】
0005939264.tif 000014
【図１４】
0005939264.tif 000015
【図１５】
0005939264.tif 000016
【図１６】
0005939264.tif 000017
【図１７】
0005939264.tif 000018
【図１８】
0005939264.tif 000019
【図１９】
0005939264.tif 000020
【図２０】
0005939264.tif 000021
【図２１】
0005939264.tif 000022