説明

新規インストールソフトウェアの判別方式

【課題】 本発明は、ユーザにより新規インストールされたソフトウェアの有無と使用・未使用を判別する新規インストールソフトウェアの判別方式に関する。
【解決手段】 本発明は、コンピュータの使用前、使用中、使用後の各時点において、実行形式ファイルを検出しファイル情報を取得する検出手段と、該検出手段により取得されたファイル情報を使用前情報、ログ情報、使用後情報として記録する記憶手段と、前記検出手段によるファイル情報を相互に比較し新規インストールソフトウェアの有無と使用・未使用について判別を行う判別手段と備え、ユーザによるコンピュータの使用前、および使用中、使用後の各時点において、ネットワークに接続されたコンピュータまたは接続されていないコンピュータのハードディスクから実行形式ファイルのファイル情報を取得し、相互に比較することにより新規にインストールされたソフトウェアの有無と使用・未使用を判別する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ユーザにより新規インストールされたソフトウェアの有無と使用・未使用を判別する新規インストールソフトウェアの判別方式に関する。
【背景技術】
【0002】
近年、ソフトウェアの著作権や使用許諾権は知的財産権の一つとして重要視されており、ソフトウェアが遵法に使用されるよう管理することが必要とされている。
現在、ソフトウェアの管理を支援するツールには、保有するソフトウェアの台帳作成を簡便にするものや、使用許諾数を超えて使用されないようソフトウェアの実行数を管理するものなどがある。
従来、ソフトウェアのインストール判定を行う方式として、コンピュータのハードディスクからソフトウェアを構成するファイルの名称およびサイズ、作成日時を取得し、判定に用いる方式が提案されている(特許文献1を参照)。
この方式は、ハードディスクから取得した情報とインストール判定条件が合致する場合、予めインストールされていたソフトウェアがそのままインストールされていると判定する。
また、取得した情報とインストール判定条件が合致しない場合、予めインストールされていたソフトウェアとは異なる新たなソフトウェアがインストールされていると判定する。
更に、取得した情報内にインストール判定条件を満たす情報が存在しない場合、予めインストールされていたソフトウェアがアンインストールされたと判定する。
しかしながら、インストール判定に使用されるファイルの名称は、容易に書き換えが可能であり、従来の方式では、書き換えの行われた場合に正しくインストール判定を行うことが出来なかった。
また、同じ種類のソフトウェアのファイルの名称は同一であるため、予めインストールされていたソフトウェアと同じ種類のものが新規インストールされた場合、予めインストールされていたソフトウェアと新規インストールソフトウェアを区別することが出来なかった。
加えて、新規インストールソフトウェアが使用されたか否かを判定することは出来なかった。
【特許文献1】特開平11-212770号
【発明の開示】
【発明が解決しようとする課題】
【0003】
そこで、本発明は、ファイルの名称が書き換えられた場合、並びに予めインストールされていたソフトウェアと同じ種類のソフトウェアが新規インストールされた場合において、新規インストールソフトウェアの有無を判別可能な方式を提案することを目的とする。
加えて、新規インストールソフトウェアがユーザにより使用されたか否かについても判別可能な方式を提案することを目的とする。
【課題を解決するための手段】
【0004】
そのため、本発明の新規インストールソフトウェアの判別方式は、コンピュータの使用前、使用中、使用後の各時点において、実行形式ファイルを検出しファイル情報を取得する検出手段と、該検出手段により取得されたファイル情報を使用前情報、ログ情報、使用後情報として記録する記憶手段と、前記検出手段によるファイル情報を相互に比較し新規インストールソフトウェアの有無と使用・未使用について判別を行う判別手段と備えたものである。
前記検出手段において、ファイルのヘッダー情報を調査することにより、名称の書き換えられたファイルに対しても正しくファイルの形式を確認するものである。
前記判別手段において、ファイルの識別子を比較することにより、予めインストールされていたソフトウェアを構成する実行形式ファイルと新規インストールソフトウェアを構成する実行形式ファイルを区別するものである。
前記判別手段において、ログ情報と使用前情報を比較することにより、新規インストールソフトウェアの有無を判別するものである。
前記判別手段において、ログ情報から使用前情報を除き、除いたファイル情報と使用後情報を比較することにより、使用済みの新規インストールソフトウェアの有無を判別するものである。
前記判別手段において、使用後情報からログ情報を除き、除いたファイル情報と使用前情報を比較することにより、未使用の新規インストールソフトウェアの有無を判別するものである。
【発明の効果】
【0005】
以上のように、本発明は、ネットワークを使用して複数台のコンピュータを調査することが可能であり、企業内や大学、多数のコンピュータを使用する環境におけるソフトウェア管理に利用可能である。
本発明は、新規インストールソフトウェアの有無を判別可能であることに加え、新規インストールソフトウェアの使用・未使用についても判別可能であるため、ソフトウェアの違法コピーの防止策としても有用な情報を提供可能である。
本発明は、単純な方式ではあるものの、一般的に使用されているコンピュータヘ適用することが可能であるため、既存の管理支援ツールと連携した使用も可能と考えられる。
加えて、本発明は、ソフトウェアの更新を行うためのプログラムが実行された場合についても判別することが可能であるため、ソフトウェアのメンテナンス状況の確認等にも応用可能と考えられる。
また、本発明は、ファイルの名称が書き換えられた場合、並びに予めインストールされているソフトウェアと同じ種類のソフトウェアが新規インストールされた場合において、新規インストールソフトウェアの有無を判別可能である。
加えて、新規インストールソフトウェアがユーザにより使用されたか否かについても判別可能であり、ソフトウェアの管理に対して有益な情報を提供可能である。
【発明を実施するための最良の形態】
【0006】
図1は、本発明の実施形態の一例を示す概略構成図である。
ユーザにより使用されるコンピュータであるクライアント(以下、「クライアント」という。)は、ローカル・エリア・ネットワーク(Local Area Network、以下「ネットワーク」という。)を介して管理者の使用するコンピュータであるサーバ(以下、「サーバ」という。)に接続されている。
前記クライアントは、予め管理者によりインストールされたソフトウエアをハードディスクに備えており、該ハードディスクから実行形式ファイルを検出しファイル情報を取得する検出プログラムと、起動された実行形式ファイルのファイル情報を取得するログ情報取得プログラムが記録される。
管理者は、クライアントのセットアップ完了時又はユーザによる使用前に、クライアントの検出プログラムを実行し、使用前に得られた実行形式ファイルのファイル情報(以下、「使用前情報」という。)をサーバに保管する。
また、管理者は、ユーザによりコンピュータが使用されている間、常時、クライアントのログ情報取得プログラムを実行し、起動された実行形式ファイルのファイル情報(以下、「ログ情報」という。)を取得する。
更に、管理者は、ユーザによるコンピュータの使用後、再びクライアントの検出プログラムを実行し、ハードディスク内に記録されている実行形式ファイルのファイル情報(以下、「使用後情報」という。)を取得する。
また、前記サーバには、使用前情報、ログ情報、使用後情報と、実行形式ファイルのファイル情報を比較し判別を行う判別プログラムが記録される。
【0007】
本発明は、ユーザによるコンピュータの使用前、および使用中、使用後の各時点において、ネットワークに接続されたコンピュータまたは接続されていないコンピュータのハードディスクから実行形式ファイルのファイル情報を取得し、相互に比較することにより新規にインストールされたソフトウェアの有無を判別する。
本発明において取得するファイル情報は、実行形式ファイルの名称および識別子、収納場所、作成日時である。
コンピュータの使用前と使用後においては、ハードディスクに記録されている実行形式ファイルからファイル情報を取得する。
使用中においては、起動された実行形式ファイルからファイル情報を取得する。
なお、ハードディスクに記録されているファイルの中から実行形式ファイルを検出する工程においては、ファイルのヘッダー情報を調査し、ファイルのタイプを確認する。
ヘッダー情報は、ファイルの名称の書き換えによって変更されないため、書き換えの行われたファイルについても正しくファイルタイプを確認することが可能である。
ファイル情報を比較する工程においては、ファイルの名称および識別子、収納場所、作成日時が全て合致するか否かの比較を行う。
比較に使用されるファイル情報の内、識別子は、OSにより各ファイルに割り当てられる固有の値であり、同じ名称のファイルでも値が異なるため、予めインストールされていたソフトウェアを構成する実行形式ファイルと新規にインストールされたソフトウェアを構成する実行形式ファイルの区別が可能である。
新規インストールソフトウェアの有無を判別する工程においては、使用前、および使用中、使用後の各時点において取得されたファイル情報をそれぞれ比較する。
始めに、使用中に取得したファイル情報と使用前に取得したファイル情報を比較し、ユーザにより使用されたソフトウェア中に新規インストールソフトウェアが存在するか否かを判別する。
次に、使用中に取得したファイル情報の中から、予めインストールされていたソフトウェアに関するファイル情報を除き、これと使用後に取得したファイル情報を比較する。
この比較により、ハードディスクに記録されているソフトウェア中に使用済みの新規インストールソフトウェアが存在するか否かを判別する。
最後に、使用後に取得したファイル情報の中から、使用中に取得したファイル情報を除き、これと使用前に取得したファイル情報を比較する。
この比較により、ハードディスクに記録されているソフトウェア中に未使用の新規インストールソフトウェアが存在するか否かを判別する。
【0008】
図2は、検出プログラムにおける検出処理方式を示すフローチャート図である。
次に、図2に基づき、前記検出プログラムにおけるファイル情報の取得フローを説明する。
前記検出プログラムは、始めにステップ1でクライアントのハードディスク内の全ファイルの名称を取得し、次のステップ2で取得した名称から1件を抽出する。
次のステップ3で、取得した名称の拡張子がEXEであるか否かを判定し、Yesの場合はステップ6へ行きファイル情報を取得してサーバの使用前情報に追加し、Noの場合は次ステップ4へ進みハードディスク内に記録されているファイルのヘッダー情報を調査する。
そして、ステップ5で、ファイルの形式が実行形式であるか否かを判定し、Yesの場合はステップ6へ行きファイル情報を取得してサーバの使用前情報に追加し、Noの場合はステップ7へ進む。
ステップ7では、次のファイルが存在するか否かを判定し、Yesの場合は最初のステップ2に戻り前述と同様にファイル情報の取得処理を行い、Noの場合はファイル情報の取得フローを終了する。
ステップ6で取得するファイル情報は、図3に示すような形式\\hostname\drive\******.EXE,00000000,e31f71e8,1998/12/09,13:53:07.240で、収納場所1は\\hostname\drive、ファイルの名称2は\******.EXE、識別子3は00000000,e31f71e8、作成日時4は1998/12/09,13:53:07.240であり、サーバの使用前情報ファイルに記録される。
【0009】
図4は、ログ情報取得プログラムにおける取得処理方式を示すフローチャート図である。
次に、図4に基づき、前記ログ情報取得プログラムにおけるログ情報の取得フローを説明する。
前記ログ情報取得プログラムは、始めにステップ1でシステムが終了するか否かを判定し、Noの場合は次ステップ2へ進み起動された実行形式ファイルの名称を取得し、Yesの場合はログ情報の取得フローを終了する。
そして、ステップ3で、名称がログ情報内に存在するか否かを判定し、Yesの場合はステップ2へ戻りシステムが終了するまでログ情報の取得フローを繰返し、Noの場合は次ステップ4へ進みファイル情報を取得し、ログ情報に追加する。
そして、再びステップ2へ戻り、システムが終了するまでログ情報の取得フローを繰返す。
取得する情報とその記録形式は、先に記載した検出プログラムの場合と同様で図3に示す形式\\hostname\drive\******.EXE,00000000,e31f71e8,1998/12/09,13:53:07.240である。
【0010】
図5は、判別プログラムの概要を示す図である。
次に、図5に基づき、前記判別プログラムにおける新規インストールソフトの有無の判別フローを説明する。
ステップ1.使用されたソフトウェア中の有無:
始めに、ログ情報と使用前情報が合致するか否かを比較し、Yesの場合は新規インストールソフト無し、Noの場合は新規インストールソフト有りと判別する。
ステップ2.ハードディスク内の有無:
次に、ログ情報の中から予めインストールされていたソフトウェアに関する情報を除き、このログ情報と使用後情報が合致するか否かを比較する。
この比較により、Yesの場合は使用済みの新規インストールソフト有り、Noの場合は使用済みの新規インストールソフト無し(アンインストール)と判別する。
ステップ3.ハードディスク内の有無:
最後に、使用後情報の中からログ情報を除き、この使用後情報と使用前情報が合致するか否かを比較する。
この比較により、Yesの場合は未使用の新規インストールソフト無し、Noの場合は未使用の新規インストールソフト有り(アンインストール)と判別する。
このように、ログ情報と使用前情報を比較し、使用されたソフトウェア中に新規インストールソフトウェアが存在するか否かを判別する。
次に、ログ情報の中から予めインストールされていたソフトウェアに関する情報を除き、これと使用後情報を比較し、この比較により、ハードディスクに記録されているソフトウェア中に使用済みの新規インストールソフトウェアが存在するか否かを判別する。
最後に、使用後情報の中からログ情報を除き、これと使用前情報を比較し、比較により、ハードディスクに記録されているソフトウェア中に未使用の新規インストールソフトウェアが存在するか否かを判別する。
【0011】
図6は、ログ情報と使用前情報の比較方式を示すフローチャート図である。
次に、図6に基づき、前記ログ情報と使用前情報の比較フローを説明する。
最初のステップ1で、ログ情報からファイルの名称を1件抽出すると共に、次のステップ2で使用前情報からファイルの名称を1件抽出する。
ステップ3で、ファイル情報が合致するか否かを判定し、Yesの場合は判別結果:無しとしてステップ6へ進み、Noの場合は次ステップ4へ進む。
そして、ステップ4で、次の使用前情報が存在するか否かを判定し、Yesの場合は再びステップ2へ戻り使用前情報からファイルの名称を1件抽出し比較フローを繰返し、Noの場合は判別結果:有りとしてステップ5へ進む。
ステップ5では、結果ファイルへ追加し、ステップ6へ進む。
そして、ステップ6で、次のログ情報が存在するか否かを判定し、Yesの場合は最初のステップ1に戻り前述と同様に比較フローを繰返し、Noの場合は比較フローを終了する。
このように、ログ情報と使用前情報を比較し、ログ情報と合致する情報が使用前情報に存在する場合、使用されたソフトウェアは予めインストールされていたソフトウェアであり、使用されたソフトウェア中に新規インストールソフトウェアは存在しないと判別する。
一方、ログ情報と合致する情報が使用前情報に存在しない場合、使用されたソフトウェアは新規インストールソフトウェアであり、使用されたソフトウェア中に新規インストールソフトウェアが存在すると判別する。
【0012】
図7は、ログ情報と使用後情報の比較方式を示すフローチャート図である。
次に、図7に基づき、前記ログ情報と使用後情報の比較フローを説明する。
最初のステップ1で、ログ情報から予めインストールされていたソフトウェアの情報を除去する。
次のステップ2で、ログ情報からファイルの名称を1件抽出すると共に、次のステップ3で使用後情報からファイルの名称を1件抽出する。
ステップ4で、ファイル情報が合致するか否かを判定し、Yesの場合は判別結果:有りとしてステップ6へ進み、Noの場合は次ステップ5へ進む。
そして、ステップ5で、次の使用後情報が存在するか否かを判定し、Yesの場合は再びステップ3へ戻り使用後情報からファイルの名称を1件抽出し比較フローを繰返し、Noの場合は判別結果:無し(アンインストール)としてステップ6へ進む。
ステップ6では、結果ファイルへ追加し、ステップ7へ進む。
そして、ステップ7で、次のログ情報が存在するか否かを判定し、Yesの場合はステップ2に戻り前述と同様に比較フローを繰返し、Noの場合は比較フローを終了する。
このように、ログ情報と使用後情報の比較では、ログ情報と使用前情報の比較結果を利用して、ログ情報の中から予めインストールされていたソフトウェアに関する情報を除いたものを使用する。
比較の結果、ログ情報と合致する情報が使用後情報に存在する場合、ハードディスクに記録されているソフトウェア中に使用済みの新規インストールソフトウェアが存在すると判別する。
一方、ログ情報と合致する情報が使用後情報に存在しない場合、使用済みの新規インストールソフトウェアがアンインストールされたため、新規インストールソフトウェアは存在しないと判別する。
【0013】
図8は、使用前情報と使用後情報の比較方式を示すフローチャート図である。
次に、図8に基づき、前記使用前情報と使用後情報の比較フローを説明する。
最初のステップ1で、使用後情報からログ情報を除去する。
次のステップ2で、使用前情報からファイルの名称を1件取得すると共に、次のステップ3で使用後情報からファイルの名称を1件取得する。
ステップ4で、ファイル情報が合致するか否かを判定し、Yesの場合は判別結果:無しとしてステップ7へ進み、Noの場合は次ステップ5へ進む。
そして、ステップ5で、次の使用前情報が存在するか否かを判定し、Yesの場合は再びステップ3へ戻り使用後情報からファイルの名称を1件取得し比較フローを繰返し、Noの場合は判別結果:有りとしてステップ6へ進む。
ステップ6では、結果ファイルへ追加し、ステップ7へ進む。
そして、ステップ7で、次の使用前情報が存在するか否かを判定し、Yesの場合はステップ2に戻り前述と同様に比較フローを繰返し、Noの場合は比較フローを終了する。
このように、使用前情報と使用後情報の比較では、使用後情報中からログ情報を除いたものを使用する。
比較の結果、使用後情報と合致する情報が使用前情報に存在する場合、ハードディスクに記録されているソフトウェアは、未使用の予めインストールされていたソフトウェアであり、新規インストールソフトウェアは存在しないと判別する。
一方、使用後情報と合致する情報が使用前情報に存在しない場合、未使用の新規インストールソフトウェアが存在すると判別する。
【0014】
図9は、判別結果の記録形式を示す図である。
新規インストールソフトウェアが存在すると判別された場合と使用済みの新規インストールソフトウェアがアンインストールされた場合に、該当するファイル情報が図9に示すような形式で一つのファイルに記録される。
すなわち、新規インストールソフトウェアが存在すると判別された場合は、[new]\\hostname\drive\******.EXE,00000000,e31f71e8,1998/12/09,13:53:07.240で、使用済みの新規インストールソフトウェアがアンインストールされた場合は、[unknown]\\hostname\path\***.EXE,00000000,000001d6,2001/03/01,06:16:25.0で一つのファイルに記録される。
なお、収納場所1は\\hostname\path、ファイルの名称2は\***.EXE、識別子3は00000000,000001d6、作成日時4は2001/03/01,06:16:25.0、判別結果5は[unknown]である。
この実施例では、検出プログラムをクライアントに記録し、判別プログラムをサーバに記録する例を示した。
この例以外に、検出プログラムと判別プログラムをクライアントに記録し、判別結果のみをサーバに通知するといった形態での実施も可能である。
【図面の簡単な説明】
【0015】
【図1】本発明の実施形態の例を示す概略図である。
【図2】本発明の検出プログラムにおける実行形式ファイルの検出処理方式を示すフローチャート図である。
【図3】本発明における使用前情報の記録形式を示す図である。
【図4】本発明のログ情報取得プログラムにおけるログ情報取得処理方式を示すフローチャート図である。
【図5】本発明の判別プログラムの概要を示すフローチャート図である。
【図6】本発明におけるログ情報と使用前情報の比較方式を示すフローチャート図である。
【図7】本発明におけるログ情報と使用後情報の比較方式を示すフローチャート図である。
【図8】本発明における使用前情報と使用後情報の比較方式を示すフローチャート図である。
【図9】本発明における結果ファイルの記録形式を示す図である。
【符号の説明】
【0016】
1 収納場所
2 名称
3 識別子
4 作成日時
5 判別結果

