(57)【要約】【課題】  再起動を避けたい情報処理装置であっても、再起動を行わない限りソフトウエアの更新が行われないという課題がある。【解決手段】  インストーラ２は、インストール対象ソフトウエア３のモジュールを指定したディレクトリにコピーする処理、及び、再起動後に指定したディレクトリよりファイルのコピーを行う処理２１と、指定したディレクトリのモジュールのバージョン情報を取得する処理を行わせるバージョン情報取得処理２４とを含み、インストール対象ソフトウエア３は、モジュールのバージョン情報を取得する処理を行わせるバージョン情報取得処理３２と、指定したディレクトリに存在するモジュールをロードする処理を行わせるロード処理３３と、ロードされたモジュールから関数をコールする処理を行わせる関数コール処理３４とを含む。【選択図】  図１
2007066132.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置にソフトウエアをインストールするための処理をコンピュータに行わせるインストールプログラムと、このインストールプログラムによる処理によってインストールされてコンピュータに所要の処理を行わせるインストール対象ソフトウエアとで構成されるプログラムシステムであって、
前記インストールプログラムは、インストール対象ソフトウエアのモジュールを指定したディレクトリにコピーする処理、インストール状況及びエラーメッセージを表示するユーザーインターフェース表示処理、情報処理装置の再起動後に指定したディレクトリよりファイルのコピーを行う処理、情報処理装置の再起動後に指定したディレクトリよりファイルの削除を行う処理、指定したディレクトリのモジュールのバージョン情報を取得する処理を行わせるプログラムであり、
前記インストール対象ソフトウエアは、指定したディレクトリよりモジュール名を取得する処理、モジュールのバージョン情報を取得する処理、指定したディレクトリに存在するモジュールをロードする処理、ロードされたモジュールから関数をコールする処理を行わせるプログラムである
ことを特徴とするプログラムシステム。
【請求項２】
請求項１に記載のプログラムシステムにおいて、前記インストールプログラムは、前記情報処理装置に既にインストール対象ソフトウエアがインストールされているときには、既にインストールされているインストール対象ソフトウエアのバージョン情報を取得し、インストールしようとしているインストール対象ソフトウエアのバージョンが新しい場合にインストール処理を行わせることを特徴とするプログラムシステム。
【請求項３】
請求項１に記載のプログラムシステムにおいて、前記インストールプログラムは、インストール対象ソフトウエアが情報処理装置で使用されていて更新版モジュールの上書きコピーが行えない場合には、特定した情報処理装置の記憶領域に更新版モジュールをコピーし、前記情報処理装置の再起動後に前記記憶領域からインストール対象モジュールに対して上書きコピーを行い、モジュールのコピー後は記憶領域に保存していた更新版モジュールの削除を行う処理を行わせることを特徴とするプログラムシステム。
【請求項４】
請求項１ないし３のいずれかに記載のプログラムシステムにおいて、前記インストールプログラムは、インストール状況及びエラーメッセージを表示するユーザーインターフェース表示処理を含み、前記記憶領域へのコピーが失敗した場合、再起動後に再度インストールプログラムの実行を促すメッセージを表示する処理を行わせることを特徴とするプログラムシステム。
【請求項５】
請求項１に記載のプログラムシステムにおいて、前記インストール対象ソフトウエアは、前記インストールプログラムにより特定される情報処理装置内の記憶領域に前記インストールプログラムによりコピーされたインストール対象ソフトウエアを構成するモジュールと同名モジュールが存在するときには、同名モジュールのバージョン情報を取得し、記憶領域に存在する同名モジュールの方がインストール対象ソフトウエアを構成するモジュールのバージョンより新しい場合に前記記憶領域内の同名モジュールをロードする処理を行わせることを特徴とするプログラムシステム。
【請求項６】
請求項５に記載のプログラムシステムにおいて、前記インストール対象ソフトウエアは、インストールプログラムが特定した記憶領域にあるインストール対象ソフトウエアを構成するモジュールと同名のモジュールをロードしたときには、インストール対象ソフトウエアから記憶領域に存在する更新版モジュール内の関数をコールする処理を行なわせ、更新された処理を実行可能とすることを特徴とするプログラムシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はプログラムシステムに関し、情報処理装置にソフトウエアをインストールするための処理をコンピュータに行わせるインストールプログラムと、このインストールプログラムによる処理によってインストールされてコンピュータに所要の処理を行わせるインストール対象ソフトウエアとで構成されるプログラムシステムに関する。
【背景技術】
【０００２】
従来、例えば画像形成装置を制御するために情報処理装置側にインストールされるプリンタドライバについて機能の追加、更新を行う方法として、一般的にバージョンアップという方法が幅広く用いられている。このバージョンアップは、新しいモジュールをプリンタドライバモジュールに追加して、プリンタドライバの機能を拡張するために、プリンタドライバの再インストールを行って、情報処理装置を再起動することで、更新後のプリンタドライバが有効になる。
【０００３】
このようなプログラムの更新に関しては、例えば特許文献１ないし９に記載されているようなものがある。
【特許文献１】特開２００４−２０６２２９号公報
【特許文献２】特開２００４−０１７４７０号公報
【特許文献３】特開２００４−０６２３９７号公報
【特許文献４】特開２００４−０６２３９８号公報
【特許文献５】特開２００３−１３１８７９号公報
【特許文献６】特開２００３−３０８２１５号公報
【特許文献７】特開２００４−２０６６６０号公報
【特許文献８】特開２００４−２８７７６４号公報
【特許文献９】特開２００４−３２６６０１号公報
【０００４】
つまり、特許文献１には、パーソナルコンピュータ（ＰＣ）を、プリンタを制御する制御手段として機能させる場合に、制御対象とするプリンタを指定する接続先情報を取得し、これを取得した場合、その情報によって指定された接続先に接続されているプリンタがその制御手段による制御に適合しているか否か判定し、適合していないと判定した場合にはプリンタの制御を行わないようにする処理を行うためのプログラムをＰＣにインストールする場合、そのインストール前に、インストール対象のプログラムに適合し、かつＰＣから制御可能な状態の装置を検索し、検索対象の装置が存在しないと認識した場合にはインストールを中止するようにすることが記載されている。
【０００５】
特許文献２には、入力された画像形成処理要求に応じて画像形成処理を実行する画像形成装置と、画像形成装置に接続され、搭載された制御プログラムを実行することにより動作する周辺装置と、を有する画像形成システムにおいて、バージョンアップが行われている周辺装置を使用する画像形成処理要求が入力されてきたときにその要求を拒絶し、そうでない要求が入力されたときにはその要求に応じて画像形成処理を実行する画像形成方法が記載されている。
【０００６】
特許文献３、４には、プリンタドライバをパーソナルコンピュータ等の情報処理装置にインストールする際に、インストールするモジュールセットの名称を、ある一定のルールに従ってインストール時に変更することによって、対応する全機種共通のドライバモジュールセットを、機種別の名称でインストールすることが可能とし、望まれていないシステムの再起動を、最小限にとどめることが可能となることが記載されている。
【０００７】
特許文献５には、コンピュータシステムに関連して使用される、リブートを抑制するインストールシステムであって、該インストールシステムの装置が、該インストールシステムをテンポラリディレクトリにロードするロード機構と、該インストールシステムのパスをテンポラリディレクトリに設定するディレクトリ機構と、該テンポラリディレクトリから該インストールシステムを実行する実行機構とを含むシステムが記載されている。
【０００８】
特許文献６には、デバイスドライバを搭載可能な情報処理装置の制御方法であって、デバイスドライバをインストールするインストール工程と、インストール工程においてデバイスドライバをインストールするに際し情報処理装置内の制御プログラムの再起動の要否を判定する判定工程と、判定工程において再起動が必要であると判断された場合には、再起動を促す表示画面を表示する制御を行う表示制御工程を有することで、必要な再起動を行いつつ不要な再起動を減らす制御方法が記載されている。
【０００９】
特許文献７には、所定の種類の機器が接続されると、その機器に記憶された所定の自動起動スクリプト又は自動起動プログラムを実行するコンピュータの、汎用周辺機器インタフェースに着脱され、制御手段と、主な記憶装置としてＲＯＭ又は読み書き可能な記憶装置と、を備えた着脱式デバイスであって、制御手段は、第１の単位デバイス及び第２の単位デバイスを含む複数の単位デバイスと、コンピュータ側とのデータ授受を、各単位デバイスに割り振るハブ手段と、汎用周辺機器インタフェースに接続された際に、まず先に第１の単位デバイスについて所定の種類の機器を模した信号をコンピュータに送り、その後所定のタイミングで、第２の単位デバイスについて認識を受けるための所定の信号を前記コンピュータに送る手段とを備えたものが記載されている。
【００１０】
特許文献８には、ＰＣは、プリンタドライバを削除することを要求する削除要求を検出し、削除要求の対象であるプリンタドライバが通常使うプリンタドライバに設定されている場合、削除要求の対象であるプリンタドライバと異なるプリンタドライバを通常使うプリンタドライバに設定することをユーザーに促す制御を行うことが記載されている。
【００１１】
特許文献９には、ホストコンピュータで動作する検索対象情報リストＵＩ制御モジュール内の検索対象情報リストに記述されている検索対象範囲に存在している機能情報を取得して機能情報リストに書き込み、この書き込んだ機能情報（の一部）をプリンタ機能設定画面内の表示欄に表示して、表示した機能情報に対応する機能の追加、更新、及び削除の指示を受け付け、受け付けた指示に従って、機能の追加、更新、及び削除を実行することにより、ドライバ本体モジュールに接続されているプラグインモジュールを用いて機能の追加、更新、及び削除を行えるようにすることが記載されている。
【発明の開示】
【発明が解決しようとする課題】
【００１２】
上述した従来の情報処理装置やこれに関連するプログラム、制御方法などにおいては、使用するソフトウエアの更新インストールを行うとき、更新を行おうとするソフトウエアが情報処理装置によって使用されている等の理由で更新を行おうとするソフトウエアモジュールの上書きコピーが行えない場合に、インストールプログラム（以下「インストーラ」という。）により情報処理装置の再起動を行うことで、再起動後にソフトウエアモジュールの更新を行うようにしている。
【００１３】
ところが、情報処理装置の使用環境には、サーバー用途等の終日稼動している情報処理装置のように極力再起動を避けたい使用環境がある。
【００１４】
しかしながら、このように再起動を避けたい情報処理装置であっても、従来は、情報処理装置の再起動を行わない限りソフトウエアの更新が行われないという課題がある。
【００１５】
本発明は上記の課題に鑑みてなされたものであり、情報処理装置の再起動を行うことなく更新された処理を行うことができるようにするプログラムシステムを提供することを目的とする。
【課題を解決するための手段】
【００１６】
上記の課題を解決するため、本発明に係るプログラムシステムは、情報処理装置にソフトウエアをインストールするための処理をコンピュータに行わせるインストールプログラムと、このインストールプログラムによる処理によってインストールされてコンピュータに所要の処理を行わせるインストール対象ソフトウエアとで構成されるプログラムシステムであって、インストールプログラムは、インストール対象ソフトウエアのモジュールを指定したディレクトリにコピーする処理、情報処理装置の再起動後に指定したディレクトリよりファイルのコピーを行う処理、情報処理装置の再起動後に指定したディレクトリよりファイルの削除を行う処理、指定したディレクトリのモジュールのバージョン情報を取得する処理を行わせるプログラムであり、インストール対象ソフトウエアは、指定したディレクトリよりモジュール名を取得する処理、モジュールのバージョン情報を取得する処理、指定したディレクトリに存在するモジュールをロードする処理、ロードされたモジュールから関数をコールする処理を行わせるプログラムである構成とした。
【００１７】
ここで、インストールプログラムは、情報処理装置に既にインストール対象ソフトウエアがインストールされているときには、既にインストールされているインストール対象ソフトウエアのバージョン情報を取得し、インストールしようとしているインストール対象ソフトウエアのバージョンが新しい場合にインストール処理を行わせることが好ましい。
【００１８】
また、インストールプログラムは、インストール対象ソフトウエアが情報処理装置で使用されていて更新版モジュールの上書きコピーが行えない場合には、特定した情報処理装置の記憶領域に更新版モジュールをコピーし、情報処理装置の再起動後に記憶領域からインストール対象モジュールに対して上書きコピーを行い、モジュールのコピー後は記憶領域に保存していた更新版モジュールの削除を行う処理を行わせることが好ましい。
【００１９】
この場合、インストールプログラムは、インストール状況及びエラーメッセージを表示するユーザーインターフェース表示処理を含み、記憶領域へのコピーが失敗した場合、再起動後に再度インストールプログラムの実行を促すメッセージを表示する処理を行わせることが好ましい。
【００２０】
さらに、インストール対象ソフトウエアは、インストールプログラムにより特定される情報処理装置内の記憶領域にインストールプログラムによりコピーされたインストール対象ソフトウエアを構成するモジュールと同名モジュールが存在するときには、同名モジュールのバージョン情報を取得し、記憶領域に存在する同名モジュールの方がインストール対象ソフトウエアを構成するモジュールのバージョンより新しい場合に記憶領域内の同名モジュールをロードする処理を行わせることが好ましい。
【００２１】
この場合、インストール対象ソフトウエアは、インストールプログラムが特定した記憶領域にあるインストール対象ソフトウエアを構成するモジュールと同名のモジュールをロードしたときには、インストール対象ソフトウエアから記憶領域に存在する更新版モジュール内の関数をコールする処理を行なわせ、更新された処理を実行可能とすることが好ましい。
【発明の効果】
【００２２】
本発明に係るデータ転送装置によれば、上記の構成を採用したので、インストーラがソフトウエアの更新インストールを行うときに、ソフトウエアモジュールの上書きコピーができないために情報処理装置の再起動が必要となる場合であっても、記憶領域に存在する更新版モジュールをロードして更新版モジュールの内の関数をコールすることで、再起動を行わないで更新された処理を実行可能とすることできるようになり、ソフトウエアの更新インストール時の再起動を抑制することができる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明の実施の形態について添付図面を参照して説明する。本発明の一実施形態について図１を参照して説明する。なお、図１は本発明に係るプログラムシステムの情報処理装置上での機能構成を説明するブロック図である。
このプログラムシステムは、情報処理装置１にソフトウエアをインストールするための処理をコンピュータに行わせるインストールプログラム（以下「インストーラ」という。）２と、このインストーラ２による処理によってインストールされてコンピュータに所要の処理を行わせるインストール対象ソフトウエア３とで構成される。
【００２４】
インストーラ２は、インストール対象ソフトウエア３を収録したインストール用ＣＤ−ＲＯＭなどの記憶媒体から自動起動され、あるいは、情報処理装置１上からユーザーにより実行されることによって起動される。
【００２５】
そして、このインストーラ２は、インストール対象ソフトウエア３のモジュールを指定したディレクトリにコピーする処理、及び、情報処理装置１の再起動後に指定したディレクトリよりファイルのコピーを行う処理を行わせるモジュールコピー処理２１と、インストール状況及びエラーメッセージをディスプレイ１１に表示させる処理を行わせるユーザーインターフェース表示処理２２と、情報処理装置１の再起動後に指定したディレクトリよりファイルを削除する処理を行わせるモジュール削除処理２３と、指定したディレクトリのモジュールのバージョン情報を取得する処理を行わせるバージョン情報取得処理２４とを含むプログラムである。
【００２６】
また、インストール対象ソフトウエア３は、再起動抑止処理部３０と、このソフトウエアの実行処理を行なうソフトウエア実行処理部３５とを含むプログラムである。
【００２７】
再起動抑止処理部３０は、指定したディレクトリより同名のモジュール名を取得する処理を行わせる同名モジュール検索処理３１と、モジュールのバージョン情報を取得する処理を行わせるバージョン情報取得処理３２と、指定したディレクトリに存在するモジュールをロードする処理を行わせるロード処理３３と、ロードされたモジュールから関数をコールする処理を行わせる関数コール処理３４とを含むプログラムである。
【００２８】
このプログラムシステムの機能について図２及び図３を参照して説明する。
先ず、インストーラ２は、インストーラの処理遷移状態を、ユーザーインターフェース表示処理２２を使用して情報処理装置１のディスプレイ１１に表示する。
【００２９】
また、インストーラ２はモジュールのバージョン情報取得処理２４を使用して、インストール対象ソフトウエア３を構成するモジュールのバージョンを取得する。このとき、インストール対象ソフトウエア３のバージョンがインストーラ２がインストールを行おうとしているモジュールのバージョンよりも低い場合には、次に述べる更新インストールを行い、高い場合には、ユーザーインターフェース表示処理２２を使用してディスプレイ１１に対してインストーラ２を終了するメッセージを表示し、インストール処理を終了する。
【００３０】
このように、情報処理装置に既にインストール対象ソフトウエアがインストールされていた場合、既にインストールされているインストール対象ソフトウエアのバージョン情報を取得し、インストーラがインストールしようとしているソフトウエアの方がバージョンが新しい場合にはインストール処理を行うようにすることで、インストーラ使用時には既にインストールされているソフトウエアよりも新しいバージョンのソフトウエア、又は同バージョンのソフトウエアがインストールすることが可能となり、古いバージョンのソフトウエアがインストールされることはなくなる。
【００３１】
そこで、更新インストールを行う場合の処理について図２を参照して説明すると、インストーラ２は、ソフトウエアの更新インストール時にモジュールコピー処理２１を行わせて、インストールを行う記憶領域１２に対して更新版モジュールの上書きコピーを行う。
【００３２】
このとき、インストール対象ソフトウエア３が上書きコピー可能で、インストール対象ソフトウエア３のモジュールコピーが正常に終了した場合にはインストーラ２は処理を終了する。
【００３３】
これに対し、モジュールのコピーに失敗したときには、モジュールコピー処理２１は記憶装置１２に対して更新版モジュールのコピーを行う。コピーが正常に終了した場合には、情報処理装置１の再起動後にインストール対象ソフトウエア３がインストールされている記憶領域１２に対してモジュールの上書きコピーを行い、コピー終了後にモジュール削除処理２３を行わせて記憶領域１２から更新版モジュールの削除を行わせる。
【００３４】
このようにインストーラが情報処理装置の特定の記憶領域にソフトウエアの更新版モジュールをコピーし、再起動後に既にソフトウエアがインストールされている記憶領域に対してソフトウエアモジュールの上書きコピーを行うことで、再起動後には更新版のソフトウエアが実行可能となる。
【００３５】
ここで、記憶装置１２に対してモジュールのコピーが失敗した場合には、情報処理装置１の再起動後にインストーラの実行を促すメッセージを、ユーザーインターフェース表示処理２２を行わせてディスプレイ１１に対して表示させる。これにより、ユーザーに対して再起動を促すことができる。
【００３６】
一方、インストール対象ソフトウエア３は、ユーザーにより実行され、或いは、デバイスドライバ等のソフトウエアのようにオペレーティングシステムからコールされることで実行されることにより起動される。
【００３７】
そして、図３に示すように、インストール対象ソフトウエア３を構成するモジュールは、同名モジュール検索処理３１を行わせて、起動直後に記憶領域１２を参照し、インストール対象ソフトウエア３が構成する同名のモジュールを検索する。記憶領域１２に、同名モジュールが存在しない場合には、更新インストールはされないものとし、ソフトウエア実行処理部３５の処理を実行する。
【００３８】
これに対し、同名モジュールが存在する場合にはモジュールのバージョン情報取得処理３２を使用して同名モジュールのバージョン情報を取得する。記憶領域１２に存在するモジュールのバージョン情報がインストール対象ソフトウエア３より古い場合には更新インストールはされないものとし、ソフトウエア実行処理部３５の処理を実行する。
【００３９】
インストール対象ソフトウエア３よりも新しい場合にはソフトウエアの更新インストールを行うものとみなし、モジュールのロード処理３３を行なって、記憶領域１２に存在する同名のモジュールをロードする。
【００４０】
このとき、同名モジュールのロードに失敗した場合にはソフトウエアの更新は不可能とみなし、ソフトウエア実行処理部３５の処理を実行する。
【００４１】
これに対し、同名モジュールのロードに成功した場合には、インストーラ２により更新インストール用のモジュールが記憶装置１２にコピーされたとみなし、ロードされたモジュール内の関数コール処理３４を使用し、記憶装置１２に存在する同名モジュールから更新版の関数をコールし、更新された処理を実行させる。この場合、ソフトウエア実行処理部３５の処理は更新版モジュールの処理より古い処理とみなし、実行しない。
【００４２】
このように、インストール対象ソフトウエアが、同名モジュールのバージョン情報の確認を行うことで、誤って、インストール対象ソフトウエアより古いバージョンのモジュールをロードすることを防ぐことができる。また、インストール対象ソフトウエアが、記憶領域内からモジュールをロードした場合には、更新版モジュール内の関数をコールすることで既にインストールされているインストール対象ソフトウエアよりも更新された処理を情報処理装置の再起動無しに実行することができるようになる。
【図面の簡単な説明】
【００４３】
【図１】本発明に係るプログラムシステムの情報処理装置上での機能構成を説明するブロック図である。
【図２】インストーラの処理の説明に供するフロー図である。
【図３】インストール対象ソフトウエアの処理に説明に供するフロー図である。
【符号の説明】
【００４４】
１…情報処理装置
２…インストーラ
３…インストール対象ソフトウエア
１１…ディスプレイ
１２…記憶領域
２１…モジュールコピー処理
２２…ユーザーインターフェース表示処理
２３…モジュール削除処理
２４…バージョン情報取得処理
３０…再起動抑止処理部
３１…同名モジュール検索処理
３２…バージョン情報取得処理
３３…モジュールロード処理
３４…関数コール処理
３５…ソフトウエア処理実行部
【図１】
2007066132.tif 000003
【図２】
2007066132.tif 000004
【図３】
2007066132.tif 000005