DOBON.NET DOBON.NETプログラミング掲示板過去ログ

初期設定ファイルへの書き込み

環境/言語:[C#,.NET Framework 2.0]
分類:[.NET]

現在、vs2005 C#にてWindowsアプリを作成しています。
(ここでは、仮にこのアプリを「hoge.exe」とします)
このアプリは設定ファイルを使用しているのですが、
実行中に設定を変えた場合、

hoge.Properties.Settings.Default.Save();

によって、設定の保存を行っています。

その際、hoge.exeが格納されたフォルダの
hoge.exe.config の内容は変わらずに、
C:\Documents and Settings\<user>\Local Settings\Application Data\hoge\hoge.exe_Url_xxxxxx\<version>\user.config
に変更された内容が書き込まれます。

アプリの動作上は、これで次回起動時も変更した設定が生きてるので
問題は無いのですが、なんとかhoge.exe.configに変更を保存できないものかな
と考えております。
いろいろ探ってみたのですが、方法が見つからず、こちらに質問させて頂きました。
最悪、設定ファイルを自分で読み書きするよう書いてしまえば良い話だとは思うのですが、
なんとなく、上記のSave()みたいな方法で出来るんじゃないかと・・・。

もし、ご存知の方がおりましたらお教えください。
よろしくお願いします。
> なんとかhoge.exe.configに変更を保存できないものかな
> と考えております。

原則として、やっちゃ駄目です。

一般的な手順でインストールされたアプリケーションは C:\Program Files 配下に配置されますが、一般ユーザはそのディレクトリの書きこみ権を持っていません。
■No18999に返信(tanさんの記事)
まずは、次のページをご覧ください。

「アプリケーション構成ファイル」を編集する
http://dobon.net/vb/dotnet/programing/editappconfigfile.html

ただ、なぜアプリケーション構成ファイルを編集したいのかという理由によっては、別の方法を考えたほうがよいかもしれません。
渋木さま、管理人さま。
ご返信ありがとうございました。
私のほうでも情報を探しているうちに、ポリシー的に
やっちゃいけないものなのかもと考えていたのですが、
渋木さま、管理人さまのコメントでよく判りました。

こんな事をやる理由としては、ユーザ様からの意向で・・・。

とりあえず、VSの機能としての設定ファイルではなく
普通にファイルの読み書きで対応したいと思います。

渋木さま、管理人さま、有難うございました。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板