共用方式為


啟動[預設應用程式設定] 頁面

瞭解如何啟動 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")));

啟動 Windows 設定應用程式

啟動 URI 的預設應用程式