在 UWP 应用程序中访问网络摄像头被拒绝

Access being denied to webcam in a UWP app

我试图在我的 Windows 10 笔记本电脑上使用 VS 2017、15.5.3 按照教程 https://developer.microsoft.com/en-us/windows/iot/samples/webcamapp using code at https://github.com/ms-iot/samples/tree/develop/WebcamApp/CS 创建一个简单的 UWP 应用程序来访问我的网络摄像头。 x64 和 x86 版本都给我相同的访问被拒绝错误,即

Exception thrown: 'System.UnauthorizedAccessException' in System.Private.CoreLib.ni.dll 
WinRT information: Access is denied.

第 202 行 MainPage.xaml.cs 于 await mediaCapture.InitializeAsync();

在抛出异常之前,应用程序确实会请求用户允许它使用相机,但即使单击“是”也没有什么不同。

我的相机驱动程序是 100% 最新的,其他 UWP 应用程序可以像以前一样正常访问相机 。我研究了其他关于 UWP 应用程序的文件 IO 访问问题的问题,但无法将它们用作解决网络摄像头访问问题的线索。

任何帮助将不胜感激。谢谢。

您必须在 App Manifest 中设置 MicrophoneWebcam 功能。

  • 在解决方案资源管理器中,双击 package.appxmanifest

  • Select 功能选项卡。

  • 选中网络摄像头复选框和麦克风复选框。

更新

您 运行 是 Windows 10 的稳定版本吗?请尝试从您的设备上卸载该应用程序,然后从项目文件夹中删除 binobj 文件夹,以确保没有残留物。最后,如果没有改变结果,请尝试在没有调试器的情况下打开应用程序(例如从“开始”菜单)

我被这个问题困扰了几个小时,后来发现它只发生在我的调试版本中,而不是发布版本中。结果发现有一个单独的调试清单文件,名为 Debug.appxmanifest,与使用的 Package.appxmanifest 相反发布版本。