Condividi tramite


Avviare la pagina delle impostazioni della fotocamera

Windows definisce un set di URI che consentono alle app di avviare l'app Impostazioni di Windows e visualizzare una determinata pagina delle impostazioni. Questo articolo spiega come avviare l'app Impostazioni di Windows direttamente nella pagina delle impostazioni della fotocamera e, facoltativamente, passare direttamente alle impostazioni per una particolare fotocamera nel dispositivo. Per altre informazioni, vedere Avvia l'app Impostazioni di Windows.

URL delle impostazioni della fotocamera

A partire da Windows 11, Build 22000, l'URI ms-settings:camera avvia l'app Impostazioni di Windows e passa alla pagina delle impostazioni della fotocamera. Si noti che nelle versioni precedenti di Windows, lo stesso URI avvierà l'applicazione fotocamera predefinita. Oltre alla pagina delle impostazioni generali della fotocamera, è possibile aggiungere il parametro della stringa di query cameraId impostato sul nome del collegamento simbolico, in formato URI codificato, per accedere direttamente alla pagina delle impostazioni della fotocamera associata.

Nell'esempio seguente viene usata la classe DeviceInformation per recuperare il nome del collegamento simbolico per il primo dispositivo di acquisizione video nel computer corrente, se presente. Successivamente, viene utilizzato LaunchUriAsync per avviare l'app Impostazioni di Windows. L'URI ms-settings:camera specifica che deve essere visualizzata la pagina delle impostazioni della fotocamera. Il parametro facoltativo della stringa di query cameraId è impostato sul nome del collegamento simbolico per la fotocamera, preceduto da una chiamata a Url.EscapeDataString, per specificare che devono essere visualizzate le impostazioni per la fotocamera associata.

private async void bLaunchCameraSettings_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)));
    }
}