4

我正在尝试编写我庞大的 C# 程序的一部分,该程序允许我从笔记本电脑中的集成摄像头捕捉一张照片。我已经完成了我的研究,我注意到通过 WIA 和 DirectShow 有两种方法可以做到这一点。我正在尝试更简单的一个:WIA。我正在运行 VS 2010 .Net 4.0 的 Windows 7 32 位机器上工作。我正在尝试运行我在网上找到的以下示例,这正是我想要的,并且遇到了几个错误。

http://www.c-sharpcorner.com/uploadfile/yougerthen/610262008064756am/6.aspx

我添加了必要的参考


using System.Windows.Forms;
using Microsoft.Win32;
using WIA;

大多数错误如下所示:无法嵌入互操作类型“WIA.CommonDialogClass”。请改用适用的接口。无法嵌入互操作类型“WIA.CommandID”。请改用适用的接口。

提供的任何帮助都将非常有用。

4

2 回答 2

2

我找到了一个无需通过 DirectShow 即可满足我需求的解决方案。它是使用 avicap32.dll 库完成的。那些想要实现与我类似的东西的人。可以看看这个链接http://www.timvw.be/wp-content/code/csharp/testavicap32.zip。只需用 VS 2010 编译它,它就可以工作。只需学习、理解和调整示例以适应您的需求。

于 2011-02-19T03:37:17.100 回答
1

试试这个:

WIA.CommonDialog wiaDiag = new WIA.CommonDialog();

允许使用 new 运算符创建 COM 接口。您需要在命名空间名称前加上前缀,因为 CommonDialog 与 Winforms CommonDialog 类不明确。

于 2011-02-18T02:33:26.407 回答