Для приложения Windows Store: как я могу определить, было ли переименовано или удалено StorageFile
вне моего приложения, пока оно открыто в моем приложении?Как определить, было ли StorageFile переименовано или удалено в приложении UWP?
У меня есть приложение Windows 10 UWP, работающее на рабочем столе. Приложение позволяет пользователю открывать и редактировать документы.
Что я пробовал:
- Проверка DateModified:
- Я попытался проверить
storageFile.GetBasicPropertiesAsync().DateModified
, но даже я удалить файл и очистить корзину, вызов возвращается успешно с (старый)DateModified
. (Я предполагаю, что он использует версию в памяти и не проверяет файл на диске)
- Я попытался проверить
- Снова откройте StorageFile:
- Затем я попытался «вновь открыть», используя файл
StorageFile.GetFileFromPathAsync(file.Path)
. Это правильно бросилоFileNotFoundException
в первый раз. - Однако позже это не удалось с исключением
Unauthorized access/permission denied
. Это имеет смысл, потому что мне нужен пользователь, чтобы выбрать файл в FileOpenPicker, чтобы мое приложение получило разрешение на его использование.
- Затем я попытался «вновь открыть», используя файл
- Монитор родительской папки:
- Не уедет с этим. Я пытался использовать
StorageFolder.CreateFileQuery()
, но я не могу получить доступ к родительской папке образует экземпляр StorageFile (опять же, это имеет смысл, потому что мое приложение не имеет разрешения на доступ к родительской папке)
- Не уедет с этим. Я пытался использовать