Как получить доступ к локальному хранилищу приложения Metro в настольном приложении в Windows 8?

Есть ли API для этого в .Net? Как насчет Windows API? Если нет, кто-нибудь еще придумал какой-нибудь хакерский способ сделать это?

5

Решение

Поиск папки локального хранилища приложения в стиле Windows 8

http://blog.falafel.com/Blogs/paul-tidwell/2012/08/27/finding-the-local-storage-folder-of-a-windows-8-style-application

Путь к приложениям в стиле Windows 8 следующий:

C:\Users\{username}\AppData\Local\Packages\Microsoft.BingSports_8wekyb3d8bbwe

Существует новый Windows API, который использует внутренний и нераскрытый алгоритм для создания хэша издателя, который при добавлении к имени пакета становится фамилией. Фамилия выглядит как {packagename}_{publisherhash}

Если вам нужно другое настольное приложение или вам нужно поделиться этим между некоторыми наборами приложений, вы можете вызвать API через командлет PowerShell, например, так:

(Get-AppxPackage -AllUsers -Name  $name).PackageFamilyName

Запишите это в реестр и вуаля! Ваше приложение может использовать Environment.UserName и приведенный выше шаблон пути, чтобы легко найти ваше локальное хранилище appx.

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]