App.Configを使用するac#.netアプリケーションを作成しました。もちろん、デバッグ中はすべて正常に機能します。ファイルにアクセスして読み取りと書き込みを行うことができます。
しかし、アプリケーションのインストーラーを作成すると、書き込み部分が機能しなくなりました。
これは、アプリケーションがプログラムファイルにインストールされていたためです。そして、あなたはプログラムファイルフォルダに書き込むことができません...
app.configをdeAppDataフォルダーに配置するための解決策を考えましたが、機能させることができません。
私が知りたいのは、インストーラーにファイルを正しい場所に配置するように指示する方法と、ファイルをその場所に書き込むための正しい関数を作成する方法です。
これが私がこれまでに持っていたものです:
public static void WriteValue(string key, string value)
{
string configPath = System.Environment.GetFolderPath(
Environment.SpecialFolder.ApplicationData) +
"\\Application\\app.config";
ExeConfigurationFileMap map = new ExeConfigurationFileMap(configPath);
// Open App.Config of executable
Configuration config = ConfigurationManager.OpenMappedExeConfiguration(map,
ConfigurationUserLevel.None);
// Add an Application Setting.
config.AppSettings.Settings.Remove(key);
config.AppSettings.Settings.Add(key, value);
// Save the configuration file.
config.Save(ConfigurationSaveMode.Modified);
// Force a reload of a changed section.
ConfigurationManager.RefreshSection("appSettings");
}
よろしくお願いします