我有一些使用Directshow.Net库的代码(Winforms,C#,。Net 4)。我现在遇到了两次问题,其中一个设备有一个"摄像头"但它并没有作为成像设备出现在设备管理器中,而是出现在其他设备上。当发生这种情况时,DirectShow.Net要么不识别它,要么认识到它足以使用它,但是如果我尝试捕获视频它就会爆炸。这最近发生在运行Windows 10的Microsoft Surface Pro 4上。任何人都对此有任何想法?为什么会发生这种情况或如何绕过它?硬件界面不是我的专长,这是我唯一一个处理直接硬件界面的产品代码。
答案可以是VB或C#(或任何其他语言)。
由于
编辑: 我相信错误发生在这行代码中(来自DirectShow.Net库),进一步调用完整函数:
<root>
<SalesForecast>
<Node2>inner text</Node2>
<EntryNumber />
</SalesForecast>
</root>
我无法确定这一点,因为我无法在拥有网络摄像头并非实际上是网络摄像头的设备上进行开发
返回的错误是
hr = m_VidControl.SetMode(m_pinStill, VideoControlFlags.Trigger);
全功能代码:
System.Runtime.InteropServices.COMException (0x80070032): The request is not supported.
at DirectShowLib.DsError.ThrowExceptionForHR(Int32 hr)
答案 0 :(得分:0)
原来问题实际上是在我的代码的不同部分。我在DirectShow.Net页面上使用了一个连接到网络摄像头的示例,它正在寻找凸轮上的静止引脚。没有任何一个凸轮我报告了一个功能正常的静止引脚,所以我评论说出来了。然后他们会继续使用发球台做任何事情。这些摄像头正在报告静止和预览引脚,我没有正确设置。我刚刚取下了针脚,并使用了发球台。