Compartilhar via


Iniciar a página de configurações da câmera

O Windows define um conjunto de URIs que permitem que os aplicativos iniciem o aplicativo Configurações do Windows e exibam uma página de configurações específica. Este artigo explica como iniciar o aplicativo Configurações do Windows diretamente na página de configurações da câmera e, opcionalmente, navegar diretamente para as configurações de uma câmera específica no dispositivo. Para obter mais informações, consulte Iniciar o aplicativo Configurações do Windows.

O URL de configurações da câmera

A partir do Windows 11, Build 22000, o URI ms-settings:camera inicia o aplicativo Configurações do Windows e navega até a página de configurações da câmera. Observe que, nas versões anteriores do Windows, esse mesmo URI iniciava o aplicativo de câmera padrão. Além da página de configurações gerais da câmera, você pode acrescentar o parâmetro cameraId de cadeia de caracteres de consulta definido ao nome do link simbólico, no formato de URI de escape, para iniciar diretamente na página de configurações da câmera associada.

No exemplo a seguir, a classe DeviceInformation é usada para recuperar o nome do link simbólico para o primeiro dispositivo de captura de vídeo no computador atual, se houver. Em seguida, LaunchUriAsync é chamado para iniciar o aplicativo Configurações do Windows. O ms-settings:camera Uri especifica que a página de configurações da câmera deve ser mostrada. O parâmetro cameraId de cadeia de caracteres de consulta opcional é definido como o nome do link simbólico da câmera, escapado com uma chamada para Url.EscapeDataString, para especificar que as configurações da câmera associada devem ser mostradas.

private async void LaunchSettingsPage_Click(object sender, RoutedEventArgs e)
{
    var captureDevices = await DeviceInformation.FindAllAsync(DeviceClass.VideoCapture);
    if (captureDevices.Count() > 0)
    {
        var cameraSymbolicLink = captureDevices.First().Id;
        bool result = await Windows.System.Launcher.LaunchUriAsync(new Uri("ms-settings:camera?cameraId=" + Uri.EscapeDataString(cameraSymbolicLink)));
    }

}