У меня есть приложение C # для Windows Form, которое делает (примерно) что-то вроде:
- OpenFileDialog () <- указывает путь к файлу </li>
- File.Exists () <- подтверждает правильность пути к файлу </li>
- File.GetLastWriteTime () <- проверяет время последнего изменения файла </li>
- ZipArchive.CreateEntryFromFile () <- создает новый zip, если файл изменился </li>
Я пытаюсь заставить приложение работать как приложение UWP.Я успешно получил его скомпилированный в APPX, и он отлично устанавливает / запускает.Однако, похоже, что вся файловая активность, которую он обрабатывает, застряла в кэшированной / песочнице версии файловой системы или чего-то еще.
Например:
- Я выбираю C: \ Temp \ hello.txt в приложении (шаг №1 выше)
- Затем я изменяю текстовый файлэто в блокноте, сохранить и выйти
- Затем я запускаю мое приложение для выполнения шагов # 3 и # 4
- Однако шаг № 3 утверждает, что файл не изменился. Это то, что заставляет меня думать, что приложение UWP просматривает кэшированный или набор из песочницы моей файловой системы?Или здесь происходит что-то еще странное?
- Кроме того, если я попытаюсь заставить приложение сделать zip-файл независимо от даты последнего изменения, при проверке папки zip-файл фактически не создается - снова этозаставляет меня задуматься, не застряло ли приложение в какой-то песочнице / кеше моей файловой системы, а не в самой файловой системе?
- (новинка). Еще одна интересная подсказка заключается в том, что если я открою окно проводника Windows в C: \ TempЯ вижу мой файл hello.txt сам по себе.Если я открою openFileDialog () в приложении UWP для C: \ Temp, я увижу мой файл hello.txt и созданный им файл hello.zip.Так что оба окна используют C: \ Temp, но они показывают разные файлы !?
Другие примечания:
- Приложение UWP создается с помощью моста на рабочем столе (makeappx.exe)
- Мой AppManifest.xml имеет соответствующий broadFileSystemAccess иОбъявлены возможности runFullTrust.
- Я установил приложение для разрешения доступа к файловой системе в диалоговом окне «Параметры конфиденциальности файловой системы» в Windows 10.
- Приложение отлично работает при работе в качестве класса *.exe (не UWP / Appx)