Пользователи/общедоступные пользователи не доступны для записи в Windows 7:куда мне поместить данные пользователя?

StackOverflow https://stackoverflow.com/questions/1089644

  •  11-09-2019
  •  | 
  •  

Вопрос

Я начал становиться хорошим гражданином, согласно этому вопросу здесь:

Совместимость доменов:где следует записывать общие данные?

Моя информация о пользователе теперь записана в переменную среды:

Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData)

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

В Windows XP при подключении к домену проблем нет;этот файл обнаружен и записан правильно.На windows 7 программа не работает.Каталог пользователя теперь называется C:\ProgramData\MyFolder, и эта папка создается только для чтения (genius!Почему бы не сделать его доступным только для чтения, ведь никто не хочет писать в расположение CommonApplicationData!).

Какой каталог мне следует использовать?Эта «специальная папка» предназначена для нужной мне задачи, но похоже, что эта папка не доступна для записи пользователем.

Изменить в ответ на первый ответ:Я использую установщик WiX, и меня вполне устраивает добавление туда любого файла в установщик.Я не знаю, как это сделать, поэтому ответьте волшебными словами установщика WiX.

Это было полезно?

Решение

В соответствии с Рекомендации по совместимости с Vista, ваше приложение должно создать папку для своих материалов в разделе CommonApplicationsData в установщике (я упоминал, что у него также должен быть установщик?) и назначить там соответствующие разрешения для этой папки.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top