Installerフォルダーの肥大化#7 アプリに削除可能項目の表示機能を追加

前回の投稿までに、Installer Adjustment AppでInstallerフォルダー内の未使用ファイルの確認・アンインストールができるようになりました。今回は、今後の拡張に向けて、アプリの画面の再構成をしました。

Installer Adjustment App 0.5.0

アプリアイコン(Installer Adjustment App 0.3.0)

Installer Adjustment Appのバージョン0.5.0 をリリースしました。Installer Adjustment Appのバージョン0.5.0は、リリースページからダウンロードできます。

Installer Adjustment Appのバージョン0.4.0までに、リリースページに記載があるように、製品や製品の更新をアンインストール機能を実装しました。しかし、アンインストール結果を表示する機能がありませんでした。そのため、正常にアンインストールできたかを確認が容易ではありません。その点を改善し、アンインストールの結果を表示するようにしました。

また、メイン画面にある解析の詳細情報は別ウィンドウで表示するようにしました。メイン画面には、解析結果の概要情報とアプリの最終目標の機能に関連する情報のみにしました。これにより、メイン画面は最終のレイアウトに近づきました。

このバージョンでは、リリースページに記載があるように、以下の機能を実装しました。

  • 各画面の再構成
  • 結果確認画面を追加

各機能の詳細は、リリースページの説明を参照してください。

各画面の再構成

メイン画面

バージョン0.4.0までは、メイン画面に製品一覧やストレージツリーがありました。今回のバージョンからメイン画面からこれらを削除して別の画面に移動しました。メイン画面は、解析結果の概要とInstallerフォルダーの調整機能の情報のみにしました。

アプリのメイン画面(バージョン0.5.0)

メイン画面には、Installerフォルダーの使用状況と調整可能な情報が表示されます。

「製品のインストーラー」の領域には、インストーラーの数やインストーラーファイルの合計サイズ、ファイル数などが表示されます。

「簡単調整」の領域には、調整が可能なファイルのサイズや数が表示されます。調整可能なファイルは3種類あります。

  • システムから参照されていない未使用のファイルとフォルダー
  • システムにインストールはされているが、他の更新インストーラーで置き換えられており、使用されていない更新インストーラーでアンインストールが許可されれているもの
  • 上記と同様の使用されていない更新インストーラーでアンインストールが許可されていないもの

これらのファイルは簡単調整の対象ファイルです。右側に調整を実行するためのボタンがあります。しかし、実際の調整処理はまだ実装が完了していません。そのため、このバージョンではボタンは無効化されています。

「製品一覧」画面

製品一覧画面(バージョン0.5.0)

製品一覧をメイン画面から分離して、独立した製品一覧画面にしました。

この画面は、メイン画面の「製品の一覧を表示する」ボタンをクリックすると表示されます。前バージョンまでメイン画面にあった、製品のアンインストール機能や製品詳細の表示は、この画面から実行できます。

「解析詳細」画面

解析詳細画面(バージョン0.5.0)

ストレージツリーをメイン画面から分離して、独立した解析詳細画面にしました。

この画面は、メイン画面の「解析の詳細を表示する」ボタンをクリックすると表示されます。

この画面には、メイン画面と同じ「簡単調整」領域もあります。メイン画面と同様に、このバージョンでは調整ボタンは無効化されています。

結果確認画面を追加

前バージョンまでに、指定した製品、および、製品の更新をアンインストールする機能を実現しました。アンインストールを実行することはできたのですが、アンインストールが完了したときに、結果を表示していませんでした。

アンインストールは、

  • ユーザーアカウント制御(エレベーション操作)に失敗
  • アンインストール時にインストールメディアが必要になったが、なかったので失敗

など様々な条件で、失敗することがあります。

複数の製品や製品の更新を同時にアンインストールした場合、どれが成功して、どれが失敗したかわからないことになります。

製品のアンインストールの結果画面(バージョン0.5.0)
製品の更新のアンインストールの結果画面(バージョン0.5.0)

そのため、今回のバージョンでは、アンインストールが完了したときに結果を表示するようにしました。アンインストールが成功したもの・失敗したものが分けて表示されます。

いずれかのアンインストールでエラーが発生したときは、結果ダイアログの説明の先頭にのアイコンが表示されます。すべてのアンインストールが成功したときは、アイコンは表示されません。

二つ結果画面(製品のアンインストールの結果と製品の更新のアンインストールの結果)は、成功が一つ、失敗が一つの場合の例です。失敗が含まれるので、のアイコンも表示されています。

簡単調整

このアプリの最終目的である「簡単調整」の機能を実現する領域をメイン画面に追加しました。メイン画面の「簡単調整」の領域は、簡単調整の対象の情報と実行ボタンがあります。今回のバージョンでは、実行ボタンはまだ無効化されています。

メイン画面上の「簡単調整」領域

簡単調整の対象

はじめに述べたように簡単調整の対象には、3つの種類があります。

  • システムから参照されていない未使用のファイルとフォルダー
  • システムにインストールはされているが、他の更新インストーラーで置き換えられており、使用されていない更新インストーラーでアンインストールが許可されれているもの
  • 上記と同様の使用されていない更新インストーラーでアンインストールが許可されていないもの

未使用のファイルとフォルダー

一つ目の「未使用のファイルとフォルダー」の項目は、 C:\Windows\Installer¥フォルダー配下にある システムから参照されていないファイルとフォルダーです。これらのファイルは、このアプリの初回バージョンでストレージツリーとしてメイン画面で確認できるようにしました。このバージョンではストレージツリーは解析詳細画面に移動しました。

メイン画面にはストレージツリーは表示していませんが、それらのファイルとフォルダーの数とサイズを表示しています。

未使用ファイルとフォルダー

未使用の更新インストーラー

二つ目と三つ目の「未使用の更新インストーラー」の項目は、他の更新インストーラーに置き換えられており、使用されていない更新インストーラーです。

前バージョン(0.4.0)で、 個々の「製品の更新インストーラー」の「状態」と「アンインストールの可否」を表示できるようにしました。

製品詳細画面での更新インストーラーの状態の表示

この状態が未使用のものをシステム全体としてまとめたものとなります。ただし、単純に未使用の状態のサイズを合計したのではありません。

更新インストーラーは、同じ更新インストーラーが複数の製品で共有されていることがあります。そのため単純に合計してしまうと同じ更新インストーラーを重複して合計することになり、正しいサイズになりません。複数の製品で更新インストーラーが共有されている場合は、重複して合計していません。

また、複数の製品で更新インストーラーが共有されている場合、製品ごとに使用中であったり、未使用であったりと状態が異なります。そのため、すべての製品で未使用の更新インストーラーのみ対象とします。

「アンインストールの可否」についても同様に、共有されているすべての製品でアンインストールが可になっているものが、二つ目の「未使用の更新インストーラー(アンインストール可能)」として表示されます。一つの製品でもインストールが不可のものがあれば、 3つ目の「未使用の更新インストーラー(アンインストール不可能)」として表示されます。


今回のバージョンでは、このアプリの当初の目的である「ストレージの空き領域を増やすこと」の前提ととなる削除対象候補が表示できるようになりました。

次は、これらの削除対象候補を削除する方法を考えていきたいと思います。

One Reply to “Installerフォルダーの肥大化#7 アプリに削除可能項目の表示機能を追加”

コメントを残す