トップページ⇒software
682コメント299KB

レジストリ vs プライベートINI

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。01/11/22 18:00ID:kWO77Bur
フリーソフトで設定を保存するにはどちらが良いか。
プログラマの視点から、逆にユーザの視点から、
それぞれの利点や欠点について意見を聞かせてください。
0430名無しさん@お腹いっぱい。02/02/21 19:23ID:???
>>429

フリーで損害でも補償しろとでも?
ひぐちみたいなこと言うんじゃねーよ。
嫌なら使うなボケェ
0431名無しさん@お腹いっぱい。02/02/22 01:28ID:???
>>430
だから、そこんとこどーなのか聞いてる訳だよ。
別にフリーソフトに損害賠償を請求してる訳じゃないって。
つーかそんなの通る分けなかろう。
0432名無しさん@お腹いっぱい。02/02/22 01:44ID:???
作者に過失があれば別だけど、
>>427が言ってるのは選択するかどうかの責任。
損害じゃないし。
0433名無しさん@お腹いっぱい。02/02/22 15:11ID:YQPEG7se
選択の責任ってなんだよ?
ソフトを使うということは、選択の連続だが全部作
者に責任を取れと?
それとも全ての選択に対して説明をつけて、いち
いち確認しろと?

だいたい選択の責任とか言い出す優柔不断で頭
の弱い奴はソフト使うな。マジで

今後の人生体力と笑顔で乗り切ってくれ(藁
0434名無しさん@お腹いっぱい。02/02/22 18:25ID:???
>>433
いや、だから>>427の言ってることは的外れだろってこと。
0435名無しさん@お腹いっぱい。02/02/22 18:33ID:???
 一 重要事項について事実と異なることを告げること。
   当該告げられた内容が事実であるとの誤認。
 二 物品、権利、役務その他の当該消費者契約の目的と
  なるものに関し、将来におけるその価額、将来におい
  て当該消費者が受け取るべき金額その他の将来におけ
  る変動が不確実な事項につき断定的判断を提供するこ
  と。
   当該提供された断定的判断の内容が確実であるとの
  誤認。

 以上二つが消費者契約法で違法となるかどうかの条件。
http://www5.cao.go.jp/2000/c/0512c-keiyakuhou.html

 Readmeやインストール時に書くこと書いてあって、事実に反しなければ
違法にはならない。
 もちろん、パッケージや売り文句に書いてあることと明らかに違うソフ
トなら、それについての契約は無効になる。
0436名無しさん@お腹いっぱい。02/02/22 18:49ID:???
まーあたりまえっちゃあたりまえの話だよな
0437名無しさん@お腹いっぱい。02/02/26 03:53ID:???
どっちにしろ免責条項が法律によって無効化されたら、フリーソフトを配布する人はいなくなるだろ・・・
0438名無しさん@お腹いっぱい。02/02/28 21:48ID:???
>>437
つーか、そうなったらフリーでない個人プログラマーとか小さいソフトウェ
アベンダーは全滅するんじゃねーの?開発者や配布者の免責事項を無効にする
ってことは、ソフトの開発、配付、販売についての権利と義務を一切国の法
律で管理するってことだもの。
0439名無しさん@お腹いっぱい。02/03/01 13:47ID:???
しかし、IEとかMS製品の場合、そのセキュリティーホールのせいで損害を受けたと
本気で訴えたいと思ってるヤシが多数存在するという現実。
0440名無しさん@お腹いっぱい。02/03/01 14:08ID:???
どっか違う国へ引越す必要があ(以下略
0441名無しさん@お腹いっぱい。02/03/01 16:36ID:???
セキュリティホールならMSに限った話ではないが
むしろ「MSだから」という理由で訴えたいヤシが多数存在するという事実。
0442名無しさん@お腹いっぱい。02/03/01 21:33ID:???
いや、MSの場合IEは安全で快適な…とか言ってるから
そこら辺を突っ込みたいのでは。。。
0443名無しさん@お腹いっぱい。02/03/02 06:07ID:???
>MSの場合IEは安全で快適な…
それは免責事項や使用許諾じゃないだろ(w
044444202/03/03 10:18ID:???
あ、ほんとだ・・大ボケした。ごめん
0445名無しさん@お腹いっぱい。02/03/17 01:09ID:9DmLzW5E
0446名無しさん@お腹いっぱい。02/03/17 02:20ID:???
懐かしいスレが上がってるね。
結局なぜレジストリはダメなんだか分からなかったが。
0447もなか02/03/17 02:51ID:???
理想的なインストーラーの仕様を詰めて語るとか……ダメかな?
0448名無しさん@お腹いっぱい。02/03/20 22:48ID:???
Program Files\作者名\ソフト名 っていうフォルダはやめてほしい。
アンインストーラーついてないソフトを消すのに苦労する。
別に作者名で分けたところで何のメリットも無いと思うのだけれどなぁ
0449もなか02/03/23 01:29ID:???
>>448 あえて理由を探すなら、ソフト名より作者名の方が
カブリにくいからだろうね。
ファイルの場所自体も 作者名\ソフト名 と二重のくくりにした方が確実。
その場合、ソフト名フォルダ内に本体がある方が自然でしょ。
レジストリの登録と同じ理屈だと思う。
0450名無しさん@お腹いっぱい。02/03/24 00:26ID:???
Microsfotが 会社名\ソフト名 を推奨していて
個人だから会社名の代わりに作者名という程度の
理由と思われ
045144802/03/27 01:09ID:???
どっちなのか今ひとつわからないけど
>>449さん
ソフト名がカブるってそんなにあるのかなぁって思った。

>>450さん
なるほどーと。 それくらいの理由だったら勘弁して欲しいけど^^;
0452名無しさん@お腹いっぱい。02/03/28 05:27ID:???
>>451
かぶっても大丈夫なようにMSが推奨してるんだろ?
0453名無しさん@お腹いっぱい。02/03/28 05:51ID:???
>>451
滅多には被らないだろうけど、被った時は何が起こるかわからないし。
読むソフトの想定外の設定になってる可能性があるんだから。
出来るだけ被らないようにしてくれた方がいいっしょ。
0454名無しさん@お腹いっぱい。02/04/09 12:39ID:???
INIならまだ許せるがレジストリに2バイト文字を使うのは止めて欲しい。
海外製のレジストリ最適化ソフト使ったら漢字使ったレジストリキーの所で
無限ループ起こしたらしくログがとんでもない事になってた。
0455名無しさん@お腹いっぱい。02/04/10 02:37ID:???
なら国産のを使え
0456名無しさん@お腹いっぱい。02/04/11 16:23ID:???
>>454
それは困るね。
レジストリを掃除するソフトで国産ので良いのがあれば使うけど良いの無いしね。
0457名無しさん@お腹いっぱい。02/04/12 05:52ID:???
ageageage
0458名無しさん@お腹いっぱい。02/04/12 12:43ID:???
そりゃ言いがかりってもんだろ。
日本語キーに対応してない最適化ソフトのほうが悪い。
0459名無しさん@お腹いっぱい。02/04/12 14:22ID:???
>>454
それってその海外製アプリの不具合じゃん。
作者に2バイトコードに対応してくれって要望出せばよい。
0460名無しさん@お腹いっぱい。02/04/12 17:13ID:???
そのソフトについてはそれで良いかも知れんが
他のソフトでも不具合が出る可能性が出てくるわけでしょ。
だったらわざわざ不具合が出るかもしれない2バイト文字の使うこたねーと思うが。
0461名無しさん@お腹いっぱい。02/04/12 17:22ID:???
追記。Regedit.exeも2バイト文字駄目みたいだね。
ttp://www.haltz.com/rgstry/chap3b/regedit.htm
0462名無しさん@お腹いっぱい。02/04/12 21:46ID:???
そのページによると仕様違反の可能性もあるんだな。
なんのためにキーをUnicodeにしてるんだか(NT系の場合)。
0463名無しさん@お腹いっぱい。02/05/16 15:26ID:???

。
   o              O
                  o
     ((   /甲甲\      スイスイ
    ((  <(    ( ´∀`)    そろそろageるか。
        ⊂亠⊂亠亠⊃
     o
0464名無しさん@お腹いっぱい。02/05/17 09:24ID:???
ホッシュッ ホッシュッ
0465こんなスレ立ててもいいと思いますか?02/06/11 19:19ID:hkRZ/IPH
こんなスレ立ててもいいと思いますか?おけが出たら立てようと思うのですが…
------------------------------------
【インスコ】再インストールの必要の無い市販のアプリを紹介したりするスレ【省力化】

Windowsが死んだとき、再インストールはお約束ですが、そこには非常に
無駄な労力が使われてしまいます。

国民総生産量(GDP)を引き下げる原因である「再インストール」を極限まで
省力化するスレです。

※パーティションの切り方など、基本的な質問は出来るだけよそでやって下さいおながいします。


つーことで、漏れのバックアップコンボ

�@RealSynkで
C:\WINDOWS\スタート メニュー\
C:\WINDOWS\Favorites\
C:\WINDOWS\Tasks\
C:\WINDOWS\Cookies\
バクアプ

�Aレジストリを特定ソフトを狙い打ちでバクアプ

�Bノートンゴースト様でOS用ドライブを、復元

�Cレジストリ・データを、逆手順で復元

�D「新たに導入したソフト・ドライバを再インスコ」←無駄

�E(゚д゚)復元完了ウマー (所要時間 約30分 手順�Dの長さで変わる)

�F+α ノートンゴースト様で、最新の復元CDを作る


このバクアプ法の弱点
C:\Windows\ なんかに糞dllをブチ込むアプリを再導入しなおす手間が発生する。

-----------------------------------------------------------------

レジストリとあまり関係の無いソフトは、殆どDドライブに入れるんだが
こんなスレ、どうよ
0466名無しさん@お腹いっぱい。02/06/11 19:22ID:???
いいね。
さっさと立てて首つって氏ね
046746502/06/11 19:29ID:???
>466
駄目か…。 
スレ立てる前に、聞いておいて良かったよ。
恥かかずにすんだ。サンクスコ
0468名無しさん@お腹いっぱい。02/06/11 20:34ID:???
マジでいいと思うのに・・
立ててよ!
0469名無しさん@お腹いっぱい。02/06/11 20:42ID:???
余計なことするなよ。
こちとら、再インストールで金稼いでるんだ(ワラ
0470名無しさん@お腹いっぱい。02/06/15 07:59ID:???
>>469
なんとも虚しい商売だね
0471名無しさん@お腹いっぱい。02/06/15 09:08ID:BxBFb0SH
でも現実だよな。
0472名無しさん@お腹いっぱい。02/06/15 11:32ID:???
アンスコするときはちゃんとレジストリに書き込んだ分も消してよね。
0473名無しさん@お腹いっぱい。02/06/15 12:32ID:BxBFb0SH
でもさ、自分の書いた分(プログラムがね)とは別に、OSが書き込む値もあるでしょ?
他にも、フレームワークを使って書くと、自分は使ってなくても、フレームワークが使ってるとか。
0474名無しさん@お腹いっぱい。02/07/02 22:27ID:sYmdbmn8
INI
0475名無しさん@お腹いっぱい。02/07/02 23:04ID:hR4rz4M9
>>420
そこで急遽作られた
http://www.geocities.co.jp/SiliconValley-Oakland/8192/
って思わずひざを打つような(打ってねーけど)指摘がいっぱいあるね。
やっぱり作り手でも分かってる人は分かってるんだ。
0476名無しさん@お腹いっぱい。02/07/03 18:01ID:???
ini…文字列しか書けない・遅い
レジストリ…アンインストが面倒・バックアップしにくい
0477名無しさん@お腹いっぱい。02/07/03 18:03ID:???
つーか、今時XML化してないのは糞だ。
0478名無しさん@お腹いっぱい。02/07/03 18:04ID:???
XML…遅い、パーサの分実行ファイルサイズが増える
0479名無しさん@お腹いっぱい。02/07/03 18:18ID:???
XMLはDTDを切ればiniよりは遙かに早いよ。
iniは呼び出し要求があるたびにファイルを開いて、
キーをサーチしてるから遅い。
0480名無しさん@お腹いっぱい。02/07/03 18:19ID:???
フリーで内臓可能(DLL不要)の小さな(数KByte以内)のパーサが無いと使う気になれん。
0481名無しさん@お腹いっぱい。02/07/03 18:37ID:???
漏れのパーサはDOM level1準拠で8kbほど。
速度はも遅い方かも知れないけど、
iniよりは早いと思うよ、うん。
0482名無しさん@お腹いっぱい。02/07/16 02:38ID:aOpC1abc
下がりすぎ、上げ。
私はini派だなぁ・・・1ユーザーとして。
0483名無しさん@お腹いっぱい。02/07/16 07:33ID:???
>>479
バッファ内で処理すれば良い。
0484名無しさん@お腹いっぱい。02/07/16 08:36ID:???
>>483
そんなことをするんじゃ、コメントの取り扱いが面倒になるし、
手軽に扱えるのがウリのiniを利用する意味もほとんど無くなる。
DelphiとかみたいにはじめからTMemIniFileとか用意されているならいいけどね。
0485名無しさん@お腹いっぱい。02/07/22 18:08ID:???
age
0486名無しさん@お腹いっぱい。02/07/22 18:12ID:???
iniならへぼユーザでも簡単にいじれる
0487名無しさん@お腹いっぱい。02/07/22 18:13ID:???
カスソフトに限って必ずレジストリ
0488名無しさん@お腹いっぱい。02/07/22 18:14ID:???
へぼユーザはiniファイルを不可視にしてます。
0489名無しさん@お腹いっぱい。02/07/22 18:16ID:???
soreha ieteru
0490名無しさん@お腹いっぱい。02/07/22 18:18ID:???
正直、482みたいなのは何の参考にもならない
0491名無しさん@お腹いっぱい。02/07/23 01:13ID:???
iniなら(自分をへぼユーザと気づいていない)へぼユーザでも簡単にいじれる
0492おやむん02/07/24 00:15ID:tzpyIEwd
ざっとスレ眺めてきたヘボプログラマだけど、
漏れもini(レジストリも)はいじられたくないなぁ。
バックアップのためってもiniをコピーされたくねー。
てことで、設定を書き出せるようにするほうに一票。

で、スレ違いっぽいけど
マルチユーザー = EXE一個で複数のユーザーに対応
マルチインスコ = それぞれのユーザーにEXE一個ずつ
てことを踏まえて
インスコはiniをEXEと一緒にしてあとはご自由に
マルチユはiniかregで、uninstallはゴミのこすなよってこと?
でもさぁ、マルチユの場合イニでもレジでもアドミンしか完全に消せなくね?

となると、やっぱソフトがマルチユ云々じゃなくてインストーラの
問題じゃねぇの?
完全にマルチユ対応にしようとするとアドミンしかinstallできなくね?
UsersでもOKとなるとシングルしか無理っぽいけど、結局
シングル = インストーラなし、
マルチユ = インストーラあり
こゆこと?
0493名無しさん@お腹いっぱい。02/07/24 00:23ID:???
Admin権限無いとProgram Files以下にインストールも出来ないと思うが。
Admin権限があると、適切にアンインストール処理すれば、
他のユーザーのレジストリも消せる。
0494名無しさん@お腹いっぱい。02/07/24 00:24ID:???
Power Usersでもインスコできるんじゃない?
0495おやむん02/07/24 00:25ID:???
それと、シェア作家居たら聞きたいんだけど
使用期限どこに保存する?(w
0496名無しさん@お腹いっぱい。02/07/24 00:35ID:???
HKCR\CLSID以下
0497名無しさん@お腹いっぱい。02/07/24 00:35ID:???
>>495
MBRに記録していたツワモノがあった。ウィルスかっつーの。
シェアウェアというか計測用ソフトだが。
0498おやむん02/07/24 00:42ID:???
>>493
そうだよなぁ、マルチユの場合アドミンじゃないとキツイよなぁ。
>>494
PowerUserでもProgram Filesインスコできるけど、
ここのとこよく知らないんだけど
例えば他のユーザーの設定消せるのかな?
消せなかったらゴミ残しそうな。。。。

てことは、インストーラでアドミンで動いていたらマルチユとしてインスコ
そうじゃなかったらシングルでインスコってことでOK?
0499名無しさん@お腹いっぱい。02/07/24 00:49ID:???
>>497
サイズがでかめのブートローダー破壊して、再起不能になりそうだ。

>>498
ていうか、Admin以外でインストールするなと言う気もする。
0500おやむん02/07/24 00:53ID:???
結構みんな見てるねぇ(マターリ
>>496
なんか、みたことある。某OCとか(w
これってやっぱりアンインストしても、ここは残すね。
でもそれってゴミだよなぁ
しかし、こればっかりは綺麗にすると元も子もない(w
そこんとこ難しいよな・・・
>>495
強烈だなオイ(w。それってチェックに引っかかるって。
そこまではしたくねぇ、人として。


0501名無しさん@お腹いっぱい。02/07/24 00:57ID:???
BIOS領域の空きエリアを調査して
そこに記録するドライバなら作ったけど、
自分で破壊したことがあるから公開してない(ワラ
0502名無しさん@お腹いっぱい。02/07/24 00:58ID:???
俺もミニアプリ何個か公開してるけどさ、マルチユーザに対応してください
って言われたら、iniの名前をユーザごとに変えてマルチユーザ化するのが
手っ取り早いような気がするので、そうすると思う。

EXEと同じところにini置いとけば、アクセス権も一元管理できるし。
何か不都合あるだろうか?

>>498
どうでもいいけど、何で「マルチユ」というのに「シングルユ」って言わないんです?
0503名無しさん@お腹いっぱい。02/07/24 01:09ID:???
Program Files以下にインストールされた場合、
PowerUsers以上のグループじゃないとiniを作れない。
0504おやむん02/07/24 01:16ID:???
>>499
たしかにそういう気はする。
設定ファイルいじるなと同じで(w
>>501
BIOSってアンタ・・・ま、まさか神!?
>>502
503も言ってるけど、
それプラスみんながアクセスできるとこだと勝手に見られる。
まぁ、見られてもいいデータじゃないならいいんじゃないの。
あと作ったヤシしか読めない設定にする手も>NTFS
消す時はアドミンで。

というかそういう場合はiniを
C:\Documents and Settings\All Users\Application Data
C:\Documents and Settings\ユーザー\Application Data
に置いた方がいいらしいと、上のほうで書いてあった(w
しかし、こうやるとフォルダ探すのがうざいらしい。

ユってつけないとマルチインスコと間違えそうだから。
まぁ、どうでもいいけどな。
0505名無しさん@お腹いっぱい。02/07/24 13:49ID:???
>>503
書き込みできないなら、そのプログラムのフォルダだけ必要なアクセス許可与
えてくれ、と、運用する側に頼るのは甘えすぎだろうか?
ミニアプリの場合は、だけど。
書き込みできないときはその旨のメッセージボックス出すか何かして。

>>504
データの機密性

  レジストリ(HKCU)  ファイル
9x    ×          ×
NT    ○          △(FileSystem依存)

どっちでも動くようなアプリを作っている場合、データの機密性を保とうとし
たら一工夫いりますな。
0506名無しさん@お腹いっぱい。02/07/25 14:31ID:???
ちょっと疑問に思ったことがあるんだけど、
レジストリって本当に早いの?
あの膨大なデータの中から目的のキーを選んで引っ張ってくるんだよね?
iniの方が早いと思うのは間違い?
0507名無しさん@お腹いっぱい。02/07/25 14:42ID:???
間違い。
0508名無しさん@お腹いっぱい。02/07/25 14:46ID:???
>>506
ハッシュって知ってる?
050950602/07/25 15:12ID:???
>>508
知ってるよ。
ただ本当に早いのかなぁって思っただけ。
>>507,508
ありがと
0510名無しさん@お腹いっぱい。02/07/25 17:43ID:???
>>508
ハッシュってなんだ?
別にレジストリとハッシュは特別に結びつく物でもないが。
レジストリが速いのはファイルシステムと同じように、
Index+関連づけられたデータという構造だから。
iniファイルは、値取得、書き込み要求ごとに、
ファイルを開く>リニアサーチ>取得だったり書き込み>ファイルを閉じる
というプロセスで処理されている。
でかくなってくると、当然、リニアサーチにかかる負荷も尋常じゃない物に。
0511名無しさん@お腹いっぱい。02/07/25 23:45ID:???
べつにリニアサーチ云々じゃなくて、
システム的に優遇されてるから早いんだろ。
0512名無しさん@お腹いっぱい。02/07/26 00:05ID:???
ハッシュでIndexを作りハッシュで関連づけられたデータをインデックスから探す。
(探すと言うよりハッシュなので計算すれば探さずに一発で辿り着くのだが)
0513名無しさん@お腹いっぱい。02/07/26 03:02ID:???
>>510
ファイルシステムもリニアサーチだよ。FAT32のFindFirstFileとか。
0514名無しさん@お腹いっぱい。02/07/26 12:54ID:???
結局どうなの?
レジストリへのアクセスはINIより早いの?
またINIの方が高速と感じたり、どちらも同じくらいって感じる
サイズはINIのサイズにしてどれくらいなの?
0515名無しさん@お腹いっぱい。02/07/26 12:57ID:???
自分で作って調べろよ。
0516名無しさん@お腹いっぱい。02/07/26 13:59ID:???
NTFSもレジストリもハッシュじゃないよ。
B+Treeを使っている。
0517名無しさん@お腹いっぱい。02/07/26 14:00ID:???
>>514
iniの方が速いケースは存在しないよ
0518名無しさん@お腹いっぱい。02/07/26 15:56ID:???
>>517
じゃぁ体感できるほどレジストリの方が早いケースって?
0519名無しさん@お腹いっぱい。02/07/26 15:58ID:???
一回レジストリアクセス監視ソフトで監視しながらエクスプローラとか使ってみ。
これが全部INIアクセスだったら体感できるほど遅くなってるだろう。
0520名無しさん@お腹いっぱい。02/07/26 19:58ID:???
>>518
そうだな、アプリケーション自体が違うから、
比べられないといえば比べられないけど、
レジストリを使用しているテキストエディタと、
iniファイルベースのテキストエディタの起動時間とか比べてみると良いんじゃない?
0521名無しさん@お腹いっぱい。02/07/26 22:58ID:???
>>519,520
うん、それは分かるんだけど、
1k,2k程度のiniをレジストリに変更しても、
そんなに速度差を感じないんだよね。
だからその程度のファイルをわざわざレジストリに置いて
Win全体を不安定にさせなくても…って思うんだよね。
まぁNT系だとそんなに不安定にはならないんだけど、
チリも積もればってやつで。
0522名無しさん@お腹いっぱい。02/07/26 23:34ID:???
IEとかは1MByteとかレジストリに置くんだから、
そこいらのソフトで数KByte使ったところで不安定になるとは思えんが。
0523名無しさん@お腹いっぱい。02/07/26 23:55ID:???
数百k以上の設定ファイルじゃなきゃ
iniとレジストリの読み込みや書き込み速度なんてわからないだろ。
0524名無しさん@お腹いっぱい。02/07/26 23:56ID:???
>>523
そうでもないよ。その1/10位でも速度差でるんじゃない?
0525名無しさん@お腹いっぱい。02/07/27 00:03ID:???
>>521
おいおい、、、
レジストリに書き込むと不安定になるっていったいどんな環境だよ。
HKCU以下に書き込んでも、OSの基本部分への影響は皆無だよ。
dbファイルからして別物なんだし。
0526名無しさん@お腹いっぱい。02/07/27 00:04ID:???
OSの基本部分もHKCU読むわけだが。
0527名無しさん@お腹いっぱい。02/07/27 00:05ID:???
>>524
それじゃぁ体感できんじゃん…
0528名無しさん@お腹いっぱい。02/07/27 00:10ID:???
レジストリの読み書き速度は
レジストリの項目数に対する対数オーダー+メモリアクセスのオーバーヘッド分で
iniの読み書き速度は
iniの項目数に対する線形オーダー+ファイルアクセスのオーバーヘッド分じゃないの?
0529名無しさん@お腹いっぱい。02/07/27 00:39ID:???
結局レジストリの優位点って
「マルチユーザへの対応が簡単」ってだけ?
速度差も馬鹿でかいサイズを一気に読み書きしなきゃ体感できないんだろ?

ていうか、ここの話聞いてると
今あるレジストリ使用するオンラインソフトの99%はINIで問題なさそうな気が…
0530名無しさん@お腹いっぱい。02/07/27 00:40ID:???
MSがレジストリ使えINIは過去の遺物だって言ってるから
それに従ってるんじゃないの?
■ このスレッドは過去ログ倉庫に格納されています