Изменить встроенный файл ресурсов во время выполнения

У меня есть написанная программа, которая использует ресурс (встроенный текстовый файл) для конфигурации программ по умолчанию. Я хочу, чтобы пользователи могли изменять это поведение по умолчанию. Я хотел бы знать, как изменить встроенный файл ресурсов, чтобы в следующий раз программа использовала измененную версию.

ценю помощь

3 ответа

Решение

Я думаю, что вы ищете settings файл. Встроенные ресурсы скомпилированы в ваш exe/dll и не предназначены для изменения.

Вот один из способов обновления файла, который встроен в проект. Вот пример XML-файла. Вы можете изменить его в текстовый файл в соответствии с вашими потребностями

string path = Path.Combine(
Environment.GetFolderPath(
Environment.SpecialFolder.ApplicationData), 
Application.CompanyName);

path = Path.Combine(path, Application.ProductName);
path = Path.Combine(path, subFolder);
path = Path.Combine(path, "fileName.xml");

if(!File.Exists(path)){
    Assembly thisAssembly = Assembly.GetExecutingAssembly();
    Stream rgbxml = thisAssembly.GetManifestResourceStream(
"YourNamespace.fileName.xml");          
    XmlDocument doc = new XmlDocument();
    doc.Load(rgbxml);

    doc.PreserveWhitespace = true;
    doc.Save(path);

проверить полную статью: СОХРАНЕНИЕ ВСТРОЕННОГО XML-ФАЙЛА РЕСУРСА ПРИ РАБОТЕ В C#

Вам лучше попробовать использовать Свойства для сохранения настроек, Пример: Properties.Settings.Default

Чтобы добавить свойства, в обозревателе решений щелкните правой кнопкой мыши -> Свойства -> Настройки (вкладка).

Затем добавьте все, что вам нужно, затем в коде доступа из.Default

Чтобы сохранить настройки обновлений во время выполнения, используйте следующее: Properties.Settings.Default.Save()

Надеюсь это поможет

Другие вопросы по тегам