1

構成ファイルがアプリケーション ディレクトリにある場合、.config ファイルから読み取り、変更を書き戻すことができます。ユーザー権限のためにこれを変更し、.config ファイルを users/xxx/local ディレクトリに移動したいと考えています。SectionInformation.AllowExeDefinition プロパティを ConfigurationAllowExeDefinition.MachineToLocalUser に変更する必要があることは既に知っていますが、AppSettings セクションのこのプロパティを変更することはできません。

これは私がAppSettingsから読む方法です

//Read COM Port settings
UIModel_settings.COMport = System.Configuration.ConfigurationManager.AppSettings.Get("COMPort");

これは私が AppSettings に書き込む方法です

System.Configuration.Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal); 
config.AppSettings.Settings["COMPort"].Value = UIModel_settings.COMport;
config.Save(ConfigurationSaveMode.Modified);
ConfigurationManager.RefreshSection("appSettings");

実行すると、Save メソッドでロックされたエラーが発生します。ロックされている場合、ConfigurationSection プロパティを編集できません。

これを修正する方法はありますか?または、ローカル ユーザー ディレクトリの下にこのファイルを作成するにはどうすればよいですか?

ありがとう

ゼール

4

1 に答える 1