トップページ⇒tech
51コメント11KB

設定情報どこに保存すべきですか?

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
レジストリ VS /etc VS インストールフォルダ VS My Documents

理由もちゃんと書くこと。
思い込みによる好き嫌いは認めない。

勝負始め!
0002鳥取砂丘&rlo;ムレーハ村リ゚フ@&lro; ◆Dream/3P/. NGNG
  よゆうで
 ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄
             。 。
             || ||  /⌒ ヽ.
             / ⌒ヽ( /⌒ヾ )
            ((゚Д゚,,))ゝヽのノノ
           ⊂⊂ _____つ   ))    ))
0003デフォルトの名無しさんNGNG
インストールフォルダへINIファイルとして保存。
電話等でサポートするときに場所を説明しやすいし
他のアプリと衝突する心配もない。
更に「メモ帳を開いて」とやれるので安全。
「レジストリエディタを開いて」って、ちょっとやれないでしょ。
0004鳥取砂丘&rlo;ムレーハ村リ゚フ@&lro; ◆Dream/3P/. NGNG
>>3
INIファイルをエディタで中途半端に弄らせるくらいなら
レジストリにしてダイアログで弄れるように汁
0005デフォルトの名無しさんNGNG
INIにすると64K以上読み書きできない。
ついでに複数のユーザで使うと
設定ファイルが複数のユーザで衝突する。
0006デフォルトの名無しさんNGNG
>>5
iniのI/Oルーチンを自分で書けば解決。
ユーザ名.iniにするとか。
0007デフォルトの名無しさんNGNG
>>6
それは自分でI/O書く必要無いだろ
0008デフォルトの名無しさんNGNG
>>6
いっそOSも自分で書けば?
0009デフォルトの名無しさんNGNG
>5
なるほど。
64KBを超える設定情報はレジストリに保存すれば安心だな。
0010デフォルトの名無しさんNGNG
どっかのサーバー
0011デフォルトの名無しさんNGNG
>>4
それはユーザの自己責任ということで。
INIファイルを勝手に弄ってトラブったら
ちゃんとフォローしてあげて
頂くものを頂けばそれでよし、と。
0012デフォルトの名無しさんNGNG
nyで(ry
0013デフォルトの名無しさんNGNG
c:\ におけばすべて解決じゃん  おまえらなんでわかんないの?
0014デフォルトの名無しさんNGNG
じゃぁ、ぼくはA:\におくことにします
0015最凶VB厨房NGNG
>>5
ストリーム使えば?
0016デフォルトの名無しさんNGNG
.NETに移行するとレジストリ保存は廃れる
なぜならレジストリが無いOSへ.NETのソフトを動かすとき(以下略
発想が古いレジストリなんて使わなくで、先を見つめようぜ
0017デフォルトの名無しさんNGNG

Win2K だと、INI保存難しくない?
一度調べたけど管理人並みの権限がないと
できなかったような感じだったけど。
0018デフォルトの名無しさんNGNG
>>17
んなーこたない
\Documents and Settings\UserHoge\Application Data\AppHage\
とかに書くのが普通だよね
0019デフォルトの名無しさんNGNG
MS的には

・Win3.1→ini
・Win95〜→レジストリ
・.NET→XMLファイル

だよね
0020デフォルトの名無しさんNGNG
自分の「ホームディレクトリ」に ドットで始まる名前を付けて保存すべ
0021デフォルトの名無しさんNGNG
このスレは無事終了いたしました
0022デフォルトの名無しさんNGNG
>>19
XMLはデータ構造を除きiniと同じ問題をそのまま抱えてると思うんだが
0023デフォルトの名無しさんNGNG
シングルユーザーなら、EXEにINIファイルを置く。
マルチユーザーなら、レジストリ。
0024デフォルトの名無しさんNGNG
・Win3.1→カセットテープ
・Win95〜→フロッピーディスク
・.NET→ハードディスク

だよ
0025デフォルトの名無しさんNGNG
>22
XMLファイルは、各ユーザのApplication Data以下に保存するんじゃないの?
0026デフォルトの名無しさんNGNG
インストールフォルダで何か問題でも?
unixならインストールフォルダだよね・・・

レジストリだとどんなメリットがあるの?
0027デフォルトの名無しさんNGNG
%APPDATA%\ProgramName.ini
が最強。
0028デフォルトの名無しさんNGNG
>>26
第一目的はコピー防止
0029デフォルトの名無しさんNGNG
>>26
全ユーザで設定を共有しろとでも?
CD上にインストールされている場合は書き込みエラーが出ても構わないと?
全ユーザに対して、インストールしたフォルダへの書き込み権限を与えろと?
0030デフォルトの名無しさんNGNG
>>18
普通に RegCreateKeyEx が使えますか?

以前試したら、

REGSAM samDesired, // desired security access
LPSECURITY_ATTRIBUTES lpSecurityAttributes,
// address of key security structure

この辺りの関係でうまく逝かなかった記憶があるんで。
0031デフォルトの名無しさんNGNG
>>29
どうしても個人ごとの設定情報が必要な場合、まず設定情報用の
ファイルを作り、アプリケーションを起動したあとに、ユーザーが
それを明示的に読み込めるようにする。
またアプリケーションの起動時にパラメータとしてそのファイル名を
渡せばそれを自動的に読み込むようにしておく。
そして、実行ファイル名と個人ごとの設定情報ファイル名をペアにした
ショートカットを各個人ごとに作成。

同一ユーザーでも複数の設定情報の切り替えが出来て ウマー だが。
0032デフォルトの名無しさんNGNG
>>25
それがiniと同じ問題。
ソフ板のスレで議論されていたけど、
ユーザープロファイル以下に保存されるのを面倒と感じる人も少なくないから。
0033デフォルトの名無しさんNGNG
>>30
AppDataはレジストリとは関係ないだろ。
0034デフォルトの名無しさんNGNG
ユーザの脳みそのぶち込めればなぁ…
0035デフォルトの名無しさんNGNG
彼女にぶち込めば?
0036デフォルトの名無しさんNGNG
>>9
MSはレジストリに64KBのようなでかいデータを保存しないように推奨してます。
0037デフォルトの名無しさんNGNG
ポストイット
0038デフォルトの名無しさんNGNG
インストールフォルダにもレジストリにも長所と短所があるから
どちらか一方にしようと言っても反論されるのは当然。
ユーザが保存先を選択できるようにすればよい。
0039デフォルトの名無しさんNGNG
>>38
だからなんでレジストリじゃなかったらインストールフォルダになるんだよ?
インストールフォルダを全ユーザにアクセス許可させる気?
0040デフォルトの名無しさんNGNG
>インストールフォルダを全ユーザにアクセス許可させる気?
全ユーザって…サーバ側の話だったのけ?これ
それならセキュリティの点からもDBで設定も管理するのがよかんべ。
0041デフォルトの名無しさんNGNG
>>40
わかってないなら書き込むなよ。恥ずかしくない?
0042デフォルトの名無しさんNGNG
一台のPCを複数の人が使うような貧しい環境は想定してなかったよ(w
0043デフォルトの名無しさんNGNG
まあシングルで使うやつらは
admnアカウントをそのまま使ってるんだろう
0044デフォルトの名無しさんNGNG
マルチユーザー環境では?
選べるようにしておけばいいね。
まさに多態性。
0045デフォルトの名無しさんNGNG
5台のPCを3人で共有している貧しい環境ですが何か?
0046デフォルトの名無しさんNGNG
>>45
地銀とかですか?
0047デフォルトの名無しさんNGNG
>>1のMy Documentsに保存って、誰も意見ないの?
0048デフォルトの名無しさんNGNG
論外って事だな
0049デフォルトの名無しさんNGNG
マルチユーザならそれぞれ
C:\soft1
C:\soft2
C:\soft3
って独自に掘っておけば安心。
iniファイル or 独自ファイルをカレントに保存、これ最強。
0050デフォルトの名無しさんNGNG
>>39
誰もレジストリとインストールフォルダの二択なんて言ってないよ。
それと全ユーザにアクセス許可されたくなかったらレジストリ選択すればいいだけ。
0051デフォルトの名無しさんNGNG
>>49-39
レベル低!!
■ このスレッドは過去ログ倉庫に格納されています