Я использую C # с .net 3.5
Я сохраняю данные моей программы в файле: C: \ Program Data \ MyProgramName \ fileName.xml
После установки и запуска моегоприложение, которое я однажды удалил (во время удаления я удаляю все файлы из «данных программы»), а затем переустанавливаю приложение и запускаю его.
Странно, что мое приложение запускалось так, как будтофайлы в данных программы существовали - значит, у меня были старые данные в моем приложении, хотя файл данных был удален.
При запуске:
File.Exists("C:\Program Data\MyProgramName\fileName.xml")
Я получил "истину", хотя я зналнаверняка, что файл не существует.
Эта вещь стала странной, когда я запустил приложение от имени администратора, а затем файл не существовал.
После исследования я обнаружил, что когдазапуск моего приложения без прав администратора вместо получения: «C: \ Program Data \ MyProgramName \ fileName.xml» Я получаю «C: \ Users \ userName \ AppData \ Local \ VirtualStore \ ProgramData \ MyProgramName \ fileName.xml"
и действительно, был файл, который существовал из предыдущей установки (который я, очевидно, не удалил, потому что я не знал, что он существует).
Очевидно, что существует некоторый виртуальный путь к файлу в программеdata.
EDIT:
Я обнаружил, что после удаления старого файла в виртуальном хранилище мое приложение внезапно может найти нужный файл.(Я не вносил никаких изменений в файл в разделе «Данные программы».
Мой вопрос:
- , почему это происходит.
- Как я могу предотвратить это?от происходящего
Заранее спасибо