2012-11-10 40 views
5

我想通過Win8商店應用程序中的URL打開文件。 以下是代碼。構建包後通過Win8商店應用程序中的URL打開文件

var uri = new Uri(uriToLaunch); 
var options = new Windows.System.LauncherOptions(); 
options.TreatAsUntrusted = false; 
var success = await Windows.System.Launcher.LaunchUriAsync(uri, options); 

實際上,代碼在調試模式下運行良好。並以這種方式打開文件。

問題是,當我構建包並通過包重新安裝它時,文件將無法打開。我追蹤了成功的價值,並且它返回了錯誤。 當我嘗試在本地打開一個文件時會發生同樣的事情,它可以從調試模式打開,但在構建到包後失敗。

任何人都有解決它的經驗嗎?

+0

該代碼在Visual Studio中運行良好,包括調試模式和發佈模式。但是,當我卸載應用程序並通過包重新安裝它時,該文件將不會打開。我嘗試過不同的uri,包括來自局域網的文件,來自本地的文件和來自網絡的圖像。所有這些都可以在VS中完成,但是沒有一個可以通過軟件包安裝的應用程序打開。其他功能非常好,包括主頁面和拼貼。 – Nosen

+0

我想我有同樣的問題。似乎可以解決這個問題的唯一方法是添加一個啓動代碼的UI交互(顯示消息對話框,或者有一個按鈕)。 – kamranicus

回答

1

在Windows應用商店應用中限制直接文件/文件夾訪問。它是一個沙盒執行環境。有可用於創建和訪問文件的指定文件夾。對於其他任何你需要最終用戶的干預。

看看類:StorageFolder :: GetFileAsync,StorageFile :: OpenAsync和DataReader :: LoadAsync。

相關問題