簡體   English   中英

UWP 訪問被拒絕

[英]UWP access denied

基本上,我很難讓我的 UWP 應用程序打開文本文件。 我已將應用程序權限設置為能夠訪問“我的文檔”中的文件和“我的圖片”等已知庫的其他選項,但任何嘗試打開不在這些位置的文件都會遇到“拒絕訪問”錯誤。 通過瀏覽互聯網,我知道這是一個已知問題,並已被問過幾次,但所有線程似乎都得出結論,如果不讓用戶通過文件選擇器訪問這些文件(由於沙盒),您根本無法訪問這些文件)。 例如,請參見下面的線程:

https://social.msdn.microsoft.com/Forums/en-US/2ab6e209-cad7-4254-a252-b8e752ea7d13/uwp-how-can-i-access-locally-stored-files-not-on-removable-存儲?論壇=WindowsIoT

我知道再次提出同樣的問題並希望得到不同的回應聽起來是徒勞的,但我知道這不可能是完整的答案。 我知道這一點是因為我已經從商店下載了其他記事本應用程序(例如現代記事本)並且它們允許這種行為沒有問題。 他們這是怎么做到的???

這幾個月來一直讓我發瘋,我真的希望有人能提供幫助

5個月后...

看來微軟現在已經添加了這個功能。 只需將“broadFileSystemAccess”功能添加到應用程序清單中,如下所述: https ://docs.microsoft.com/en-us/windows/uwp/files/file-access-permissions

請注意,這在某種程度上仍然需要用戶輸入(用戶必須在第一次運行應用程序時授予文件系統訪問權限),但不需要文件/文件夾選擇器 UI。

我還沒有真正嘗試過這個,但聽起來它應該可以完成這項工作。 我希望它可以幫助人們將來參考這篇文章。

是的,就像您已經知道的那樣,普通的 UWP 應用無法直接訪問一些不允許的路徑。 您需要一個代理來幫助您使用 FilePicker 訪問它。 我相信你可以找到很多關於這個的文章。

那么為什么你會在商店里看到一些看起來不同的記事本呢? 這是因為這些應用程序是使用DesktopBridge技術轉換的應用程序。 Desktopbridge 允許常見的桌面應用程序在 UWP 應用程序容器中工作並擁有更多權限。 雖然它有一些你需要注意的路徑問題,比如下面提到的博客: blog1blog2

首先,您需要將 BroadFileSystemAccess 放在 Package.XML 中

https://docs.microsoft.com/en-us/windows/uwp/files/file-access-permissions

<Package
  ...
  xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
  IgnorableNamespaces="uap mp rescap">
...
<Capabilities>
    <rescap:Capability Name="broadFileSystemAccess" />
</Capabilities>

然后您的應用程序將顯示在隱私> 文件系統下的訪問設置。 該設置默認不啟用,必須在開發過程中啟用。

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM