Windowsのアプリケーションの設定については、レジストリに記録・管理することが一般的です。
一方で、レジストリを使わずにiniファイルなどで記録・設定するアプリケーションもあり「レジストリを汚さない」という表現もみられます。
では、レジストリとiniファイル、それぞれどのようなメリット・デメリットがあるでしょうか?
(1)レジストリとiniファイルの違い
レジストリというものは、WindowsのOSが管理するファイルで、インストールされているアプリケーションの設定情報を始め、OSの様々な設定情報が記録されています。
ですから、このファイルを間違って更新したり、壊してしまうと最悪PCが起動しなくなったり、動作がおかしくなってしまいます。
また、この設定情報はパソコン毎にOSで管理されているので、レジストリに設定情報があるアプリケーションは、その実行ファイルを他のパソコンにコピーしただけでは使う事ができません。
一方、iniファイルは通常アプリケーションと同じ場所にあり、そのアプリケーションの設定情報をテキストファイルの形式で記録しています。
したがって、iniファイルごと他のPCにコピーするだけで簡単に他のPCでも動作させることのできる「ポータブルな」アプリも存在します。
ホームポジションキーパーもこのような「ポータブルな」アプリなので、USBにコピーしておけば、どこでも手軽に利用できるという特長があります。
他のPCで、継続して使用する場合も「インストール」という作業は必要なく、単にフォルダごとコピーすればすぐに使えますし、利用を止めるときも「アンインストール」という作業は必要なく、単にフォルダを削除すれば余計なデーターを残すこともありません。これが「レジストリを汚さない」と言われる理由です。
レジストリを使用するアプリをアンインストールしても、レジストリに情報が残る場合もありますし、アンインストールが失敗した場合は、余計な情報がレジストリに残り続けます。
「インストール」しないと使えない、「アンインストール」しないと削除できない、おまけにレジストリが汚れるのに、どうして世の中にはインストールするタイプのアプリが多いのでしょうか?
(2)インストールするメリット
実は、マイクロソフトは設定情報をレジストリで管理することを推奨しています。その最も大きな理由は「ユーザー毎に設定情報を管理しやすい」ということです。
レジストリは、Windowsにログインしているユーザー毎に情報を管理できるようになっており、複数のユーザーが使うことを想定しています。
実際に複数ユーザーが使うPCのExcelやWordの設定はユーザー毎に設定が管理されるので運用が非常に楽になります。
同じことを単純なテキストファイルであるiniファイルで行なうには、ユーザー毎にiniファイルを用意することになるでしょうが、ユーザーの管理と結びついていないので運用は非常に難しくなります。
一方でアプリを個人でしか使わない場合を考えると「ポータブルな」アプリの方が使い勝手が良いという事になります。
ですから「レジストリを汚さないクリーンなアプリです」というよりは「複数人が使うのではなく個人利用を想定しいているのでレジストリを使いません」というのが正確だと思います。
仕事の効率化とはあまり関係が無い話ですがホームポジションキーパーの位置付けをより理解していただけると思います。