vasanthkumarmk Ответов: 2

Как сохранить XML-файл в реестре


В моем проекте Один из сценариев я хотел бы сохранить XML-файл в реестре. Также нужно прочитать XML-файл из реестра. Кто-нибудь может мне помочь!!!

Что я уже пробовал:

Я сохранил локальную временную папку на диске C. Но иногда он не будет иметь доступа к созданию. Поэтому я решил сохранить его в реестре.

2 Ответов

Рейтинг:
15

phil.o

Ты не должен этого делать. Реестр Windows не предназначен для того, чтобы стать хранилищем файлов. Заполнение огромного объема данных там будет иметь ужасное влияние на производительность системы.
Вместо этого вы можете рассмотреть правильное решение: использование папки в папке данных приложения (или локальной папке данных приложения) вошедшего в систему пользователя.
Что-то вроде:

using System;
using System.IO;
using System.Reflection;

// For roaming user's application data folder
string path = Path.Combine
(
   Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData),
   Assembly.GetExecutingAssembly().GetName().Name,
   "temp"
);

// OR

// For local user's application data folder
string path = Path.Combine
(
   Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData),
   Assembly.GetExecutingAssembly().GetName().Name,
   "temp"
);


vasanthkumarmk

Спасибо за ваш ответ, но вместо хранения локальной папки мне нужно было бы хранить общее место, например реестр.

phil.o

Как я уже сказал, Вы пытаетесь использовать реестр для чего-то, для чего он не был разработан. Это ужасная идея. Кроме того, существует папка данных приложений для всех пользователей компьютера; это общее место, которое вы ищете.

vasanthkumarmk

Если да, то должен ли я конвертировать XML-данные в двоичные файлы и хранить их в файле Regx? Будет ли это хорошей идеей? Ваши предложения, пожалуйста.

phil.o

Что такое файл Regx? И зачем преобразовывать XML - данные в двоичные файлы? Разве недостаточно просто хранить простой старый xml-файл там, где обычно должны находиться все конфигурационные файлы?
Помните, что я ничего не знаю о ваших настоящих требованиях. "Хранение чего-то в реестре" - это не требование само по себе, это решение, которое вы себе представили, к проблеме, о которой я не знаю.

vasanthkumarmk

Спасибо!!!!

Рейтинг:
1

Richard MacCutchan

Я уже дал вам ссылку на статью, в которой объясняется, где вы должны хранить свои данные. Не используйте реестр, он может нанести неисчислимый ущерб вашей системе.

И, пожалуйста, не размещайте один и тот же вопрос в нескольких местах.