
在网上也搜索过好多的资料,基本上都是在WinForm实现的摄像头调用,在页面中调用的基本没看见过。
思路:在页面中调用ActiveX控件,实现WebCamera(你懂的)。
下面具体步骤,写的有点太详细(有 点过分了,不要喷我

一、制作 ActiveX 控件
第一步,用VS2010创建一个项目,Windows窗体控件库,并命名为WebCamera。
更改“项目属性-应用程序-程序集信息”设置,勾选“使程序集 COM 可见”:
更改“项目属性-生成”设置,勾选“为 COM Interop 注册”(注意,此处如果实在debug状态下修改的,那在调到release状态下还需要再设置一次):
第二步,修改AssemblyInfo.cs文件,添加[assembly: AllowPartiallyTrustedCallers()]项(需要引用System.Security名称空间):
第三步,添加用户控件Camera,并设计界面,放上一个panel用来显示摄像头画面。
第四步,为了让ActiveX控件获得客户端的信任,控件类还需要实现一个名为“IObjectSafety”的接口。先创建该接口(注意,不能修改该接口的GUID值):
第四步,为控件类添加GUID,这个编号将用于B/S系统的客户端调用时使用(可以使用 工具-创建GUID 菜单创建一个GUID):
第五步,在控件类中继承并实现该接口:
第六步,添加视频控制类PCCamera.cs (该类主要功能是负责控制摄像头)。

这样,视频ActiveX控件就开发完成了。
第七步, 使用Visual Studio 2010的安装项目进行部署。这与普通的Windows Form应用程序的部署几乎一样,只有一个地方需要注意,将前面创建的用户控件项目作为主输出项目,并设置其Register属性为vsdrpCOM,如下图所示:


将项目生成,在路径下找到Release目录,下面有两个文件,这就是下面我们将要使用的控件。

二、页面中调用控件,实现 WebCamera
第一步, 将我们做的视频控件进行安装。
第二步, 在页面中添加object标签对 ,调用我们的视频控件,即实现了我们想要的WebCamera。

效果:破摄像头不好,把我照那么难看

