回答

1

我找到了我的答案。我可以告訴用戶在文件夾選擇器中選擇他們的用戶文件夾。然後,一旦我獲得了該權限,就可以編程地導航到應用程序數據文件夾中所需的文件。

1

這從windows store應用程序是不可能的,它們是沙盒,需要聲明訪問互聯網,相機和類似功能,而且你不能聲明你想要讀取其他應用程序數據。

+0

是否有可能使用文件夾選取器或類似的東西? – Garrett

+0

不可能通過文件/文件夾選取器。但我記得它可以使用本地代碼繞過winrt,但然後這樣的應用程序不會通過Windows 8兼容性測試,同時提交到App Store – Tilak

+0

已更新鏈接黑客我的回答 – Tilak

5

不可能使用winrt API。它就像每個進程的IsolatedStorage。

File access and permissions in Windows Store apps

但使用哈克就可以繞過沙盒環境。而提交到App Store的

How to bypass WinRT/Metro sandbox using simple trick.Sample + Guide

但這樣的應用程序將無法通過Windows 8的兼容性測試。

+0

這是我在我的帖子中鏈接到的文章。我相信這可能是使用文件夾選擇器或類似的東西。這可以工作嗎? – Garrett

+0

用黑客更新了答案 – Tilak

+0

感謝您的建議,但我的意圖是通過Windows應用商店分發,因此這不是一個有利的選擇。 – Garrett

1

如果您不知道如何使用.net for Windows 8 stor是不可能的。

有了這個,你得到保存位置:

using Windows.Storage; 
StorageFolder localFolder = ApplicationData.Current.LocalFolder; 

而與此您可以通過應用程序的URI中檢索數據:

using Windows.Storage; 
StorageFile file = await StorageFile.GetFileFromApplicationUriAsync("ms-appdata:///local/file.txt"); 

來源: http://msdn.microsoft.com/en-us/library/windows/apps/xaml/hh967755.aspx?cs-save-lang=1&cs-lang=csharp#locations_all_apps_can_access

+0

這隻會讓我訪問我的應用程序的應用程序數據,但我試圖訪問另一個程序的應用程序數據 – Garrett

+0

抱歉發送垃圾郵件:( – 2012-12-29 17:21:02

0

這個答案取決於其它應用程序和您嘗試訪問的文件類型,但也許您可以實施對共享合同的支持並告訴Windows有哪些類型你願意接受的文件。然後用戶可以使用其他應用程序並與您的應用程序共享(如果他們選擇)。我不確定這對您的需求會有多大的可行性,但是您不會提供更多關於您想要獲取的數據的詳細信息。

相關問題