レジストリ vs プライベートINI
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
01/11/22 18:00ID:kWO77Burプログラマの視点から、逆にユーザの視点から、
それぞれの利点や欠点について意見を聞かせてください。
0002名無しさん@お腹いっぱい。
01/11/22 18:38ID:???/ / = -
/ / = -
/ / = - はいはい2ゲットズサーー
/ / っと。
/ /
-― ̄ ̄ ` ―' , _
, ´  ̄" ー _=
_/ ` 、 =
, ´ ,ヘ ヽ =
,/ ,| ● ,/
と,-‐ ´ ̄ r( `' く 三 = (⌒
(´__ 、 `( ,ヘ ヽ 三 =(⌒
 ̄ ̄`ヾ_ ● _> ( ⌒ (⌒
,_ \ `' __ -‐ ´ 三=(⌒ (⌒
(__  ̄~" __ , --‐一~ ̄ ̄ ̄ 三 =(⌒ (⌒
 ̄ ̄ ̄ =(⌒(⌒ __
0003名無しさん@お腹いっぱい。
01/11/22 23:12ID:???0004名無しさん@お腹いっぱい。
01/11/23 00:54ID:???0005名無しさん@お腹いっぱい。
01/11/23 01:58ID:???0006名無しさん@お腹いっぱい。
01/11/23 02:02ID:M3srOtYq0007名無しさん@お腹いっぱい。
01/11/23 02:52ID:???普段レジストリでも、iniファイル書き出し機能があって、iniファイルを引数で指定できて、おまけに、設定画面からレジストリ削除が出来れば良いなぁと思う。
0008名無しさん@お腹いっぱい。
01/11/23 03:04ID:KaMzMKWN書いてあるので、ついついレジストリ使うような仕様にしてしまってました。
でも最近はiniに回帰しつつある・・・
0009名無しさん@お腹いっぱい。
01/11/23 03:08ID:???ini の方が扱いやすい。
0010名無しさん@お腹いっぱい。
01/11/23 03:09ID:???レジストリがぶっくぶく太るのはイヤ。
0011名無しさん@お腹いっぱい。
01/11/23 03:14ID:???0012もなか
01/11/23 03:19ID:???だけどどこに書き込まれてるかちゃんと README に書いてあれば
おれは悪くないと思う。そういう情報があれば移行の手段もあるし、
何よりも早いじゃない。
危険というなら、初心者がシステムディレクトリ開くのだって危険。
肥大化は scanreg で対応。
ini を使ってても IrfanView や Dibas(どっちも好きなソフトだけど)
みたいに、Windows ディレクトリに作っちゃうのはどうかと思う。
0013名無しさん@お腹いっぱい。
01/11/23 03:23ID:???いいかもしんない!
>>8
MSはレジストリを推奨してるんだよねぇ
理由はなんなんだろ・・・
0014名無しさん@お腹いっぱい。
01/11/23 03:30ID:???Windows ディレクトリに作っちゃうのはどうかと思う。
それはたぶん皆一致の意見かな。
ここもわざわざレジストリ vs "プライベート"INIスレだし
0015名無しさん@お腹いっぱい。
01/11/23 03:33ID:???どっちかっていうと作り手側の意見かな。
http://pc.2ch.net/test/read.cgi/prog/997370579/l50
0016もなか
01/11/23 03:47ID:???うん?
>"プライベート"INI
って、そのソフト固有の INI って意味じゃなかったのか。
(WIN.INI とかじゃなく)
不勉強かもしれないが、あまり聞かない言葉なんで誤解したよ。
0017名無しさん@お腹いっぱい。
01/11/23 03:54ID:LPNYdIETWindowsフォルダのiniに書き込むのはWriteProfileString()で、
他のフォルダ(普通はソフト本体と同じフォルダとか)のiniに書き込むのが
WritePrivateProfileString()だからプライベートって呼んでるんだけど、
もしかしてこれってメジャーな呼び方じゃないのかな
0018もなか
01/11/23 04:08ID:???WriteProfileString() なんて使ったこと無いからピンと来なかった。
それにしても、遅いよね。WritePrivateProfileString()
0019名無しさん@お腹いっぱい。
01/11/23 04:17ID:???もちろん俺も使ったことありませんヽ(´ー`)ノ <WriteProfileString()
0020名無しさん@お腹いっぱい。
01/11/23 04:26ID:J/mYbkeb0021名無しさん@お腹いっぱい。
01/11/23 04:42ID:LPNYdIET0022名無しさん@お腹いっぱい。
01/11/23 04:47ID:???つか、昔も%windir%に無断でiniファイルを(大量に)作られたり、win.iniがぐちゃぐちゃになったりで嫌な思いしたんだけど、結局発端は作者のマナーなんだよねぇ。
0023名無しさん@お腹いっぱい。
01/11/23 05:54ID:???が必要だし、ユーザーごとに設定を変えられないからじゃないかなあ。> 推奨
0024名無しさん@お腹いっぱい。
01/11/23 09:09ID:LPNYdIETでもそれらの理由ならINIでもいいんだよね・・・
高い権限が必要なフォルダにインストールしなければいいわけだし、
(そもそもINIファイルを使っているのでフォルダをどこに移動してもいい)
ユーザごとにINIファイルを分ければ設定も変えられるし。
0025名無しさん@お腹いっぱい。
01/11/23 09:30ID:JtQLLOKn良くて、レジストリをregファイルに書き出しておく機能があるくらいだもの。面倒臭すぎ。
iniファイルならCD-Rや外付けHDDにディレクトリごとコピーするだけ。
0026名無しさん@お腹いっぱい。
01/11/23 10:01ID:/f024EYO勝手にWIN.INIに足すなボケ!
0027名無しさん@お腹いっぱい。
01/11/23 10:02ID:???それが大きいんだけど。
0028名無しさん@お腹いっぱい。
01/11/23 10:03ID:ill+EfSx第一、ユーザごとに設定を分けられない。
レジストリだと、無理に編集するにはレジストリエディタを使わざるを得なくなり、
そういうドキュソユーザに対して、かなりハードルになる。
それに HKCU 使えば、簡単にユーザごとに設定を分けられる。
さらに文字列じゃなくても、たとえば DWORD 値を直接読み書きできるので、
.ini ファイルの記述をチェックしなくていい。
ファイルだと、ディレクトリごと消されたり、勝手に移動されたりするけど、
レジストリだと、そんなバカなユーザからかなり守れる。
いわゆる「フールセーフ」ってことかな。
0029名無しさん@お腹いっぱい。
01/11/23 10:12ID:???レジストリ + INIのような設定の簡易移動
だと良さそうでは?レジストリ設定のインポート・エクスポート機能。
これの逆で
INI + マルチユーザ対応、64KBの壁、文字列以外の記録、etc
は大変なので。
0030名無しさん@お腹いっぱい。
01/11/23 13:05ID:???マルチユーザに対応してないINIは使いにくい。
INIでも Special Launch とか シン覚え書 なんかは
マルチユーザ対応してるのでいい。
レジストリもバッチファイル作っとけば保存・復元ラク。
例えば、こんな。
REM *** Becky! Internet Mail ***
REGEDIT /E E:\Reg\RimArts.reg "HKEY_CURRENT_USER\Software\RimArts"
REM *** 秀丸エディタ ***
REGEDIT /E E:\Reg\Hidemaru.reg "HKEY_CURRENT_USER\Software\Hidemaruo\Hidemaru"
復元時は上記のregファイルを実行していくだけ。
0031名無しさん@お腹いっぱい。
01/11/23 21:51ID:LPNYdIETこれからマルチユーザ対応は当たり前にやっていかなきゃならないと思うよ。
0032名無しさん@お腹いっぱい。
01/11/23 22:03ID:9UILC56c会社、学校ならインストールするようなソフトは
レジストリを利用したマルチユーザー管理も納得だけど
オンラインソフトなどを入れるのは個人使用のパソコンが多いだろうし
その場合、家族と共有してる人はそれほど多いのかなと・・・
結局一人一台代わりと基本なのでは
長々とスマンだけど言いたいことは
「INIの方がうれしいよう!」ってことです
0033名無しさん@お腹いっぱい。
01/11/23 22:41ID:???レジストリはユーザーごとに用意する必要がなくなって
ユーザーの参照くらいになると思うけど。
インストール後の再起動でレジストリのエラーになると
古いレジストリで更新情報が行方不明になるから
INIのほうがありがたいんだわ。
0034名無しさん@お腹いっぱい。
01/11/23 23:04ID:???まぁINIファイルをマルチユーザ対応にすることはそれほど難しいことじゃないです。
おっしゃるようにファイル名をユーザごとに変える方法や、ユーザごとにフォルダを
分ける方法など。
ただ、レジストリなら簡単なのにINIなら難しいという問題はその他にも
既出のように64KBの壁や、文字列以外の記録、初心者が誤操作しやすい(iniを謝って削除するなど)
などがあるので、そのへんはどう対応するのかと。
気になったのは
>インストール後の再起動でレジストリのエラーになると
>古いレジストリで更新情報が行方不明になるから
で、レジストリを使う人にはけっこう重要なことかもしれないので
もう少し詳しく教えてもらいますか?
「古いレジストリで更新情報が行方不明になる」とは?
0035名無しさん@お腹いっぱい。
01/11/23 23:49ID:???>「古いレジストリで更新情報が行方不明になる」とは?
壊れたレジストリが破棄されて、バックアップが適用されるって事だろ。
0036名無しさん@お腹いっぱい。
01/11/24 00:03ID:???>古いレジストリで
あぁ、エラー前のレジストリが適用されて、って意味か。
それは確かにINIの方がいいかもなぁ。
0037名無しさん@お腹いっぱい。
01/11/24 00:19ID:???例えば1ユーザーで複数アカウントを切り替えて使ってる場合
(普段用と管理用…等)レジストリよりINIの方が有利。
個人的には>>33,34のような方法でマルチユーザに対応しつつ、
コマンドライン等から別のINIを適用可、ってのがマンセー。
自分が知ってる範囲内では、WWWC、Irvine、xyzzy、limechat等が
この方式。
あとFFFTP等のini/レジストリ切り替え式も良いかも。
ちなみに64k、書換、バイナリデータ対策は、iniに拘らなければ
即解決。
0038名無しさん@お腹いっぱい。
01/11/24 02:17ID:???FFFTP使ってたけどそんな設定があったなんて知らなかった。
それいいね。基本的に開発時に迷ったらユーザの選択式にすればいいと思う。
■ このスレッドは過去ログ倉庫に格納されています