首頁 後端開發 C++ 通用 Windows 平台 (UWP) 應用程式如何存取 Windows 10 中的檔案和目錄?

通用 Windows 平台 (UWP) 應用程式如何存取 Windows 10 中的檔案和目錄?

Jan 09, 2025 pm 10:14 PM

How Can Universal Windows Platform (UWP) Apps Access Files and Directories in Windows 10?

在通用 Windows 平台 (UWP) 應用程式中導航檔案和目錄存取

傳統的 Windows 應用程式可以使用 Directory.Exists()Directory.GetFiles() 等函數輕鬆存取檔案和目錄。 然而,UWP 應用面臨更嚴格的安全限制,限制對更廣泛檔案系統的直接存取。

UWP 應用檔案系統限制和允許的存取

UWP 應用程式僅被授予對特定檔案和目錄的存取權限:

  • 清單聲明的位置: 應用程式清單中明確列出的資料夾(例如文件、圖片、影片)。
  • 使用者選擇的檔案/資料夾: 使用者透過 FileOpenPickerFolderPicker 選擇的項目。
  • 快取存取: 儲存在 FutureAccessListMostRecentlyUsedList 中的項目。
  • 檔案關聯與共用:透過檔案副檔名關聯或共用機制授予存取權限。

存取應用程式儲存以外的檔案

存取應用程式沙箱以外的目錄需要策略方法:

FutureAccessList (FAL):管理持久存取

FutureAccessList 允許應用程式請求繼續存取特定檔案或資料夾。 至關重要的是,使用者必須透過選擇選擇器中的目標檔案或資料夾來明確授予權限。 隨後即可存取已批准的目錄,而無需進一步提示。

FolderPicker:使用者驅動的選擇

FolderPicker 允許使用者精確定位目錄,授予應用程式存取該資料夾及其內容的權限。 然而,此方法每次應用程式需要存取所選資料夾時都需要使用者介入。

Windows 10 Build 17134 及更高版本中的增強存取

Windows 2018 年 4 月 10 日更新(內部版本 17134)引入了擴展的檔案系統存取:

  • AppExecutionAlias: 使用 AppExecutionAlias 的應用程式在從命令列啟動時可以存取其目前工作目錄及其子目錄中的檔案和資料夾。
  • broadFileSystemAccess 功能: 此功能支援使用使用者層級權限進行完整的檔案系統存取。 但是,它需要獲得 Microsoft 的明確批准,並在首次使用時顯示使用者同意提示。

選出正確的方法

存取外部目錄的最佳策略取決於您應用程式的特定需求。 FolderPicker 為選擇性文件存取提供使用者友善的體驗。 FutureAccessList 適合管理對特定目錄的持久存取。 對於全面的檔案系統存取(需要 Microsoft 批准和使用者同意),broadFileSystemAccess 功能是必要的。

以上是通用 Windows 平台 (UWP) 應用程式如何存取 Windows 10 中的檔案和目錄?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

c認識python的人的教程 c認識python的人的教程 Jul 01, 2025 am 01:11 AM

學Python的人轉學C 最直接的困惑是:為什麼不能像Python那樣寫?因為C 雖然語法更複雜,但提供了底層控制能力和性能優勢。 1.語法結構上,C 使用花括號{}而非縮進組織代碼塊,且變量類型必須顯式聲明;2.類型系統與內存管理方面,C 沒有自動垃圾回收機制,需手動管理內存並註意釋放資源,使用RAII技術可輔助資源管理;3.函數與類定義中,C 需要明確訪問修飾符、構造函數和析構函數,並支持如運算符重載等高級功能;4.標準庫方面,STL提供了強大的容器和算法,但需要適應泛型編程思想;5

C中的多態性:綜合指南 C中的多態性:綜合指南 Jun 21, 2025 am 12:11 AM

C 中的多態性分為運行時多態性和編譯時多態性。 1.運行時多態性通過虛函數實現,允許在運行時動態調用正確的方法。 2.編譯時多態性通過函數重載和模板實現,提供更高的性能和靈活性。

C驅動器:實用的代碼示例 C驅動器:實用的代碼示例 Jun 22, 2025 am 12:16 AM

c destructorSarespecialememberfunctionsthatautapityReleSoursoursoursoursoursoursoursOutgoesOutofScopeOrisdelet.1)shemarecrucialformanagingmemory,filehandles,andNetworkConnections.2)初學者

c標準模板庫(STL)的教程 c標準模板庫(STL)的教程 Jul 02, 2025 am 01:26 AM

STL(標準模板庫)是C 標準庫的重要組成部分,包含容器、迭代器和算法三大核心組件。 1.容器如vector、map、set用於存儲數據;2.迭代器用於訪問容器元素;3.算法如sort、find用於操作數據。選擇容器時,vector適合動態數組,list適合頻繁插入刪除,deque支持雙端快速操作,map/unordered_map用於鍵值對查找,set/unordered_set用於去重。使用算法時應包含頭文件,並配合迭代器和lambda表達式。注意避免失效迭代器、刪除時更新迭代器、不可修改m

C競爭性編程教程 C競爭性編程教程 Jul 02, 2025 am 12:54 AM

學C 衝著打比賽應從以下幾點入手:1.熟練基礎語法但不必深入,掌握變量定義、循環、條件判斷、函數等基本內容;2.重點掌握STL容器如vector、map、set、queue、stack的使用;3.學會快速輸入輸出技巧,如關閉同步流或使用scanf和printf;4.利用模板與宏簡化代碼書寫,提高效率;5.多刷題熟悉邊界條件、初始化錯誤等常見細節問題。

c帶有OpenGL的圖形編程教程 c帶有OpenGL的圖形編程教程 Jul 02, 2025 am 12:07 AM

作為C 程序員入門圖形編程,OpenGL是一個好的選擇。首先需搭建開發環境,使用GLFW或SDL創建窗口,配合GLEW或glad加載函數指針,並正確設置上下文版本如3.3 。其次理解OpenGL的狀態機模型,掌握繪製核心流程:創建編譯著色器、鏈接程序、上傳頂點數據(VBO)、配置屬性指針(VAO)並調用繪製函數。此外要熟悉調試技巧,檢查著色器編譯與程序鏈接狀態,啟用頂點屬性數組,設置清屏顏色等。推薦學習資源包括LearnOpenGL、OpenGLRedBook及YouTube教程系列。掌握上述

C中的標準模板庫(STL)是什麼? C中的標準模板庫(STL)是什麼? Jul 01, 2025 am 01:17 AM

C STL是一組通用模板類和函數,包含容器、算法、迭代器等核心組件。容器如vector、list、map、set用於存儲數據,vector支持隨機訪問,適合頻繁讀取;list插入刪除高效但訪問慢;map和set基於紅黑樹,自動排序適用於快速查找。算法如sort、find、copy、transform、accumulate封裝常用操作,作用於容器的迭代器範圍。迭代器作為連接容器與算法的橋樑,支持遍歷和訪問元素。其他組件包括函數對象、適配器、分配器,用於定制邏輯、改變行為及內存管理。 STL簡化了C

如何在C中使用CIN和COUT進行輸入/輸出? 如何在C中使用CIN和COUT進行輸入/輸出? Jul 02, 2025 am 01:10 AM

在C 中,cin和cout用於控制台輸入輸出。 1.使用cout讀取輸入,注意類型匹配問題,遇到空格停止;3.讀取含空格字符串時用getline(cin,str);4.混合使用cin和getline時需清理緩衝區殘留字符;5.輸入錯誤時需調用cin.clear()和cin.ignore()處理異常狀態。掌握這些要點可編寫穩定的控制台程序。

See all articles