|
最近在办公室闲得无聊,想起原来有个客户用网络摄像头拍照的需求还没搞定.原来在网上找了很多实例,但是在Win7中使用时都很不稳定,在程序关闭后重开时,老是黑屏,必需重启电脑或者重选拔插摄像头,才能再次使用.不稳定的东西,自然是拿不出手.
没有办法,只好硬着头皮自己动手写了一个.为了在VB6和Access中通用.采用了Activex dll的形式.调用也非常简单.实际代码也就2行代码.为了避免dll组件在Win7等系统中注册失败,特做了免注册处理,使得WebCame.dll组件可以不注册而直接调用,方便了用户的使用.
(其中 DirectCOM.dll 免注册功能组件及技术由 Olaf Schmidt 提供,我在原基础上做了一些优化. 在此向Olaf表示十二万分的谢意,正因为他的无私奉献,才让我们免除了注册dll的烦恼.如果你有兴趣,可以去他的网站逛逛 : http://www.vbrichclient.com/#/en/About/ )
Option Explicit
Dim Came As Object ' New WebCamera.clsWebCamera
Dim Reg As New clsRegFreeDll
Private Sub Form_Load()
Set Came = Reg.GetRegFreeObject("WebCame", "clsWebCamera") '以免注册方式取得摄像头控制类
Came.OpenCamera Me.Hwnd, 800, 600 '打开摄像头,将视频加载到窗体上
End Sub
回到问题点:
图像现在成功加载到窗体,但是应该怎么将窗体上的图像保存为图片(最好是jpg格式的,希望能尽可能的提高图片的清晰度.已经尝试过网上列举的许多方法但是都没有成功取得满意的图片),由于本人技术有限,搞不定这个问题,请各位老师帮忙指导.
经过本人测试,附件的实例不会出现黑屏的情况.请其他网友也帮忙测试一下,看是否会出现黑屏,够不够稳定.如果发现有黑屏或者其他问题,请截图在后方回帖,以便调整代码.多谢.
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|