啟動[預設應用程式設定] 頁面
瞭解如何啟動 Windows 設定應用程式,以使用 ms-settings URI 配置,從您的應用程式顯示 [默認應用程式設定] 頁面。
Windows 定義一組 URI,允許應用程式啟動 Windows 設定應用程式並顯示特定設定頁面。 本文說明如何將 Windows 設定應用程式直接啟動至 [預設應用程式設定] 頁面,並選擇性地直接流覽至指定之預設應用程式的設定。 如需詳細資訊,請參閱 啟動 Windows 設定應用程式。
默認應用程式設定URL
ms-settings:defaultapps
會啟動 Windows 設定應用程式,並流覽至 [預設應用程式設定] 頁面。 從 Windows 11 版本 21H2(含 2023-04 累積更新)、22H2(含 2023-04 累積更新)和 23H2 或更新版本開始,您可以附加逸出 URI 格式的其他查詢字元串參數,直接啟動特定應用程式的設定頁面。
有三個查詢字串參數。 要使用的查詢字串參數取決於應用程式的安裝方式。
查詢字串參數 | 要傳遞的值 |
---|---|
registeredAppUser | 來自 HKEY_CURRENT_USER\Software\RegisteredApplications 的具名值 當應用程式是以每位使用者安裝的方式進行,且應用程式的註冊資訊被寫入至 HKEY_CURRENT_USER\Software\RegisteredApplications時使用。 |
註冊應用程式機器 | 來自 HKEY_LOCAL_MACHINE\Software\RegisteredApplications 的具名值 當應用程式以每台機器安裝,並將註冊資訊寫入至 HKEY_LOCAL_MACHINE\Software\RegisteredApplications時使用。 |
registeredAUMID | 應用程式使用者模型標識碼 當應用程式以宣告處理檔案類型(uap:FileTypeAssociation)或 URI 協議(uap:Protocol)的清單向套件管理員註冊時,請使用此功能。 |
注意
若要讓已註冊的AUMID 查詢字串參數在OS升級之後運作,應用程式可能需要遞增其 TargetDeviceFamily...MaxVersionTested 值在其指令清單中。 這可確保應用程式為使用者重新建立索引,進而更新用來透過通訊協定啟用處理深層鏈接的相關定義。 MaxVersionTested 應更新為 10.0.22000.1817
用於 Windows 11 版本 21H2,或 10.0.22621.1555
用於 Windows 11 版本 22H2。
在下列範例中,會呼叫 LaunchUriAsync
來啟動 Windows 設定應用程式。
ms-settings:defaultapps
URI 會指定應該顯示 [預設應用程式設定] 頁面。 接下來,決定應該啟動的應用程式。 例如,應用程式在 HKEY_LOCAL_MACHINE\Software\RegisteredApplications中註冊了「Microsoft Edge」。 因為它是每部計算機安裝的應用程式,所以 registeredAppMachine
是應該使用的查詢字串參數。 選擇性的查詢字串參數 registeredAppMachine
會設定為已註冊的名稱,並經過 Url.EscapeDataString
的呼叫進行跳脫,以指定應該顯示 Microsoft Edge 的頁面。
private async void LaunchSettingsPage_Click(object sender, RoutedEventArgs e)
{
bool result = await Windows.System.Launcher.LaunchUriAsync(new Uri("ms-settings:defaultapps?registeredAppMachine=" + Uri.EscapeDataString("Microsoft Edge")));
}
bool result = co_await Windows::System::Launcher::LaunchUriAsync(Windows::Foundation::Uri(L"ms-settings:defaultapps?registeredAppMachine=" + Uri::EscapeDataString(L"Microsoft Edge")));