У меня есть приложение WPF, которое должно запускаться для всех пользователей машины с такими же настройками. Настройки должны быть прочитаны / записаны.Ранее я хранил параметры конфигурации пользователя в CommonApplicationData, например
var settingsFile = Path.Combine(Environment.GetFolderPath(
Environment.SpecialFolder.CommonApplicationData),
"[company]", "[product]", "settings.xml");
. Однако сегодня утром я прочитал, что CommonApplicationData
используется для перемещаемых профилей, то есть они не зависят от машины. Насколько я могу судить, у нас есть следующие варианты данных приложения ( источник ):
// Store application-specific data for the current roaming user.
// A roaming user works on more than one computer on a network.
// A roaming user's profile is kept on a server on the network and is loaded onto a system ' when the user logs on.
System.Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
// Store in-common application-specific data that is used by all users.
System.Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData);
// Store application-specific data that is used by the current, non-roaming user.
System.Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData);
Подводя итог, можно указать следующие варианты:
Мне нужны все пользователи без роуминга. Моя первоначальная мысль - забросить все это в папку установки, но это кажется немного старомодным?
Мысли?