Как очистить изолированное хранилище другого приложения? - PullRequest
3 голосов
/ 05 июня 2009

Приложение1 использует Блок приложения кэширования Microsoft Enterprise Library с IsolatedStorageBackingStore для кэширования данных из базы данных, доступ к которой осуществляется через Интернет. Задача состоит в том, чтобы создать еще одно приложение 2 (вспомогательное приложение, например «деинсталлятор Adobe Flash Player»), которое сможет очистить кэш приложения 1 (это будет одной из многих функций приложения 2).

Вопрос в том, как Приложение2 может получить путь к папке кэширования для Приложения1 (чтобы очистить его)?

Путь будет что-то вроде "<System Drive>\Documents and Settings\<User>\Local Settings\Application Data\IsolatedStorage\tqli5mdv.xa5\htccao3l.ksb\StrongName.1r3fiexsbrusebdd0maaohl2i5cz4lhq\StrongName.mwjgo5cc1qomwe5tbepbfnyucq0obm3f\Files\<BackingStore PartitionName>"?

Жаль, но у пользователя есть несколько приложений с одинаковым <BackingStore PartitionName>, и это нельзя изменить, поэтому Application2 не может найти этот путь по строке <BackingStore PartitionName> (конечно, будет несколько папок - одна для каждое приложение - и я не знаю, как Application2 может выбрать, какая папка принадлежит Application1). Меня много гуглили, но безрезультатно. Пожалуйста, помогите.

1 Ответ

0 голосов
/ 05 июня 2009

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

...