1. ホーム
  2. windows

[解決済み] Windowsレジストリにデータを保存するのはいつ、そしてなぜ?

2022-06-24 09:17:23

疑問点

開発者として、レジストリに設定/オプションを保存するツールは、私の人生の悩みの種です。これらのオプションに対する変更を簡単に追跡することができず、マシンからマシンへ簡単に移植することもできません。そして、そのすべてが、古き良き時代の .INI ファイルを切望させます...。

自分のアプリケーションを書くとき、昔ながらの設定ファイルではなく、レジストリに置くべきものがあるとすれば、それは何ですか、また、なぜですか?

どのように解決するのですか?

  • 元々 (WIN3) の設定は、Windows ディレクトリの WIN.INI ファイルに保存されていました。
  • 問題: WIN.INI が大きくなりすぎた。
  • 解決策 (Win31): プログラムと同じディレクトリに個別の INI ファイルを作成します。
  • 問題: そのプログラムはネットワーク上にインストールされ、多くの人々によって共有されている可能性があります。
  • 解決策 (Win311): ユーザーの Window ディレクトリに個別の INI ファイルを作成します。
  • 問題: 多くの人が Windows フォルダーを共有する可能性があり、いずれにせよ読み取り専用にする必要があります。
  • 解決策 (Win95)。各ユーザーに個別のセクションを持つレジストリ。
  • 問題。レジストリが大きくなりすぎた。
  • 解決策 (WinXP)。個々のデータの大きなブロックは、ユーザー自身のアプリケーション データ フォルダに移動されました。
  • 問題点: 大量のデータには適しているが、少量のデータにはかなり複雑。
  • 解決策 (.NET): アプリケーションと同じフォルダーにある .config (Xml) ファイルに格納された少量の固定された読み取り専用データで、それを読み取るための API を使用します。 (読み取り/書き込み、またはユーザー固有のデータはレジストリに残ります)。