(57)【要約】【課題】ソフトウェアのアップデートインストール処理時にユーザに要求されるアクションを抑制可能とする。【解決手段】システム権限で実行される第１プロセスと、第１プロセスを介して起動された場合にシステム権限が継承される第２プロセスと、をコンピュータに実行させるための情報処理プログラムであって、実行時にシステム権限が必要なプロセスをコンピュータに実行させるためのプログラムの起動を指示する起動指示を第１プロセスに通知する、第２プロセスに含まれる通知ステップと、通知ステップによる通知に応じてプログラムを起動させる、第１プロセスに含まれる起動ステップと、を含む。【選択図】図７
2018205798.tif 000002
【特許請求の範囲】
【請求項１】
システム権限で実行される第１プロセスと、該第１プロセスを介して起動された場合に該システム権限が継承される第２プロセスと、をコンピュータに実行させるための情報処理プログラムであって、
実行時に前記システム権限が必要なプロセスを前記コンピュータに実行させるためのプログラムの起動を指示する起動指示を前記第１プロセスに通知する、前記第２プロセスに含まれる通知ステップと、
前記通知ステップによる前記通知に応じて前記プログラムを起動させる、前記第１プロセスに含まれる起動ステップと、
をコンピュータに実行させるための情報処理プログラム。
【請求項２】
前記プログラムによる動作に応じた情報を提示する、前記第２プロセスに含まれる提示ステップをさらに含み、
前記起動ステップは、起動させた前記プログラムの動作を監視し、
前記提示ステップは、該起動ステップによる該監視の結果に基づき前記情報を提示する
請求項１に記載の情報処理プログラム。
【請求項３】
前記第２プロセスを実行させているユーザのユーザ情報を管理する、前記第１プロセスに含まれる管理ステップをさらに含み、
前記通知ステップは、
前記起動指示を前記第１プロセスに通知する際に、前記管理ステップに対して、当該通知ステップの実行に係るユーザ以外の他のユーザにより前記第２プロセスが実行されているか否かを問い合わせ、該問い合わせの結果、前記第２プロセスを実行させている該他のユーザが存在しないとされた場合に、前記起動指示を前記第１プロセスに通知する
請求項１または請求項２に記載の情報処理プログラム。
【請求項４】
システム権限で実行される第１処理部と、該第１処理部を介して起動された場合に該システム権限が継承される第２処理部と、を有する情報処理装置であって、
実行時に前記システム権限が必要な処理を前記情報処理装置に実行させるためのプログラムの起動を、起動指示に応じて前記第１処理部に通知する、前記第２処理部に含まれる通知部と、
前記通知部による前記通知に応じて前記プログラムを起動させる、前記第１処理部に含まれる起動部と、
を有する情報処理装置。
【請求項５】
システム権限で実行される第１プロセスと、該第１プロセスを介して起動された場合に該システム権限が継承される第２プロセスと、が実行される情報処理装置における情報処理方法であって、
実行時に前記システム権限が必要なプロセスを前記情報処理装置に実行させるためのプログラムの起動を、起動指示に応じて前記第１プロセスに通知する、前記第２プロセスに含まれる通知ステップと、
前記通知ステップによる前記通知に応じて前記プログラムを起動させる、前記第１プロセスに含まれる起動ステップと、
を有する情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理プログラム、情報処理装置および情報処理方法に関する。
【背景技術】
【０００２】
従来から、クライアントコンピュータに搭載されるソフトウェアプログラム（以下、ソフトウェアと略称する）の更新を行うためのプログラムであるアップデートインストーラを、クライアントコンピュータとネットワークを介して接続可能なファイルサーバや管理用コンピュータなどに配置することが行われている。クライアントコンピュータは、このアップデートインストーラの配置場所を例えば定期的に確認し、搭載されるソフトウェアのバージョンアップなどが必要な場合に、アップデートインストーラを当該配置場所からダウンロードしてクライアントコンピュータ上で実行させ、ソフトウェアの更新（アップデートインストール）を行うことができる。これは、例えば社内の複数のクライアントコンピュータに搭載されるソフトウェアのバージョンや構成を揃えるような場合に、有用である。
【０００３】
特許文献１には、ユーザコンピュータが管理者コンピュータから送信された配布情報を受信し、受信した配布情報に基づき、管理者コンピュータからプラグイン本体を受信してインストールする技術が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、コンピュータに搭載されるオペレーティングシステム（ＯＳ）によっては、アップデートインストーラによるアップデートインストール時に、対象のコンピュータの管理者情報の入力や、処理の続行確認などのアクションがユーザに求められる場合がある。この場合において、ユーザが管理者情報を知らない場合、当該アクションがキャンセルされアップデートインストールが行われないおそれがあるという問題点があった。
【０００５】
本発明は、上記に鑑みてなされたものであって、ソフトウェアのアップデートインストール処理時にユーザに要求されるアクションを抑制可能とすることを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明は、システム権限で実行される第１プロセスと、第１プロセスを介して起動された場合にシステム権限が継承される第２プロセスと、をコンピュータに実行させるための情報処理プログラムであって、実行時にシステム権限が必要なプロセスをコンピュータに実行させるためのプログラムの起動を指示する起動指示を第１プロセスに通知する、第２プロセスに含まれる通知ステップと、通知ステップによる通知に応じてプログラムを起動させる、第１プロセスに含まれる起動ステップと、をコンピュータに実行させるための情報処理プログラムである。
【発明の効果】
【０００７】
本発明によれば、ソフトウェアのアップデートインストール処理時にユーザに要求されるアクションを抑制できるという効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、実施形態に適用可能なシステム構成の例を示すブロック図である。
【図２】図２は、実施形態に適用可能なクライアントＰＣのハードウェア構成の例を示すブロック図である。
【図３】図３は、既存技術による、ＵＡＣによるポップアップ表示画面の例を示す図である。
【図４】図４は、実施形態に係る情報処理プログラムとしての支援ソフトウェアの構成の例を示すブロック図である。
【図５】図５は、実施形態に係る支援ソフトウェアを起動させた場合のクライアントＰＣの機能を説明するための一例の機能ブロック図である。
【図６】図６は、実施形態に係る支援ソフトウェアの動作を示す一例のフローチャートである。
【図７】図７は、実施形態に係るアップデートインストール処理をより詳細に説明するためのブロック図である。
【図８】図８は、実施形態に適用可能な、アップデートインストール処理の実行状況を示す進捗表示画面の例を示す図である。
【図９】図９は、現在他のユーザが本体ユーザプロセス部を起動しているか否かを判定する処理を説明するためのブロック図である。
【発明を実施するための形態】
【０００９】
以下に添付図面を参照して、情報処理プログラム、情報処理装置および情報処理方法の実施形態を詳細に説明する。
【００１０】
図１は、実施形態に適用可能なシステム構成の例を示す。図１において、ネットワークシステム１は、それぞれネットワーク２に接続されるクライアントコンピュータ（クライアントＰＣ）１０ａ、１０ｂ、…と、ファイルサーバ２０とを含む。ネットワーク２は、画像形成装置２１など他の情報機器がさらに接続されていてもよい。
【００１１】
各クライアントＰＣ１０ａ、１０ｂ、…は、所定のソフトウェアプログラムが共通に搭載されるものとする。以下、「ソフトウェアプログラム」を「ソフトウェア」と略称し、この、各クライアントＰＣ１０ａ、１０ｂ、…に共通して搭載される所定のソフトウェアを、特定ソフトウェアと呼ぶ。ファイルサーバ２０は、各クライアントＰＣ１０ａ、１０ｂ、…に搭載される特定ソフトウェアの更新（アップデートインストール）を行うためのアップデートインストーラが配置される。なお、ソフトウェアの配置とは、ソフトウェアを構成する１以上のファイルを所定のフォルダに格納することをいう。また、アップデートインストーラは、ＵＩ表示などを行わないサイレントモードでの実行が可能とされている。
【００１２】
ここで、特定ソフトウェアに対応するアップデートインストーラは、例えば最新バージョンの特定ソフトウェアが同梱または内包される。より具体的には、特定ソフトウェアに対応するアップデートインストーラは、アップデートインストーラによるアップデートインストール処理を支援する、実施形態に係る支援ソフトウェア（詳細は後述する）を内包し、支援ソフトウェアは、特定ソフトウェアを内包する。アップデートインストーラが支援ソフトウェアに対するアップデートインストール処理を行うことで、特定ソフトウェアのアップデートインストール処理も行われる。また、アップデートインストーラおよび支援ソフトウェアは、バージョンを共通としている。
【００１３】
画像形成装置２１は、プリント機能を有するプリンタ装置であってもよいし、プリント機能、スキャナ機能、コピー機能、ＦＡＸ機能といった複数の機能を１台の筐体で実現した複合機であってもよい。例えば各クライアントＰＣ１０ａ、１０ｂ、…は、この画像形成装置２１に対応するドライバプログラムがそれぞれ搭載される。各クライアントＰＣ１０ａ、１０ｂ、…は、搭載されるドライバプログラムにより、画像形成装置２１の機能を利用することができる。
【００１４】
図２は、実施形態に適用可能なクライアントＰＣ１０ａ、１０ｂ、…のハードウェア構成の例を示す。なお、クライアントＰＣ１０ａ、１０ｂ、…は、同様の構成で実現可能であるため、以下では、特に記載の無い限り、クライアントＰＣ１０ａ、１０ｂ、…をクライアントＰＣ１０ａで代表させて説明を行う。
【００１５】
図２において、クライアントＰＣ１０ａは、ＣＰＵ(Central  Processing  Unit)１０００と、ＲＯＭ(Read  Only  Memory)１００１と、ＲＡＭ(Random  Access  Memory)１００２と、グラフィクスＩ／Ｆ（インタフェース）１００３と、ストレージ１００４と、データＩ／Ｆ１００５と、通信Ｉ／Ｆ１００６とを備え、これら各部がバス１０１０により互いに通信可能に接続される。
【００１６】
ストレージ１００４は、データを不揮発に記憶する記憶媒体であって、ハードディスクドライブやフラッシュメモリを適用できる。ストレージ１００４は、ＣＰＵ１０００が動作するためのプログラムやデータが記憶される。例えば上述した特定ソフトウェアを構成するプログラムは、このストレージ１００４に記憶される。
【００１７】
ＣＰＵ１０００は、例えば、ＲＯＭ１００１やストレージ１００４に予め記憶されたプログラムに従い、ＲＡＭ１００２をワークメモリとして用い、このクライアントＰＣ１０ａの全体の動作を制御する。グラフィクスＩ／Ｆ１００３は、ＣＰＵ１０００によりプログラムに従い生成された表示制御信号に基づき、ディスプレイ１００７が対応可能な表示信号を生成する。ディスプレイ１００７は、グラフィクスＩ／Ｆ１００３から供給された表示信号に応じた画面を表示する。
【００１８】
データＩ／Ｆ１００５は、外部の機器との間でデータの送受信を行う。データＩ／Ｆ１００５としては、例えばＵＳＢ(Universal  Serial  Bus)を適用可能である。この例では、データＩ／Ｆ１００５に、ユーザ入力を受け付ける入力デバイスとしてキーボード１００８ａおよびポインティングデバイス１００８ｂが接続されている。通信Ｉ／Ｆ１００６は、ＣＰＵ１０００の指示に従い、ネットワーク２に対する通信を制御する。
【００１９】
（既存技術によるアップデートインストール処理）
次に、理解を容易とするために、既存技術によるソフトウェアのアップデートインストール処理の例について、概略的に説明する。クライアントＰＣ１０ａに既に搭載されているあるソフトウェア（対象ソフトウェアとする）を考える。一例として、対象ソフトウェアは、クライアントＰＣ１０ａ上で起動されると、ファイルサーバ２０にアクセスし、自身のバージョンよりも新しいバージョンの対象ソフトウェアに対応するアップデートインストーラをファイルサーバ２０から取得する。このアップデートインストーラは、当該新しいバージョンの対象ソフトウェアを内包しているものとする。
【００２０】
対象ソフトウェアは、取得したアップデートインストーラを起動させる。クライアントＰＣ１０ａにおいて、アップデートインストーラは、同梱される新しいバージョンの対象ソフトウェアのアップデートインストール処理を実行する。
【００２１】
このアップデートインストーラによるアップデートインストール処理が、クライアントＰＣ１０ａのＯＳ(Operating  System)に変更を加える場合がある。例えばパーソナルコンピュータ上で動作するＯＳの一つであるＷｉｎｄｏｗｓ（登録商標）では、レジストリと呼ばれる設定情報のデータベースを有し、アップデートインストール処理によっては、このレジストリの特定項目の書き換えが行われ、ＯＳに変更が加えられる。このような、ＯＳに特定の変更を加えるような処理の実行に際して、ＯＳが所定の管理権限（例えばシステム権限）を要求する場合がある。
【００２２】
一方、アップデートインストーラによるアップデートインストール処理は、一般的には、ＯＳに対する権限としてシステム権限よりも下位の権限であるユーザ権限のプロセス（ユーザ権限プロセス）により実行される。ＯＳは、ユーザ権限プロセスにより実行されるアップデートインストール処理に対し、一定の制限を与えることができる。例えば、Ｗｉｎｄｏｗｓ  Ｖｉｓｔａ（登録商標）以上のバージョンのＷｉｎｄｏｗｓ（登録商標）では、ＵＡＣ(User  Account  Control)と呼ばれる仕組みにより、アップデートインストーラによりアップデートインストール処理が実行される際に、ＯＳの管理者権限を持つ管理者情報の入力や、インストール処理の続行の確認を行うためのＵＩ(User  Interface)画面をディスプレイ１００７に対してポップアップ表示させる。
【００２３】
図３は、既存技術による、ＵＡＣによりポップアップ表示されるＵＩ画面としてのポップアップ表示画面の例を示す。図３において、ポップアップ表示画面３０は、表示領域３１、３２および３３と、ボタン３５および３６とを含む。また、表示領域３３は、入力領域３４を含む。図３の例では、表示領域３１は、このポップアップ表示画面３０に関するメッセージが表示され、表示領域３２は、アップデートインストール処理の対象のソフトウェアに関する情報が表示される。表示領域３３は、管理者情報の入力をユーザに促すためのメッセージが表示され、管理者情報（管理者パスワード）を入力するための入力領域３４が設けられる。
【００２４】
ボタン３５は、入力領域３４に入力された管理者パスワードの照合を行いアップデートインストール処理を続行させるためのボタンである。入力領域３４に正しい管理者パスワードが入力された状態でボタン３５が操作された場合、このポップアップ表示画面３０が閉じられ、アップデートインストール処理が続行される。一方、入力領域３４に誤った管理者パスワードが入力された状態でボタン３５が操作された場合、ポップアップ表示画面３０の表示が継続され、入力領域３４に対する管理者パスワードの入力が促される。
【００２５】
ボタン３６は、アップデートインストール処理を中止するためのボタンである。ボタン３６が操作された場合、このポップアップ表示画面３０が閉じられ、アップデートインストール処理が中止（キャンセル）される。例えば、ユーザが管理者情報を知らない場合、このボタン３６を操作することで、アップデートインストール処理を中止させることができる。
【００２６】
上述したように、ＵＡＣによるポップアップ表示画面３０は、例えばアップデートインストーラといったプログラムがＯＳに特定の変更を加える場合に、必要な管理権限が無ければ表示される。当該プログラムが、Ｗｉｎｄｏｗｓにより提供されＷｉｎｄｏｗｓの動作中はバックグラウンドで動作する、Ｗｉｎｄｏｗｓサービスとして動作するプログラムであれば、当該プログラムは、システム権限のプロセス（システム権限プロセス）で動作し、管理者権限を持つ。また、Ｗｉｎｄｏｗｓサービスから起動されたプロセスは、システム権限がＷｉｎｄｏｗｓサービスから継承される。そのため、Ｗｉｎｄｏｗｓサービスからシステム権限を継承したサブプロセスとしてアップデートインストーラを起動することで、ポップアップ表示画面３０の表示を抑制できる。
【００２７】
一方、ＯＳにログイン中のユーザに対して、現在実行されているプログラム（例えばアップデートインストーラ）の情報を通知するためのＵＩ画面を表示するためには、当該プログラムがＷｉｎｄｏｗｓサービス以外のプロセスであって、ユーザ権限プロセスであるユーザプロセスで動作している必要がある。すなわち、Ｗｉｎｄｏｗｓサービスとして動作するプログラムの動作環境は、ログイン中のユーザの動作環境と切り離されているため、Ｗｉｎｄｏｗｓサービスから権限を引き継いだサブプロセスとして起動されたアップデートインストーラは、複数有り得る動作環境から表示すべきデスクトップを特定できず、ＵＩ画面を表示することができないためである。
【００２８】
また、アップデートインストーラは、ソフトウェアの更新（アップデートインストール）を実行する際に、更新対象のソフトウェアを構成するモジュール（ファイル）を上書きする。そのため、更新対象のソフトウェア自身は、動作が停止した状態でなければならない。したがって、更新対象のソフトウェアとは別のプロセスで動作するコンポーネントが、アップデートインストーラを制御する必要がある。
【００２９】
（実施形態に係るアップデートインストール処理）
次に、実施形態に係るアップデートインストール処理について説明する。実施形態では、実施形態に係るアップデートインストール処理を行うために、アップデートインストーラによる処理を支援する支援ソフトウェアを提供する。図４は、実施形態に係る情報処理プログラムとしての支援ソフトウェアの構成の例を示す。
【００３０】
図４において、実施形態に係る支援ソフトウェア１００は、本体ユーザプロセス部１１１および本体システムサービス部１２１を含む本体ソフトウェアと、アップデートエージェントユーザプロセス部１１２およびアップデートエージェントシステムプロセス部１２２を含むアップデートエージェントと、特定ソフトウェア１３０と、を含む。アップデートエージェントは、本体ソフトウェアから起動されるコンポーネントを含む。アップデートエージェントは、本体ソフトウェアを停止および起動させることができると共に、アップデートインストーラによるアップデートインストール処理を制御する。すなわち、アップデートエージェントは、本体ソフトウェアからアップデートインストーラによるアップデートインストール処理を制御する際の仲介を行う仲介部であると考えることができる。
【００３１】
特定ソフトウェア１３０は、例えば、各クライアントＰＣ１０ａ、１０ｂ、…に共通して搭載されるソフトウェアである。特定ソフトウェア１３０の例として、画像形成装置２１を各クライアントＰＣ１０ａ、１０ｂ、…から利用するためのドライバプログラムを適用することができる。特定ソフトウェア１３０は、ドライバプログラムに限られず、他の種類のソフトウェアであってもよい。
【００３２】
支援ソフトウェア１００は、ファイルサーバ２０上においては、支援ソフトウェア１００自身を更新（アップデートインストール）するためのアップデートインストーラに同梱または内包されて、所定のフォルダに格納される。
【００３３】
支援ソフトウェア１００において、アップデートエージェントに含まれるアップデートエージェントユーザプロセス部１１２は、ユーザ権限プロセス（第２プロセス）で動作するコンポーネントである。アップデートエージェントユーザプロセス部１１２は、本体ユーザプロセス部１１１の起動および停止を行うための本体ユーザプロセス起動・停止部１１２０と、ＵＩ表示を行うためのＵＩ表示部１１２１と、アップデートインストーラによる処理進捗状況を監視するためのアップデート状況監視部１１２２と、を含む。
【００３４】
また、アップデートエージェントに含まれるアップデートエージェントシステムプロセス部１２２は、システム権限プロセス（第１プロセス）で動作して、アップデートインストーラをシステム権限プロセスのサブプロセスとして起動させるためのコンポーネントである。アップデートエージェントシステムプロセス部１２２は、本体システムサービス部１２１の起動および停止を行うためのシステムサービス起動・停止部１２２１と、アップデートインストーラの動作を監視するためのアップデートインストーラプロセス監視部１２２０と、を含む。
【００３５】
支援ソフトウェア１００において、本体ソフトウェアに含まれる本体ユーザプロセス部１１１は、ユーザ権限プロセスで動作するコンポーネントである。本体ユーザプロセス部１１１は、ファイルサーバ２０にアクセスしてアップデートインストーラを探索するためのアップデート確認部１１１０と、ファイルサーバ２０からアップデートインストーラをダウンロードし取得するためのインストーラ取得部１１１１と、アップデートエージェントユーザプロセス部１１２を起動するためのアップデートエージェントユーザプロセス起動部１１１２と、を含む。本体ユーザプロセス部１１１は、さらに、特定ソフトウェア１３０を含む。
【００３６】
また、本体ソフトウェアに含まれる本体システムサービス部１２１は、システム権限プロセスで動作するコンポーネントである。本体システムサービス部１２１は、この支援ソフトウェア１００が起動された例えばクライアントＰＣ１０ａのＯＳにログインしているログインユーザのユーザ情報を管理するためのログインユーザ管理部１２１１と、アップデートエージェントユーザプロセス部１１２およびアップデートエージェントシステムプロセス部１２２を管理するためのアップデートエージェント管理部１２１２と、を含む。
【００３７】
ここで、ＯＳがＷｉｎｄｏｗｓ（登録商標）である場合、本体システムサービス部１２１は、Ｗｉｎｄｏｗｓサービスである。上述したアップデートエージェントシステムプロセス部１２２は、本体システムサービス部１２１から起動される。これにより、アップデートエージェントシステムプロセス部１２２は、システム権限プロセスとして動作できる。
【００３８】
なお、本体ソフトウェア（本体ユーザプロセス部１１１および本体システムサービス部１２１）は、アップデートエージェント（アップデートエージェントユーザプロセス部１１２およびアップデートエージェントシステムプロセス部１２２）の各モジュールを、アップデートインストーラがアクセスしない一時フォルダにコピーし、一時フォルダ内のアップデートエージェントを起動する。これは、アップデートインストーラがアップデートエージェントのモジュールを更新する場合に対応するためである。
【００３９】
図５は、実施形態に係る支援ソフトウェア１００を起動させた場合のクライアントＰＣ１０ａの機能を説明するための一例の機能ブロック図である。なお、図５において、上述した図４の支援ソフトウェア１００がクライアントＰＣ１０ａにおいて実行されることでクライアントＰＣ１０ａ上で実現される機能は、図４の対応する部分と同一の名称および符号を付して示している。
【００４０】
図５において、支援ソフトウェア１００が起動されたクライアントＰＣ１０ａは、本体ユーザプロセス部１１１と、アップデートエージェントユーザプロセス部１１２と、本体システムサービス部１２１と、アップデートエージェントシステムプロセス部１２２と、を含む。これらのうち、本体ユーザプロセス部１１１およびアップデートエージェントユーザプロセス部１１２は、ユーザ権限プロセスで動作するグループ（ユーザプロセス部１１０）として示している。また、本体システムサービス部１２１およびアップデートエージェントシステムプロセス部１２２は、システム権限プロセスで動作するグループ（システムプロセス部１２０）として示している。
【００４１】
ユーザプロセス部１１０は、クライアントＰＣ１０ａのＯＳにログインしたログインユーザ毎に起動される。すなわち、支援ソフトウェア１００は、複数のユーザプロセス部１１０を並行して起動させることができる。
【００４２】
図５において、本体ユーザプロセス部１１１は、アップデート確認部１１１０と、インストーラ取得部１１１１と、アップデートエージェントユーザプロセス起動部１１１２とを含む。アップデートエージェントユーザプロセス部１１２は、本体ユーザプロセス起動・停止部１１２０と、ＵＩ表示部１１２１と、アップデート状況監視部１１２２とを含む。本体システムサービス部１２１は、ログインユーザ管理部１２１１と、アップデートエージェント管理部１２１２とを含む。また、アップデートエージェントシステムプロセス部１２２は、アップデートインストーラプロセス監視部１２２０と、システムサービス起動・停止部１２２１とを含む。
【００４３】
これら本体ユーザプロセス部１１１、アップデートエージェントユーザプロセス部１１２、本体システムサービス部１２１およびアップデートエージェントシステムプロセス部１２２、ならびに、これらに含まれる各部は、実施形態に係る情報処理プログラムとしての支援ソフトウェア１００がＣＰＵ１０００上で動作することにより実現される。これに限らず、図５に示される各部の一部または全部を、互いに協働して動作するハードウェア回路により構成してもよい。
【００４４】
クライアントＰＣ１０ａにおける実施形態に係る各機能を実現するための支援ソフトウェア１００は、インストール可能な形式または実行可能な形式のファイルでＣＤ(Compact  Disk)、フレキシブルディスク（ＦＤ）、ＤＶＤ(Digital  Versatile  Disk)などのコンピュータで読み取り可能な記録媒体に記録して提供される。これに限らず、当該支援ソフトウェア１００を、インターネットなどのネットワークに接続されたコンピュータ上に格納し、当該ネットワークを介してダウンロードさせることにより提供してもよい。また、当該支援ソフトウェア１００をインターネットなどのネットワークを経由して提供または配布するように構成してもよい。
【００４５】
当該支援ソフトウェア１００は、本体ユーザプロセス部１１１、アップデートエージェントユーザプロセス部１１２、本体システムサービス部１２１およびアップデートエージェントシステムプロセス部１２２、ならびに、これらに含まれる各部を含むモジュール構成となっている。実際のハードウェアとしては、ＣＰＵ１０００がストレージ１００４などの記憶媒体から当該支援ソフトウェア１００を読み出して実行することにより、上述した各部がＲＡＭ１００２などの主記憶装置上にロードされ、本体ユーザプロセス部１１１、アップデートエージェントユーザプロセス部１１２、本体システムサービス部１２１およびアップデートエージェントシステムプロセス部１２２、ならびに、これらに含まれる各部が主記憶装置上に生成されるようになっている。
【００４６】
次に、図５に示される、本体ユーザプロセス部１１１、アップデートエージェントユーザプロセス部１１２、本体システムサービス部１２１およびアップデートエージェントシステムプロセス部１２２に含まれる各部について、より詳細に説明する。
【００４７】
本体ユーザプロセス部１１１において、アップデート確認部１１１０は、ファイルサーバ２０にアクセスして、クライアントＰＣ１０ａに搭載される当該支援ソフトウェア１００に対応するアップデートインストーラの存在を確認する。アップデート確認部１１１０は、対応するアップデートインストーラの存在が確認された場合、そのアップデートインストーラのバージョンを取得し、取得したバージョンに基づき支援ソフトウェア１００のアップデートが必要か否かを判定する。
【００４８】
インストーラ取得部１１１１は、アップデート確認部１１１０の確認結果に応じて、ファイルサーバ２０からアップデートインストーラを取得し、取得したアップデートインストーラを、例えばストレージ１００４上に設けられる一時フォルダに保存する。アップデートエージェントユーザプロセス起動部１１１２は、アップデートエージェントユーザプロセス部１１２を起動する。
【００４９】
アップデートエージェントユーザプロセス部１１２において、本体ユーザプロセス起動・停止部１１２０は、本体ユーザプロセス部１１１の起動および停止を行う。ＵＩ表示部１１２１は、ＵＩによる画面表示を行う。例えば、ＵＩ表示部１１２１は、アップデートインストーラによるアップデートインストール処理の進捗や、結果を示す画面の表示を行う。アップデート状況監視部１１２２は、アップデートエージェントシステムプロセス部１２２と通信を行い、アップデートインストーラの状況を監視する。
【００５０】
本体システムサービス部１２１において、ログインユーザ管理部１２１１は、本体ユーザプロセス部１１１を起動したログインユーザのユーザ情報をＯＳから取得し、取得したユーザ情報を、表１に示されるような起動ユーザリストに登録して例えばＲＡＭ１００２に記憶する（管理ステップ）。起動ユーザリストに登録するユーザ情報は、ユーザがログイン時に入力するユーザ名であってもよいし、当該ユーザのアカウントに対応するＳＩＤ(Security  Identifier)であってもよい。
【００５１】
【表１】
2018205798.tif 000003
【００５２】
表１の例では、現在、本体ユーザプロセス部１１１が、ユーザ名「ｕｓｅｒＡ」およびユーザ名「ｕｓｅｒＢ」の２人のユーザにより起動されていることが示されている。ログインユーザ管理部１２１１は、新たなユーザにより本体ユーザプロセス部１１１が起動された場合には、当該ユーザのユーザ情報を起動ユーザリストに追加する。また、ログインユーザ管理部１２１１は、起動ユーザリストのエントリに含まれるユーザ情報が示すユーザがログアウトした場合、そのユーザ情報のエントリを削除する。また、ログインユーザ管理部１２１１は、本体ユーザプロセス部１１１が終了された場合に、当該ユーザプロセス部１１１を起動したユーザのユーザ情報を、起動ユーザリストから削除する。この起動ユーザリストを参照することで、現在起動されている本体ユーザプロセス部１１１の数や、ログイン中のユーザのアカウント情報を把握することができる。
【００５３】
アップデートエージェント管理部１２１２は、アップデートエージェントユーザプロセス部１１２およびアップデートエージェントシステムプロセス部１２２を構成するための各モジュールの、ストレージ１００４における一時フォルダへの記憶、および、これら各モジュールが不要になった場合の一時フォルダからの削除を行う。また、アップデートエージェント管理部１２１２は、アップデートエージェントシステムプロセス部１２２を起動させる。
【００５４】
システムプロセス部１２０において、アップデートエージェントシステムプロセス部１２２に含まれるアップデートインストーラプロセス監視部１２２０は、上述したインストーラ取得部１１１１により一時フォルダに記憶されたアップデートインストーラを起動させる。アップデートインストーラは、システム権限プロセスによるアップデートインストーラプロセス監視部１２２０から起動されるため、アップデートインストーラプロセス監視部１２２０からシステム権限が継承される。これにより、上述したＵＡＣによるポップアップ表示画面３０の表示を抑制できる。
【００５５】
また、アップデートインストーラプロセス監視部１２２０は、起動させたアップデートインストーラによるプロセスを、当該アップデートインストーラが終了するまで監視する。
【００５６】
システムサービス起動・停止部１２２１は、アップデートインストーラの起動前に、本体システムサービス部１２１の動作を停止させる。また、システムサービス起動・停止部１２２１は、アップデートインストーラの終了後に、本体システムサービス部１２１を起動させる。
【００５７】
（実施形態に係るアップデートインストーラ制御の詳細）
次に、実施形態に係るアップデートインストーラ制御について、より詳細に説明する。なお、以下では、ファイルサーバ２０は、各クライアントＰＣ１０ａ、１０ｂ、…にインストールされる特定ソフトウェアをより新しいバージョンの特定ソフトウェア１３０にアップデートインストールするためのアップデートインストーラが配置されている。上述したように、このアップデートインストーラは、実施形態に係る支援ソフトウェア１００が内包され、この支援ソフトウェア１００は、当該特定ソフトウェアより新しいバージョンの特定ソフトウェア１３０が内包される。また、アップデートインストーラは、ＵＩ表示などを行わないサイレントモードでアップデートインストール処理を実行可能であるものとする。
【００５８】
図６は、実施形態に係る支援ソフトウェアの動作を示す一例のフローチャートである。例えばクライアントＰＣ１０ａにおいて、ステップＳ１００で、支援ソフトウェア１００が所定のトリガに応じて起動される。例えば、例えばクライアントＰＣ１０ａのＯＳにログインしたログインユーザが当該支援ソフトウェア１００に含まれる特定ソフトウェア１３０を起動したことをトリガとして、支援ソフトウェア１００が起動される。これに限らず、支援ソフトウェア１００は、クライアントＰＣ１０ａのＯＳに対するユーザのログインをトリガとして起動されてもよい。支援ソフトウェア１００が起動されることで、当該支援ソフトウェア１００の本体ユーザプロセス部１１１が起動される。
【００５９】
本体ユーザプロセス部１１１は、起動されると、自身を起動したログインユーザのユーザ情報を本体システムサービス部１２１に渡す。本体システムサービス部１２１において、ログインユーザ管理部１２１１は、本体ユーザプロセス部１１１から渡されたユーザ情報を、起動ユーザリスト（表１参照）に追加登録する。
【００６０】
次のステップＳ１０１で、支援ソフトウェア１００において、アップデート確認部１１１０は、ファイルサーバ２０にアクセスし、クライアントＰＣ１０ａに既に搭載されている支援ソフトウェア１００に対応するアップデートインストーラを探索する。例えば、ファイルサーバ２０は、アップデートインストーラの実行ファイルと同じフォルダに、ソフトウェアを一意に識別可能なＧＵＩＤ(Globally  Unique  Identifier)が記述された所定フォーマットの設定情報ファイルを配置しておく。アップデート確認部１１１０は、ファイルサーバ２０からこの設定情報ファイルを取得し読み込むことで、当該アップデートインストーラのファイルサーバ２０への配置の有無を確認する（ステップＳ１０２）。
【００６１】
ステップＳ１０２で、アップデート確認部１１１０は、探索対象のアップデートインストーラのファイルサーバ２０への配置が確認されなかった場合（ステップＳ１０２、「無し」）、処理をステップＳ１１０に移行させる。ステップＳ１１０で、支援ソフトウェア１００の通常起動が行われる。通常起動は、アップデートインストール処理を行わない起動である。例えば、支援ソフトウェア１００は、通常起動において、特定ソフトウェア１３０を起動させる。例えば、ステップＳ１１０において起動された特定ソフトウェア１３０による動作が終了されると、処理がステップＳ１０７に移行され、支援ソフトウェア１００の動作が終了される。
【００６２】
ステップＳ１０２で、アップデート確認部１１１０は、探索対象のアップデートインストーラのファイルサーバ２０への配置が確認された場合（ステップＳ１０２、「有り」）、処理をステップＳ１０３に移行させる。ステップＳ１０３で、アップデート確認部１１１０は、ステップＳ１０２で確認されたアップデートインストーラのバージョンと、クライアントＰＣ１０ａに現在搭載されている当該支援ソフトウェア１００のバージョンとを比較する。
【００６３】
例えば、ファイルサーバ２０は、アップデートインストーラのバージョンが記述された所定フォーマットの設定情報ファイルを、当該アップデートインストーラの実行ファイルと同じフォルダに配置しておく。アップデート確認部１１１０は、ファイルサーバ２０からこのバージョンが記述された設定情報ファイルを取得し読み込むことで、当該アップデートインストーラのバージョンを知ることができる。アップデート確認部１１１０は、クライアントＰＣ１０ａに搭載される支援ソフトウェア１００のバージョンと、アップデートインストーラのバージョンとを比較する。
【００６４】
アップデート確認部１１１０は、ステップＳ１０３の比較の結果、アップデートインストーラのバージョンが、クライアントＰＣ１０ａに搭載される支援ソフトウェア１００のバージョンより低い、または、両者のバージョンが同じと判定した場合（ステップＳ１０４、「低いｏｒ同じ」）、処理をステップＳ１１０に移行させ、例えば特定ソフトウェア１３０を通常起動させる。
【００６５】
一方、アップデート確認部１１１０は、ステップＳ１０３の比較の結果、アップデートインストーラのバージョンが、クライアントＰＣ１０ａに搭載される支援ソフトウェア１００のバージョンよりも高いと判定した場合（ステップＳ１０４、「高い」）、処理をステップＳ１０５に移行させる。
【００６６】
ステップＳ１０５で、支援ソフトウェア１００において、本体ユーザプロセス部１１１は、現在他のユーザが本体ユーザプロセス部１１１を起動していないことを確認する（詳細は後述する）。本体ユーザプロセス部１１１は、この確認の結果に基づき、現在他のユーザが本体ユーザプロセス部１１１を起動していると判定した場合（ステップＳ１０５、「Ｎｏ」）、処理をステップＳ１１１に移行させ、当該本体ユーザプロセス部１１１によるアップデートインストールが実行できない旨のエラー表示を行い、処理をステップＳ１１０に移行させる。
【００６７】
一方、本体ユーザプロセス部１１１は、ステップＳ１０５で、ログインユーザ管理部１２１１による確認の結果に基づき、現在本体ユーザプロセス部１１１を起動している他のユーザが存在しないと判定した場合（ステップＳ１０５、「Ｙｅｓ」）、処理をステップＳ１０６に移行させる。ステップＳ１０６で、支援ソフトウェア１００は、アップデートインストーラによるアップデートインストール処理を実行する（詳細は後述する）。
【００６８】
アップデートインストーラによるアップデートインストール処理が完了すると、処理がステップＳ１０７に移行され、支援ソフトウェア１００の動作が終了される。
【００６９】
次に、図７を用いて、上述したステップＳ１０６による、実施形態に係るアップデートインストール処理をより詳細に説明する。本体ユーザプロセス部１１１は、インストーラ取得部１１１１により、上述のステップＳ１０１およびステップＳ１０２によるアップデートインストーラの探索結果に基づき、ファイルサーバ２０からアップデートインストーラをダウンロードし、アップデートインストーラを取得する（ステップＳ１）。
【００７０】
次に、本体ユーザプロセス部１１１は、アップデートエージェントユーザプロセス起動部１１１２により、アップデートエージェントユーザプロセス部１１２を起動させる（ステップＳ１０）。
【００７１】
ここで、アップデートエージェントユーザプロセス起動部１１１２は、アップデートエージェントユーザプロセス部１１２を起動させる前に、支援ソフトウェア１００に内包されるアップデートエージェント（アップデートエージェントユーザプロセス部１１２およびアップデートエージェントシステムプロセス部１２２）を構成するプログラムファイルなど一式を、クライアントＰＣ１０ａにおいて例えばストレージ１００４上に作成された一時フォルダにコピーする。ステップＳ１０で、アップデートエージェントユーザプロセス起動部１１１２は、この一時フォルダにコピーされたアップデートエージェントのプログラムファイル一式に含まれるアップデートエージェントユーザプロセス部１１２を起動させる。すなわち、このアップデートエージェントのプログラムファイル一式も、アップデートの対象となるため、コピーされたプログラムの方を実行させる。
【００７２】
本体ユーザプロセス部１１１は、アップデートエージェントユーザプロセス部１１２を起動させると、ステップＳ１１で、アップデートインストーラ１４０の起動を指示する起動指示を含む通知を本体システムサービス部１２１に渡す（通知ステップ）。
【００７３】
本体システムサービス部１２１は、ステップＳ１１で本体ユーザプロセス部１１１から渡された通知を受け取ると、アップデートエージェント管理部１２１２により、アップデートエージェントシステムプロセス部１２２を起動させる（ステップＳ１２）。アップデートエージェントシステムプロセス部１２２は、本体システムサービス部１２１から起動されることで、システム権限を継承することができる。
【００７４】
ステップＳ１２でアップデートエージェントシステムプロセス部１２２が起動された後、本体ユーザプロセス部１１１および本体システムサービス部１２１の動作を停止させる必要がある。例えば、起動したアップデートエージェントユーザプロセス部１１２およびアップデートエージェントシステムプロセス部１２２において、本体ユーザプロセス起動・停止部１１２０により本体ユーザプロセス部１１１を停止させ、システムサービス起動・停止部１２２１が本体システムサービス部１２１を停止させる。これに限らず、本体ユーザプロセス部１１１や本体システムサービス部１２１が自身を終了させることができる場合には、自身で終了させてもよい。
【００７５】
アップデートエージェントシステムプロセス部１２２は、ステップＳ１３で、アップデートインストーラプロセス監視部１２２０により、アップデートインストーラ１４０をサイレントモードで起動させる（起動ステップ）。アップデートエージェントシステムプロセス部１２２は、システム権限で動作している。そのため、アップデートエージェントシステムプロセス部１２２が生成したアップデートインストーラ１４０のプロセスは、システム権限を継承して動作することができ、ＵＡＣによるポップアップ表示画面３０の表示を回避できる。
【００７６】
また、アップデートエージェントシステムプロセス部１２２は、自身が起動したアップデートインストーラ１４０の実行状況を監視する。
【００７７】
アップデートインストーラ１４０は、内包される支援ソフトウェア１００の各コンポーネントにより、クライアントＰＣ１０ａに搭載されている支援ソフトウェア１００を更新し、支援ソフトウェア１００のアップデートインストール処理を行う。このとき、アップデートインストーラ１４０は、支援ソフトウェア１００の本体ユーザプロセス部１１１に内包される特定ソフトウェア１３０のアップデートインストール処理も実行する。
【００７８】
一方、アップデートエージェントユーザプロセス部１１２は、アップデート状況監視部１１２２により、アップデートエージェントシステムプロセス部１２２を介して、アップデートインストーラ１４０によるアップデートインストール処理の実行状況を監視する（ステップＳ１４）。より具体的には、アップデートエージェントユーザプロセス部１１２は、アップデート状況監視部１１２２により、名前付きパイプを用いてアップデートエージェントシステムプロセス部１２２と定期的に通信を行い（ステップＳ１４ａ、ステップＳ１４ｂ）、アップデートインストーラプロセス監視部１２２０からアップデートインストーラ１４０の実行状況を示す情報を取得する。
【００７９】
アップデートエージェントユーザプロセス部１１２は、ＵＩ表示部１１２１により、アップデート状況監視部１１２２からアップデートインストーラ１４０の実行状況を示す情報を取得し、当該実行状況を提示するための表示を行う（提示ステップ）。ＵＩ表示部１１２１は、この実行状況を示す情報がアップデートインストール処理が終了していないことを示している場合には、アップデートインストール処理が実行中であることを示す表示を行う。また、ＵＩ表示部１１２１は、実行状況を示す情報がアップデートインストール処理が完了したことを示している場合には、アップデートインストール処理の成功または失敗を示す表示を行う。
【００８０】
図８は、実施形態に適用可能な、ＵＩ表示部１１２１により表示されるアップデートインストール処理の実行状況を示す進捗表示画面の例を示す。図８（ａ）は、アップデートインストール処理が実行中であることを示す進捗表示画面４０の例を示す。図８（ａ）の例では、進捗表示画面４０は、アップデートインストール処理が実行中である旨を示すメッセージ４００と、アップデートインストール処理の進捗状況を概略的に示す進捗表示４０１および４０２と、を含む。進捗表示４０１は、アップデートインストール処理の進捗状況をグラフィカルに表現した例である。また、進捗表示４０２は、当該進捗状況を、アップデートインストール処理が終了するまでの概略的な残時間を推測して表現した例である。
【００８１】
なお、図８（ａ）の例では、進捗表示画面４０が、メッセージ４００と、進捗表示４０１および４０２とを含んでいるが、これはこの例に限定されない。すなわち、進捗表示画面４０は、ユーザがアップデートインストール処理が実行中であることを認識可能な表示が行われていればよく、例えば、メッセージ４００、進捗表示４０１および４０２のうち少なくとも１つが表示されていればよい。また、アップデートインストール処理の実行中を示す表示は、図８（ａ）の例に限定されない。
【００８２】
図８（ｂ）は、アップデートインストール処理が終了した場合の進捗表示画面４１の例を示す。図８（ｂ）に示される進捗表示画面４１は、アップデートインストール処理の成功または失敗を示すメッセージ４１０が表示される。この例では、メッセージ４１０は、アップデートインストール処理が成功し、アップデートインストール処理が完了した旨を示している。ボタン４１１は、この進捗表示画面４１を閉じるためのボタンである。
【００８３】
アップデートエージェントシステムプロセス部１２２において、システムサービス起動・停止部１２２１は、アップデートインストーラプロセス監視部１２２０からアップデートインストール処理の完了を示す情報を取得すると、本体システムサービス部１２１を起動させる（ステップＳ１５）。同様に、アップデートエージェントユーザプロセス部１１２において、本体ユーザプロセス起動・停止部１１２０は、アップデート状況監視部１１２２からアップデートインストール処理の完了を示す情報を取得すると、本体ユーザプロセス部１１１を起動させる（ステップＳ１６）。
【００８４】
ステップＳ１５およびステップＳ１６にて本体ユーザプロセス部１１１および本体システムサービス部１２１が起動されると、図６のフローチャートにおける処理が、ステップＳ１０６からステップＳ１０７に移行され、支援ソフトウェア１００の動作が終了される。
【００８５】
次に、図９を用いて、上述したステップＳ１０５による、現在他のユーザが本体ユーザプロセス部１１１を起動しているか否かを判定する処理について、より詳細に説明する。本体ユーザプロセス部１１１は、本体ユーザプロセス部１１１が起動されると、自身を起動させたログインユーザのユーザ情報をＯＳから取得して本体システムサービス部１２１に渡す。
【００８６】
上述したように、本体システムサービス部１２１において、ログインユーザ管理部１２１１は、本体ユーザプロセス部１１１から渡されたユーザ情報を起動ユーザリストに登録し、例えばＲＡＭ１００２に記憶する。ログインユーザ管理部１２１１は、起動ユーザリストに登録されたユーザ情報を、そのユーザ情報が示すユーザがログアウトするか、当該ユーザ情報が示すユーザにより起動された本体ユーザプロセス部１１１が終了されるまで、ＲＡＭ１００２上に保持する。起動ユーザリストは、必要に応じて本体システムサービス部１２１により参照される。
【００８７】
図９の例では、ログインユーザ名「ｕｓｅｒＡ」および「ｕｓｅｒＢ」の各ユーザによりそれぞれ本体ユーザプロセス部１１１が起動された状態が示されている。図９において、ログインユーザ名「ｕｓｅｒＡ」のユーザにより起動された本体ユーザプロセス部１１１を本体ユーザプロセス部１１１＃Ａとし、ログインユーザ名「ｕｓｅｒＢ」のユーザにより起動された本体ユーザプロセス部１１１を本体ユーザプロセス部１１１＃Ｂとして、それぞれ示されている。
【００８８】
本体ユーザプロセス部１１１＃Ａおよび１１１＃Ｂは、それぞれ、例えばログインユーザ名「ｕｓｅｒＡ」および「ｕｓｅｒＢ」をユーザ情報として本体システムサービス部１２１に渡す。本体システムサービス部１２１において、ログインユーザ管理部１２１１は、これらログインユーザ名「ｕｓｅｒＡ」および「ｕｓｅｒＢ」を起動ユーザリスト（表１参照）に登録し、例えばＲＡＭ１００２に記憶させ保持する。
【００８９】
図６のステップＳ１０５において、本体ユーザプロセス部１１１は、アップデートインストール処理の実行を開始する前に、本体システムサービス部１２１に対して、自身を起動させたユーザのユーザ情報を渡し、自身以外に、他のユーザ情報を持つユーザにより本体ユーザプロセス部１１１が起動されているか否かを問い合わせる。
【００９０】
本体システムサービス部１２１において、ログインユーザ管理部１２１１は、この問い合わせに応じて、保持している起動ユーザリストを参照して、本体ユーザプロセス部１１１から渡されたユーザ情報以外のユーザ情報が当該起動ユーザリストに登録されているか否かを調べ、その結果を本体ユーザプロセス部１１１に渡す。本体ユーザプロセス部１１１は、ログインユーザ管理部１２１１から渡された結果が、本体システムサービス部１２１に渡したユーザ情報以外のユーザ情報が起動ユーザリストに登録されている旨を示している場合、現在、他のユーザにより本体ユーザプロセス部１１１が起動中であると判定する。
【００９１】
例えば、図９の例において、起動ユーザリストにユーザ情報「ｕｓｅｒＡ」および「ｕｓｅｒＢ」が登録されている状態で、本体ユーザプロセス部１１１＃Ｂからログインユーザ管理部１２１１に対して、ユーザ情報「ｕｓｅｒＢ」に関して問い合わせがなされたものとする。この場合、起動ユーザリストには、ユーザ情報「ｕｓｅｒＢ」の他に、当該ユーザ情報「ｕｓｅｒＢ」とは異なるユーザ情報「ｕｓｅｒＡ」が登録されているため、現在、他のユーザにより本体ユーザプロセス部１１１（この場合は本体ユーザプロセス部１１１＃Ａ）が起動中であると判定する。
【００９２】
なお、上述では、実施形態に係る支援ソフトウェア１００を内包するアップデートインストーラがファイルサーバ２０に保存されているように説明したが、これはこの例に限定されない。例えば、ネットワーク２に接続される管理用コンピュータに当該アップデートインストーラを保存しておくことも考えられる。
【００９３】
上述したように、実施形態では、アップデートインストーラがシステム権限プロセスによるアップデートインストーラプロセス監視部１２２０から起動されるため、システム権限が継承される。これにより、ＵＡＣによるポップアップ表示画面３０の表示が回避され、ソフトウェアのアップデートインストール処理時にユーザに要求されるアクションを抑制できる。
【００９４】
また、実施形態では、ログインユーザによりアップデートインストーラの起動が指示された際に、ログインユーザ管理部１２１１により、起動ユーザリストに基づき他のログインユーザが本体ユーザプロセス部１１１を起動していない場合に、アップデートインストーラの起動を可能としている。
【００９５】
そのため、アップデートインストーラがシステム権限を継承して動作していても、複数有り得る動作環境からアップデートインストーラが起動されているデスクトップを特定でき、アップデートインストーラの動作に応じたＵＩ画面を表示可能である。また、他のログインユーザが本体ユーザプロセス部１１１の機能を実行してる場合に、その機能が妨げられることが防がれる。
【００９６】
なお、上述の各実施形態は、本発明の好適な実施の例ではあるがこれに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変形による実施が可能である。
【符号の説明】
【００９７】
２  ネットワーク
１０ａ，１０ｂ  クライアントＰＣ
２０  ファイルサーバ
３０  ポップアップ表示画面
４０，４１  進捗表示画面
１００  支援ソフトウェア
１１０  ユーザプロセス部
１１１，１１１＃Ａ，１１１＃Ｂ  本体ユーザプロセス部
１１２  アップデートエージェントユーザプロセス部
１２０  システムプロセス部
１２１  本体システムサービス部
１２２  アップデートエージェントシステムプロセス部
１３０  特定ソフトウェア
１４０  アップデートインストーラ
１１１０  アップデート確認部
１１１１  インストーラ取得部
１１１２  アップデートエージェントユーザプロセス起動部
１１２０  本体ユーザプロセス起動・停止部
１１２１  ＵＩ表示部
１１２２  アップデート状況監視部
１２１１  ログインユーザ管理部
１２１２  アップデートエージェント管理部
１２２０  アップデートインストーラプロセス監視部
１２２１  システムサービス起動・停止部
【先行技術文献】
【特許文献】
【００９８】
【特許文献１】特開２０１４−１７９００６号公報
【図１】
2018205798.tif 000004
【図２】
2018205798.tif 000005
【図３】
2018205798.tif 000006
【図４】
2018205798.tif 000007
【図５】
2018205798.tif 000008
【図６】
2018205798.tif 000009
【図７】
2018205798.tif 000010
【図８】
2018205798.tif 000011
【図９】
2018205798.tif 000012