Windows 10 April更新似乎已更改了对照相机和麦克风等设备的访问权限,默认情况下将所有访问权限都限制为无。
https://privacy.microsoft.com/en-us/windows-10-camera-and-privacy
我正在使用Realsense 435相机,并希望在需要调整隐私设置时通知用户-例如“转到隐私设置。选择选项卡'相机',然后打开'允许应用程序访问您的相机'”。
是否有API可以检测相机隐私设置的当前状态?
答案 0 :(得分:2)
是否有API可以检测相机隐私设置的当前状态?
没有内置的API可让您检测相机隐私设置的状态。
但是,如果相机设置关闭,我们可以从另一只手考虑这个问题。初始化相机对象时,它将在代码中引发异常。
例如:Camera Resolution Line86如果捕获到异常,则可以使用await Windows.System.Launcher.LaunchUriAsync(new Uri("ms-settings:privacy-webcam"));
public async Task InitializeCameraAsync()
{
MediaCapture = new MediaCapture();
MediaCapture.Failed += MediaCapture_Failed;
try
{
await MediaCapture.InitializeAsync();
_previewControl.Source = MediaCapture;
await MediaCapture.StartPreviewAsync();
IsPreviewing = true;
}
catch (UnauthorizedAccessException)
{
// This can happen if access to the camera has been revoked.
MainPage.Current.NotifyUser("The app was denied access to the camera", NotifyType.ErrorMessage);
await Windows.System.Launcher.LaunchUriAsync(new Uri("ms-settings:privacy-webcam"));
await CleanupCameraAsync();
}
}
答案 1 :(得分:1)
我一直在寻找相同的东西,除了麦克风,在更改设置并执行注册表差异后,我发现更改该设置会更改 Value
和 {{1} 之间的 Allow
}} 在
Deny
对于相机,
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\webcam\NonPackaged
用于麦克风。
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\microphone\NonPackaged
键用于桌面应用程序。您可以通过 NonPackaged
键切换(或查询)所有 UWP 访问权限,并通过其子键单独切换每个 UWP 应用。