【特許請求の範囲】
【請求項1】
コンピュータの使用前、使用中、使用後の各時点において、実行形式ファイルを検出しファイル情報を取得する検出手段と、該検出手段により取得されたファイル情報を使用前情報、ログ情報、使用後情報として記録する記憶手段と、前記検出手段によるファイル情報を相互に比較し新規インストールソフトウェアの有無と使用・未使用について判別を行う判別手段と備えたことを特徴とする新規インストールソフトウェアの判別方式。
【請求項2】
前記検出手段において、ファイルのヘッダー情報を調査することにより、名称の書き換えられたファイルに対しても正しくファイルの形式を確認することを特徴とする請求項1記載の新規インストールソフトウェアの判別方式。
【請求項3】
前記判別手段において、ファイルの識別子を比較することにより、予めインストールされていたソフトウェアを構成する実行形式ファイルと新規インストールソフトウェアを構成する実行形式ファイルを区別することを特徴とする請求項1記載の新規インストールソフトウェアの判別方式。
【請求項4】
前記判別手段において、ログ情報と使用前情報を比較することにより、新規インストールソフトウェアの有無を判別することを特徴とする請求項1記載の新規インストールソフトウェアの判別方式。
【請求項5】
前記判別手段において、ログ情報から使用前情報を除き、除いたファイル情報と使用後情報を比較することにより、使用済みの新規インストールソフトウェアの有無を判別することを特徴とする請求項1記載の新規インストールソフトウェアの判別方式。
【請求項6】
前記判別手段において、使用後情報からログ情報を除き、除いたファイル情報と使用前情報を比較することにより、未使用の新規インストールソフトウェアの有無を判別することを特徴とする請求項1記載の新規インストールソフトウェアの判別方式。



【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate