JP4094883B2 - アンインストールプログラム、アンインストール方法およびアンインストール装置 - Google Patents

アンインストールプログラム、アンインストール方法およびアンインストール装置 Download PDF

Info

Publication number
JP4094883B2
JP4094883B2 JP2002131466A JP2002131466A JP4094883B2 JP 4094883 B2 JP4094883 B2 JP 4094883B2 JP 2002131466 A JP2002131466 A JP 2002131466A JP 2002131466 A JP2002131466 A JP 2002131466A JP 4094883 B2 JP4094883 B2 JP 4094883B2
Authority
JP
Japan
Prior art keywords
device driver
data
uninstall
driver
character string
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002131466A
Other languages
English (en)
Other versions
JP2003323297A (ja
Inventor
晃一朗 笠間
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2002131466A priority Critical patent/JP4094883B2/ja
Publication of JP2003323297A publication Critical patent/JP2003323297A/ja
Application granted granted Critical
Publication of JP4094883B2 publication Critical patent/JP4094883B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、コンピュータにインストールされたデバイスドライバをアンインストールするアンインストールプログラム、アンインストール方法およびアンインストール装置に関し、特に、全てのデバイスドライバのアンインストールに共通に使うことができ、デバイスごとの開発が不要で、デバイスの開発コストを低減することができるアンインストールプログラム、アンインストール方法およびアンインストール装置に関する。
【0002】
【従来の技術】
近年、USBデバイスやモデムなどのコンピュータと接続して利用するデバイスが数多く実用化されている。これらのデバイスをコンピュータに接続して使用する際には、デバイスごとにデバイスドライバをコンピュータにインストールする必要がある。
【0003】
そして、これらのデバイスを新しい機種に変更する場合やコンピュータに接続して利用する必要がなくなった場合には、コンピュータにインストールされたデバイスドライバをアンインストールする必要がある。
【0004】
したがって、これらのデバイスを開発する場合には、デバイスおよびデバイスドライバの開発に加えてデバイスドライバをアンインストールするためのアンインストールプログラムを開発する必要がある。
【0005】
従来、このアンインストールプログラムは、デバイスを特定するためのデバイスIDやデバイスドライバの格納場所などのデバイス情報を必要とすることから、デバイスごとに開発されていた。
【0006】
【発明が解決しようとする課題】
しかしながら、新たなデバイスを開発するごとにそのデバイスドライバをアンインストールするアンインストールプログラムを開発したのでは、アンインストールプログラムの開発に伴うデバイス開発コストの増大やデバイス開発期間の長期化を招くという問題が生ずる。
【0007】
この発明は、上述した従来技術による問題点を解消するためになされたものであり、全てのデバイスドライバのアンインストールに共通に使うことができ、デバイスごとの開発が不要で、デバイスの開発コストを低減することができるアンインストールプログラム、アンインストール方法およびアンインストール装置を提供することを目的とする。
【0008】
【課題を解決するための手段】
上述した課題を解決し、目的を達成するため、本発明は、コンピュータにインストールされたデバイスドライバをアンインストールするアンインストールプログラムであって、該デバイスドライバを識別する検索条件に基づいて、複数のデバイスドライバの設定情報を一括管理するデータであって、該デバイスドライバのインストールに伴って作成されるレジストリキーから、該デバイスドライバのインストールに使用し、該デバイスドライバの設定情報を含むデバイスドライバデータの格納場所データを抽出するドライバデータ格納場所データ抽出手順と、該格納場所データに基づいて該デバイスドライバデータを特定し、該デバイスドライバデータより第1の所定の文字列を検索してデバイスIDを抽出し、第2の所定の文字列を検索してデバイスドライバのファイル名を抽出し、第3の所定の文字列を検索してドライバファイルのパスを抽出するアンインストールデータ抽出手順と、前記パスが前記ファイル名を有するか否かを判定し、前記パスが前記ファイル名を有する場合に、前記パスを用いて前記デバイスドライバをアンインストールし、前記デバイスIDを用いて前記レジストリキーを削除するアンインストール手順と、をコンピュータで実行することを特徴とする。
【0009】
また、本発明は、コンピュータにインストールされたデバイスドライバをアンインストールするアンインストール方法であって、該デバイスドライバを識別する検索条件に基づいて、複数のデバイスドライバの設定情報を一括管理するデータであって、該デバイスドライバのインストールに伴って作成されるレジストリキーから、該デバイスドライバのインストールに使用し、該デバイスドライバの設定情報を含むデバイスドライバデータの格納場所データを抽出するドライバデータ格納場所データ抽出工程と、該格納場所データに基づいて該デバイスドライバデータを特定し、該デバイスドライバデータより第1の所定の文字列を検索してデバイスIDを抽出し、第2の所定の文字列を検索してデバイスドライバのファイル名を抽出し、第3の所定の文字列を検索してドライバファイルのパスを抽出するアンインストールデータ抽出工程と、前記パスが前記ファイル名を有するか否かを判定し、前記パスが前記ファイル名を有する場合に、前記パスを用いて前記デバイスドライバをアンインストールし、前記デバイスIDを用いて前記レジストリキーを削除するアンインストール工程と、を含んだことを特徴とする。
【0010】
また、本発明は、コンピュータにインストールされたデバイスドライバをアンインストールするアンインストール装置であって、該デバイスドライバを識別する検索条件に基づいて、複数のデバイスドライバの設定情報を一括管理するデータであって、該デバイスドライバのインストールに伴って作成されるレジストリキーから、該デバイスドライバのインストールに使用し、該デバイスドライバの設定情報を含むデバイスドライバデータの格納場所データを抽出するドライバデータ格納場所データ抽出手段と、該格納場所データに基づいて該デバイスドライバデータを特定し、該デバイスドライバデータより第1の所定の文字列を検索してデバイスIDを抽出し、第2の所定の文字列を検索してデバイスドライバのファイル名を抽出し、第3の所定の文字列を検索してドライバファイルのパスを抽出するアンインストールデータ抽出手段と、前記パスが前記ファイル名を有するか否かを判定し、前記パスが前記ファイル名を有する場合に、前記パスを用いて前記デバイスドライバをアンインストールし、前記デバイスIDを用いて前記レジストリキーを削除するアンインストール手段と、を備えたことを特徴とする。
【0011】
かかる発明によれば、デバイスドライバを識別する検索条件に基づいて、複数のデバイスドライバの設定情報を一括管理するデータであって、デバイスドライバのインストールに伴って作成されるレジストリキーから、デバイスドライバのインストールに使用し、デバイスドライバの設定情報を含むデバイスドライバデータの格納場所データを抽出し、格納場所データに基づいてデバイスドライバデータを特定し、デバイスドライバデータより第1の所定の文字列を検索してデバイスIDを抽出し、第2の所定の文字列を検索してデバイスドライバのファイル名を抽出し、第3の所定の文字列を検索してドライバファイルのパスを抽出し、パスがファイル名を有するか否かを判定し、パスがファイル名を有する場合に、パスを用いてデバイスドライバをアンインストールし、デバイスIDを用いてレジストリキーを削除することとしたので、全てのデバイスドライバのアンインストールに共通に使うことができ、デバイスごとの開発が不要で、デバイスの開発コストを低減することができる。
【0012】
【発明の実施の形態】
以下に添付図面を参照して、この発明に係るアンインストールプログラム、アンインストール方法およびアンインストール装置の好適な実施の形態を詳細に説明する。
【0013】
まず、本実施の形態に係るアンインストール装置の構成について説明する。図1は、本実施の形態に係るアンインストール装置の構成を示す機能ブロック図である。同図に示すように、このアンインストール装置200は、ユーザインタフェース部210と、infファイル名抽出部220と、アンインストール情報抽出部230と、アンインストール部240とを有する。
【0014】
ユーザインタフェース部210は、アンインストール装置200のユーザと対話してアンインストールするデバイスドライバを決定する処理部である。具体的には、このユーザインタフェース部210は、デバイスドライバがインストールされているデバイスのベンダ一覧をユーザに表示し、ユーザは、アンインストールするデバイスのベンダを選択する。そして、このユーザインタフェース部210は、ユーザによって選択されたベンダのデバイスであってそのデバイスドライバがインストールされているデバイスの一覧をユーザに表示し、ユーザは、デバイスドライバをアンインストールするデバイスを選択する。
【0015】
また、このユーザインタフェース部210は、デバイスドライバがインストールされているデバイスのベンダ一覧を表示するかわりに、デバイスのカテゴリ一覧を表示し、ユーザは、デバイスドライバをアンインストールするデバイスのカテゴリを選択することもできる。ここで、カテゴリの例としては、モデム、ポート、USBなどがある。さらに、ユーザは、アンインストールするデバイスドライバのベンダ名やデバイス名を直接入力することもできる。
【0016】
infファイル名抽出部220は、アンインストールするデバイスドライバの情報を格納するinfファイルの名前であるinfファイル名をレジストリ10から抽出する処理部である。アンインストールするデバイスドライバは、ユーザインタフェース部210を介してユーザによって指定される。レジストリ10は、デバイスドライバなどのプログラムの設定情報を一括管理するWindows(登録商標、以下同様)のファイルである。なお、このinfファイル名抽出部220およびレジストリ10の詳細については後述する。
【0017】
アンインストール情報抽出部230は、infファイル名抽出部220からinfファイル名を受け取り、このinfファイル名で指定されたinfファイル20からデバイスドライバをアンインストールするために必要なデバイスIDやドライバファイルのパスなどの情報を抽出する処理部である。infファイル20は、デバイスドライバをインストールした時に作られるWindowsのファイルであり、デバイスに関する情報を管理する。
【0018】
このアンインストール情報抽出部230は、infファイル20からデバイスドライバをアンインストールするために必要な情報を抽出することによって、アンインストール装置200を、すべてのデバイスドライバのアンインストールに共通に使うことを可能としている。なお、このアンインストール情報抽出部230およびinfファイル20の詳細についても後述する。
【0019】
アンインストール部240は、アンインストール情報抽出部230からデバイスIDやドライバファイルのパスなどの情報を受け取り、ユーザによって指定されたデバイスドライバをアンインストールする処理部である。具体的には、レジストリ10に格納されたデバイスドライバのレジストリキーを削除するとともに、ドライバファイルを削除する。なお、レジストリキーは、デバイスIDで表わされる。
【0020】
次に、本実施の形態に係るアンインストール装置200の処理手順について説明する。図2は、本実施の形態に係るアンインストール装置200の処理手順を示すフローチャートである。同図に示すように、このアンインストール装置200は、infファイル名抽出部220がユーザインタフェース部210を介してユーザから指定されたデバイスのinfファイル名をレジストリ10から抽出する(ステップS201)。
【0021】
そして、アンインストール情報抽出部230が、抽出されたinfファイル名のinfファイル20からデバイスドライバのアンインストールに必要なデバイスIDやドライバファイルのパスなどの情報を抽出し(ステップS202)、アンインストール部240がデバイスIDを用いてレジストリ10からデバイスドライバのレジストリキーを削除するとともに、ドライバファイルのパスを用いてドライバファイルを削除することによってデバイスドライバをアンインストールする(ステップS203)。
【0022】
次に、図1に示したinfファイル名抽出部220の構成について説明する。図3は、図1に示したinfファイル名抽出部220の構成を示す機能ブロック図である。同図に示すように、このinfファイル名抽出部220は、検索条件入力部310と、レジストリ読込部320と、デバイス選択部330とを有する。
【0023】
検索条件入力部310は、デバイスドライバをアンインストールするデバイスの情報をレジストリ10から検索するための検索条件を入力する処理部である。検索条件は、デバイスのベンダ名、デバイスのカテゴリ、デバイス名のいずれかであり、ユーザによって指定される。なお、ユーザインタフェース部210がユーザとの対話をおこない、検索条件入力部310は、ユーザの指定した検索条件をユーザインタフェース部210から受け取る。
【0024】
レジストリ読込部320は、検索条件入力部310から検索条件を受け取り、この検索条件に基づいてレジストリ10を読み込む処理部である。図4は、図3に示したレジストリ10の構成の一例を示す図である。同図に示すように、デバイスドライバをインストールすると、HKLM_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class、HKLM_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum、HKLM_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servicesの配下にこのデバイスドライバのレジストリキーが作成される。これらのレジストリキーの中で、レジストリ読込部320は、検索条件に基づいてレジストリキーHKLM_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Classまたはこの配下のレジストリを検索して読み込み、検索条件に合うデバイスの情報を取り出してデバイス一覧を作成する。
【0025】
図5は、検索条件の一例を示す図である。同図(a)に示すように、ユーザがベンダ名でデバイスを指定した場合には、検索条件はベンダ名またはベンダIDとなる。また、同図(b)に示すように、ユーザがカテゴリでデバイスを指定した場合には、検索条件はカテゴリIDとなる。
【0026】
図6は、デバイス一覧の一例を示す図である。同図に示すように、このデバイス一覧は、検索条件に合ったデバイスのデバイス名およびinfファイル名の組からなる一覧データである。たとえば、デバイス名がH"INModuleのinfファイル名はFUJITSUFJ61PCI.INFであり、デバイス名がAirH"INModuleのinfファイル名もFUJITSUFJ61PCI.INFであることを示している。
【0027】
デバイス選択部330は、レジストリ読込部320が作成したデバイス一覧を用いて検索条件を満足したデバイスのデバイス名をユーザに示し、ユーザの指定を受けてデバイスドライバをアンインストールするデバイスのinfファイル名を決定する処理部である。なお、ユーザとの対話処理は、ユーザインタフェース部210がおこない、デバイス選択部330は、表示するデバイス名をユーザインタフェース部210に渡し、ユーザが指定したデバイス名をユーザインタフェース部210から受け取る。
【0028】
図7は、infファイル名の一例を示す図である。同図に示すように、infファイル名としてFUJITSUFJ61PCI.INFが得られている。なお、この例では、infファイル名が一つだけ示されているが、複数のinfファイル名が得られる場合もある。
【0029】
次に、図3に示したinfファイル名抽出部220の処理手順について説明する。図8は、図3に示したinfファイル名抽出部220の処理手順を示すフローチャートである。同図に示すように、このinfファイル名抽出部220は、検索条件入力部310がユーザインタフェース部210を介してユーザからデバイスドライバをアンインストールするデバイスの検索条件を入力する(ステップS801)。
【0030】
そして、レジストリ読込部320がこの検索条件に基づくレジストリキーを用いてレジストリ10を読み込み(ステップS802)、検索条件を満足するデバイスがあるか否かを判定し(ステップS803)、満足するデバイスがある場合には、そのデバイスのデバイス名とinfファイル名をレジストリ10から抽出する(ステップS804)。
【0031】
そして、レジストリ読込部320は、レジストリ10の読み込みが終了したか否かを判定し(ステップS805)、読み込みが終了していない場合には、レジストリ10の読み込みを続ける。もし、読み込みが終了した場合には、デバイス選択部330がユーザインタフェース部210を介してユーザにデバイスドライバをアンインストールするデバイスの選択を依頼し(ステップS806)、ユーザの選択結果に基づいてinfファイル名を決定する(ステップS807)。なお、ユーザが検索条件として始めからデバイス名を指定した場合には、デバイス選択をユーザに依頼する処理は不要となる。
【0032】
次に、図1に示したアンインストール情報抽出部230の構成について説明する。図9は、図1に示したアンインストール情報抽出部230の構成を示す機能ブロック図である。同図に示すように、このアンインストール情報抽出部230は、infファイル読込部910と、読込データ定義920と、アンインストール情報判定部930とを有する。
【0033】
infファイル読込部910は、infファイル名抽出部220がレジストリ10から取り出したinfファイル名のinfファイル20を読み込む処理部である。このinfファイル読込部910は、infファイルを一行ずつ読み込み、アンインストール情報判定部930に渡す。
【0034】
図10は、図9に示したinfファイル20の一例を示す図である。同図に示すように、このinfファイル20は、"[Version]"、"[ControFlags]"、"[Manufacturer]"、"[Models]"、"[Strings]"、"[SerMdm_Service_Inst]"、"[SourceDiskFiles]"、"[DestinationDirs]"などの文字列を含むテキストファイルである。
【0035】
読込データ定義920は、infファイル20からデバイスドライバのアンインストールに必要な情報を取り出すために使用されるデータである。図11は、図9に示した読込データ定義920の一例を示す図である。同図に示すように、この読込データ定義920は、infファイル20から検索する文字列を定義している。
【0036】
たとえば、Ref_1およびRef_2は、文字列"[ControlFlags]"を検索し、この文字列が見つかった場合には、文字列"ExcludeFromSelect="を検索することを定義している。そして、文字列"ExcludeFromSelect="に続く文字列がデバイスIDとなる。この動作定義を図10に示したinfファイル20に適用すると、デバイスIDとしてFJUB\FUJ02C1が得られる。
【0037】
また、Ref_3〜Ref_5は、文字列"[Version]"を検索し、この文字列が見つかった場合には、文字列"ClassGUID="と文字列"Class="を検索することを定義している。そして、文字列"ClassGUID="に続く文字列がクラスGUIDとなり、文字列"Class="に続く文字列がクラス名となる。この動作定義を図10に示したinfファイル20に適用すると、クラスGUIDとして
[4D36E96D-E325-11CE-BFC1-08002BE10318]
が得られ、クラス名としてModemが得られる。なお、クラスGUIDとクラス名は、レジストリ10からデバイスドライバのレジストリキーを削除するために必ずしも必要な情報ではないが、レジストリキーの削除を高速化するためにアンインストール部240によって使用される。
【0038】
また、Ref_6は、文字列"[SourceDiskFiles]"を検索し、この文字列が見つかった場合には、次の行の文字列を取り出すことを定義している。そして、取り出された文字列の文字"="の前までの文字列がデバイスドライバのファイル名となる。この動作定義を図10に示したinfファイル20に適用すると、デバイスドライバのファイル名としてSerMdm.sysが得られる。
【0039】
また、Ref_7およびRef_8は、文字列"[xxx_Service_Inst]"を検索し、この文字列が見つかった場合には、文字列"ServiceBinary="を検索することを定義している。そして、文字列"ServiceBinary="に続く文字列がドライバファイルパス候補となる。ただし、"xxx"は任意の文字列を示し、文字列"%12%"は文字列"%SystemRoot%\system32\drivers"に置き換えることとする。この動作定義を図10に示したinfファイル20に適用すると、ドライバファイルパス候補として
%SystemRoot%\system32\drivers\SerMdm.sys
が得られる。
【0040】
ドライバパス候補は、Ref_6の定義によって得られたデバイスドライバのファイル名と同じファイル名を有する場合に、ドライバファイルのパスとなる。たとえば、図11に示した動作定義を図10に示したinfファイル20に適用すると、ドライバファイル名としてSerMdm.sysが得られ、ドライバファイルパス候補として
%SystemRoot%\system32\drivers\SerMdm.sys
が得られ、ファイル名が同じSerMdm.sysであるので、
%SystemRoot%\system32\drivers\SerMdm.sys
がドライバファイルのパスとなる。
【0041】
アンインストール情報判定部930は、infファイル読込部910が入力したinfファイル20のデータから、読込データ定義部920の定義に基づいてアンインストール情報を作成する。
【0042】
図12は、アンインストール情報の一例を示す図である。同図は、デバイスIDがFJUSB\FUJ02C1およびFJUSB\FUJ02C2である二つのデバイスのアンインストール情報を示しており、どちらのデバイスもクラスGUIDが
[4D36E96D-E325-11CE-BFC1-08002BE10318]
であり、クラス名がModemであり、ドライバファイルのパスが
%SystemRoot%\system32\drivers\SerMdm.sys
であることを示している。
【0043】
次に、図9に示したアンインストール情報抽出部230の処理手順について説明する。図13は、図9に示したアンインストール情報抽出部230の処理手順を示すフローチャートである。同図に示すように、このアンインストール情報抽出部230は、infファイル読込部910がinfファイル名抽出部220から受け取ったinfファイル名のinfファイル20をオープンし(ステップS1301)、バッファに一行読み込む(ステップS1302)。
【0044】
そして、アンインストール情報判定部930が読込データ定義920に基づいてバッファの内容を判定し(ステップS1303)、バッファの内容が文字列"[ControlFlags]"である場合には、文字列"ExcludeFromSelect="を検索し、この後に続く文字列を取り出し、デバイスIDとする(ステップS1304)。また、バッファの内容が文字列"[Version]" である場合には、文字列"ClassGUID="を検索し、この後に続く文字列を取り出してクラスGUIDとし、さらに、文字列"Class="を検索し、この後に続く文字列を取り出してクラス名とする(ステップS1305)。
【0045】
また、バッファの内容が文字列"[SourceDiskFiles]"である場合には、次の行の文字列を取り出し、文字"="の前までの文字列をデバイスドライバのファイル名とする(ステップS1306)。また、バッファの内容が文字列"[xxx_Service_Inst]"である場合には、文字列"ServiceBinary="を検索し、この後に続く文字列を取り出し、ドライバファイルパス候補とする(ステップS1307)。
【0046】
もし、バッファの内容がその他の文字列である場合には、infファイル読込部910がinfファイル20から次の行を読み込む。もし、ファイルの終わりである場合には、デバイスドライバのファイル名とドライバファイルパス候補からドライバファイルのパスを作成する(ステップS1308)。
【0047】
なお、ここでは、一つのinfファイル20の処理手順について説明したが、infファイル20が複数ある場合には、図13に示した処理手順を繰り返すことにより、複数のデバイスについてのアンインストール情報を得ることができる。
【0048】
上述してきたように、本実施の形態では、infファイル名抽出部220がレジストリ10からデバイスドライバをアンインストールするデバイスのinfファイル名を抽出し、アンインストール情報抽出部230がこのinfファイル名のinfファイル20からデバイスドライバをアンインストールするために必要なアンインストール情報を抽出し、アンインストール部240がこのアンインストール情報を用いてデバイスドライバをアンインストールすることとしたので、全てのデバイスドライバのアンインストールに共通に使うことができ、デバイスごとの開発が不要で、デバイスの開発コストを低減することができるアンインストール装置200を提供することができる。
【0049】
なお、本実施の形態では、Windowsのレジストリ10およびinfファイル20を用いたアンインストール装置200について説明したが、同様の情報を有するファイルであれば、他のファイルを用いることもできる。
【0050】
また、本実施の形態では、アンインストール装置について説明したが、このアンインストール装置が有する構成をソフトウェアによって実現することで、同様の機能を有するアンインストールプログラムを得ることができる。そこで、このアンインストールプログラムを実行するコンピュータシステムについて説明する。
【0051】
図14に示すコンピュータシステム100は、本体部101、本体部101からの指示により表示画面102aに画像等の情報を表示するディスプレイ102、このコンピュータシステム100に種々の情報を入力するためのキーボード103、ディスプレイ102の表示画面102a上の任意の位置を指定するマウス104、ローカルエリアネットワーク(LAN)106または広域エリアネットワーク(WAN)に接続するLANインタフェース、インターネットなどの公衆回線107に接続するモデム105が備えられている。ここで、LAN106は、ほかのコンピュータシステム(PC)111、サーバ112、プリンタ113等とコンピュータシステム100とを接続している。また、図15に示すように、本体部101は、CPU121、RAM122、ROM123、ハードディスクドライブ(HDD)124、CD−ROMドライブ125、FDドライブ126、I/Oインタフェース127およびLANインタフェース128を備えている。
【0052】
このコンピュータシステム100においてアンインストールプログラムを実行する場合、フロッピィディスク(FD)108、CD−ROM109、DVDディスク、光磁気ディスク、ICカード等の可搬型記憶媒体、モデム105およびLANインタフェースを利用し回線を介して接続されたサーバ112のデータベース、あるいは、ほかのコンピュータシステム(PC)111のデータベースに格納等の記憶媒体に記憶されたアンインストールプログラムをコンピュータシステム100にインストールする。インストールされたアンインストールプログラムは、HDD124に記憶され、RAM122、ROM123などを利用してCPU121により実行される。ここで、記憶媒体とは、CD−ROM109、フロッピィディスク108、DVDディスク、光磁気ディスク、ICカード等の可搬型記憶媒体やコンピュータシステム100の内外に備えられたハードディスク124等の記憶装置のほか、LAN106を介して接続されたインストール元のアンインストールプログラムを保持するサーバ112のデータベース、あるいは、ほかのコンピュータシステム111並びにそのデータベースや、さらに公衆回線107上の伝送媒体をも含むものである。
【0053】
(付記1)コンピュータにインストールされたデバイスドライバをアンインストールするアンインストールプログラムであって、
前記デバイスドライバのインストールに伴って作成されたデバイスドライバデータから該デバイスドライバをアンインストールするために必要なアンインストールデータを抽出するアンインストールデータ抽出手順と、
前記アンインストールデータ抽出手順により抽出されたアンインストールデータに基づいてコンピュータにインストールされた前記デバイスドライバをアンインストールするアンインストール手順と、
をコンピュータで実行するアンインストールプログラム。
(付記2)コンピュータにインストールされたプログラムの設定データから前記デバイスドライバデータの格納場所を抽出するドライバデータ格納場所抽出手順をさらにコンピュータで実行する付記1に記載のアンインストールプログラム。
(付記3)前記アンインストールデータ抽出手順は、前記デバイスドライバデータに格納された前記アンインストールデータの格納位置を記述した格納位置データに基づいて該アンインストールデータを抽出することを特徴とする付記1または2に記載のアンインストールプログラム。
(付記4)コンピュータにインストールされたデバイスドライバをアンインストールするアンインストール方法であって、
前記デバイスドライバのインストールに伴って作成されたデバイスドライバデータから該デバイスドライバをアンインストールするために必要なアンインストールデータを抽出するアンインストールデータ抽出工程と、
前記アンインストールデータ抽出工程により抽出されたアンインストールデータに基づいてコンピュータにインストールされた前記デバイスドライバをアンインストールするアンインストール工程と、
を含んだことを特徴とするアンインストール方法。
(付記5)コンピュータにインストールされたプログラムの設定データから前記デバイスドライバデータの格納場所を抽出するドライバデータ格納場所抽出工程をさらに含んだことを特徴とする付記4に記載のアンインストール方法。
(付記6)前記アンインストールデータ抽出工程は、前記デバイスドライバデータに格納された前記アンインストールデータの格納位置を記述した格納位置データに基づいて該アンインストールデータを抽出することを特徴とする付記4または5に記載のアンインストール方法。
(付記7)コンピュータにインストールされたデバイスドライバをアンインストールするアンインストール装置であって、
前記デバイスドライバのインストールに伴って作成されたデバイスドライバデータから該デバイスドライバをアンインストールするために必要なアンインストールデータを抽出するアンインストールデータ抽出手段と、
前記アンインストールデータ抽出手段により抽出されたアンインストールデータに基づいてコンピュータにインストールされた前記デバイスドライバをアンインストールするアンインストール手段と、
を備えたことを特徴とするアンインストール装置。
(付記8)コンピュータにインストールされたプログラムの設定データから前記デバイスドライバデータの格納場所を抽出するドライバデータ格納場所抽出手段をさらに備えたことを特徴とする付記7に記載のアンインストール装置。
(付記9)前記アンインストールデータ抽出手段は、前記デバイスドライバデータに格納された前記アンインストールデータの格納位置を記述した格納位置データに基づいて該アンインストールデータを抽出することを特徴とする付記7または8に記載のアンインストール装置。
【0054】
【発明の効果】
以上説明したように、本発明によれば、デバイスドライバを識別する検索条件に基づいて、複数のデバイスドライバの設定情報を一括管理するデータであって、デバイスドライバのインストールに伴って作成されるレジストリキーから、デバイスドライバのインストールに使用し、デバイスドライバの設定情報を含むデバイスドライバデータの格納場所データを抽出し、格納場所データに基づいてデバイスドライバデータを特定し、デバイスドライバデータより第1の所定の文字列を検索してデバイスIDを抽出し、第2の所定の文字列を検索してデバイスドライバのファイル名を抽出し、第3の所定の文字列を検索してドライバファイルのパスを抽出し、パスがファイル名を有するか否かを判定し、パスがファイル名を有する場合に、パスを用いてデバイスドライバをアンインストールし、デバイスIDを用いてレジストリキーを削除するよう構成したので、全てのデバイスドライバのアンインストールに共通に使うことができ、デバイスごとの開発が不要で、デバイスの開発コストを低減することができるという効果を奏する。
【図面の簡単な説明】
【図1】本実施の形態に係るアンインストール装置の構成を示す機能ブロック図である。
【図2】本実施の形態に係るアンインストール装置の処理手順を示すフローチャートである。
【図3】図1に示したinfファイル名抽出部の構成を示す機能ブロック図である。
【図4】図3に示したレジストリの構成の一例を示す図である。
【図5】検索条件の一例を示す図である。
【図6】デバイス一覧の一例を示す図である。
【図7】infファイル名の一例を示す図である。
【図8】図3に示したinfファイル名抽出部の処理手順を示すフローチャートである。
【図9】図1に示したアンインストール情報抽出部の構成を示す機能ブロック図である。
【図10】図9に示したinfファイルの一例を示す図である。
【図11】図9に示した読込データ定義の一例を示す図である。
【図12】アンインストール情報の一例を示す図である。
【図13】図9に示したアンインストール情報抽出部の処理手順を示すフローチャートである。
【図14】本実施の形態に係るアンインストールプログラムを実行するコンピュータシステムを示す図である。
【図15】図14に示した本体部の機能構成を示す機能ブロック図である。
【符号の説明】
10 レジストリ
20 infファイル
100,111 コンピュータシステム
101 本体部
102 ディスプレイ
102a 表示画面
103 キーボード
104 マウス
105 モデム
106 LAN
107 公衆回線
108 フロッピィディスク
109 CD−ROM
112 サーバ
113 プリンタ
121 CPU
122 RAM
123 ROM
124 ハードディスクドライブ
125 CD−ROMドライブ
126 フロッピィディスクドライブ
127 I/Oインタフェース
128 LANインタフェース
200 アンインストール装置
210 ユーザインタフェース部
220 infファイル名抽出部
230 アンインストール情報抽出部
240 アンインストール部
310 検索条件入力部
320 レジストリ読込部
330 デバイス選択部
910 infファイル読込部
920 読込データ定義
930 アンインストール情報判定部

Claims (3)

  1. コンピュータにインストールされたデバイスドライバをアンインストールするアンインストールプログラムであって、
    該デバイスドライバを識別する検索条件に基づいて、複数のデバイスドライバの設定情報を一括管理するデータであって、該デバイスドライバのインストールに伴って作成されるレジストリキーから、該デバイスドライバのインストールに使用し、該デバイスドライバの設定情報を含むデバイスドライバデータの格納場所データを抽出するドライバデータ格納場所データ抽出手順と、
    該格納場所データに基づいて該デバイスドライバデータを特定し、該デバイスドライバデータより第1の所定の文字列を検索してデバイスIDを抽出し、第2の所定の文字列を検索してデバイスドライバのファイル名を抽出し、第3の所定の文字列を検索してドライバファイルのパスを抽出するアンインストールデータ抽出手順と、
    前記パスが前記ファイル名を有するか否かを判定し、前記パスが前記ファイル名を有する場合に、前記パスを用いて前記デバイスドライバをアンインストールし、前記デバイスIDを用いて前記レジストリキーを削除するアンインストール手順と、
    をコンピュータで実行するアンインストールプログラム。
  2. コンピュータにインストールされたデバイスドライバをアンインストールするアンインストール方法であって、
    該デバイスドライバを識別する検索条件に基づいて、複数のデバイスドライバの設定情報を一括管理するデータであって、該デバイスドライバのインストールに伴って作成されるレジストリキーから、該デバイスドライバのインストールに使用し、該デバイスドライバの設定情報を含むデバイスドライバデータの格納場所データを抽出するドライバデータ格納場所データ抽出工程と、
    該格納場所データに基づいて該デバイスドライバデータを特定し、該デバイスドライバデータより第1の所定の文字列を検索してデバイスIDを抽出し、第2の所定の文字列を検索してデバイスドライバのファイル名を抽出し、第3の所定の文字列を検索してドライバファイルのパスを抽出するアンインストールデータ抽出工程と、
    前記パスが前記ファイル名を有するか否かを判定し、前記パスが前記ファイル名を有する場合に、前記パスを用いて前記デバイスドライバをアンインストールし、前記デバイスIDを用いて前記レジストリキーを削除するアンインストール工程と、
    を含んだことを特徴とするアンインストール方法。
  3. コンピュータにインストールされたデバイスドライバをアンインストールするアンインストール装置であって、
    該デバイスドライバを識別する検索条件に基づいて、複数のデバイスドライバの設定情報を一括管理するデータであって、該デバイスドライバのインストールに伴って作成されるレジストリキーから、該デバイスドライバのインストールに使用し、該デバイスドライバの設定情報を含むデバイスドライバデータの格納場所データを抽出するドライバデータ格納場所データ抽出手段と、
    該格納場所データに基づいて該デバイスドライバデータを特定し、該デバイスドライバデータより第1の所定の文字列を検索してデバイスIDを抽出し、第2の所定の文字列を検索してデバイスドライバのファイル名を抽出し、第3の所定の文字列を検索してドライバファイルのパスを抽出するアンインストールデータ抽出手段と、
    前記パスが前記ファイル名を有するか否かを判定し、前記パスが前記ファイル名を有する場合に、前記パスを用いて前記デバイスドライバをアンインストールし、前記デバイスIDを用いて前記レジストリキーを削除するアンインストール手段と、
    を備えたことを特徴とするアンインストール装置。
JP2002131466A 2002-05-07 2002-05-07 アンインストールプログラム、アンインストール方法およびアンインストール装置 Expired - Fee Related JP4094883B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002131466A JP4094883B2 (ja) 2002-05-07 2002-05-07 アンインストールプログラム、アンインストール方法およびアンインストール装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002131466A JP4094883B2 (ja) 2002-05-07 2002-05-07 アンインストールプログラム、アンインストール方法およびアンインストール装置

Publications (2)

Publication Number Publication Date
JP2003323297A JP2003323297A (ja) 2003-11-14
JP4094883B2 true JP4094883B2 (ja) 2008-06-04

Family

ID=29544088

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002131466A Expired - Fee Related JP4094883B2 (ja) 2002-05-07 2002-05-07 アンインストールプログラム、アンインストール方法およびアンインストール装置

Country Status (1)

Country Link
JP (1) JP4094883B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5039331B2 (ja) * 2006-07-07 2012-10-03 キヤノン株式会社 情報処理装置、削除方法及びプログラム
CN112162763A (zh) * 2020-10-22 2021-01-01 北京北信源软件股份有限公司 一种静默卸载软件的方法及装置

Also Published As

Publication number Publication date
JP2003323297A (ja) 2003-11-14

Similar Documents

Publication Publication Date Title
KR100671153B1 (ko) 디바이스 드라이버 설치방법
US5732266A (en) Storage medium storing application programs and application initialization files and automatic launching of computer applications stored on the storage medium
US7665084B2 (en) Uninstall system
JP5058500B2 (ja) 再利用スコアおよび推奨された再利用可能データを用いたリソースオーサリング
JP5058499B2 (ja) 文化特有のデータを作成し、格納し、管理し、消費する方法およびシステム
US7409405B1 (en) File dispatcher for multiple application targets
US7293268B2 (en) Installation method, activation method, execution apparatus and medium of application program
US7555573B2 (en) Initiating software responses based on a hardware action
KR100855853B1 (ko) 이미지-기반 소프트웨어 설치
US20050055690A1 (en) System and method for communication between computers via an integrated hardware device
JP5063014B2 (ja) アプリケーションローカライゼーション規則を実装するオーサリング
JP5483116B2 (ja) メンテナンスシステム、メンテナンス方法、及びメンテナンス用プログラム
WO2008005219A2 (en) Running applications from removable media
JP2007018175A (ja) 情報処理装置とその方法及びプログラム
JP5482407B2 (ja) 情報処理装置、画像処理装置、画像処理システム、画面カスタマイズ方法、画面カスタマイズプログラム、及びそのプログラムを記録した記録媒体
TW515996B (en) Method and system for transferring an application program from system firmware to a storage device
JP2005078166A (ja) 情報処理装置、情報処理方法、プログラム及び記憶媒体
US20140033123A1 (en) User interface and method for comparing a local version of a profile to an online update
US9524503B2 (en) Method and system for exposing games
US20100162234A1 (en) Method for installing application and computer system thereof
JP2002007138A (ja) アプリケーションのインストール方法、起動方法、実行装置、媒体およびプログラム
JP4094883B2 (ja) アンインストールプログラム、アンインストール方法およびアンインストール装置
JP2009163760A (ja) 情報処理装置とその方法及びプログラム
JP2000082002A (ja) データ管理システム及び記録媒体
JP2009122985A (ja) サブプロセス実行システム及びサブプロセス実行プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041026

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070206

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070405

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070918

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071119

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20071126

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080304

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080306

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110314

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4094883

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110314

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120314

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130314

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140314

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees