台灣最大程式設計社群網站
線上人數
710
 
會員總數:244663
討論主題:188766
歡迎您免費加入會員
討論區列表 >> VB6 >> 關於同時兩個以上webcam的存圖片方式,timer設太快會導致程式錯誤,求救
[]  
[我要回覆]
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
關於同時兩個以上webcam的存圖片方式,timer設太快會導致程式錯誤,求救
價值 : 20 QP  點閱數:3146 回應數:0

樓主

全也
門外漢
0 1
40 0
發送站內信

請教各位大大:

目前小弟正在研究多個webcam的影像顯示 並設好 timer 把每個webcam的 影像 存成圖片檔.......

小弟使用的是 DirectX.capture.dll 來幫忙

目前在一個VB程式裡面同時顯示兩個webcam影像都可以
也可以讓兩個 picturebox 上 都定時以webcam畫面為主更新圖片

現在就只差在 利用 timer的呼叫 來定時 將 picturebox上的圖片存成 如png檔之類的

以下是 小弟的程式碼:

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick

CaptureInformation.CaptureInfo.CaptureFrame()
Me.PictureBox1.Image.Save("test1.png", System.Drawing.Imaging.ImageFormat.Png)

End Sub


當 timer的 interval 設在 1000 毫秒時 還OK 500以下就會出現程式錯誤 如果再加上


CaptureInformation2.CaptureInfo.CaptureFrame()
Me.PictureBox2.Image.Save("test2.png", System.Drawing.Imaging.ImageFormat.Png)

就連1000 毫秒 也會出現錯誤 (換成兩個timer也是一樣)


以下是錯誤訊息:
System.NullReferenceException: 並未將物件參考設定為物件的執行個體
at System.Drawing.SafeNativeMethods.GdipSaveImageToFile(HandleRef image, String filename, Guid& classId, HandleRef encoderParams)
at System.Drawing.Image.Save(String filename, ImageCodecInfo encoder, EncoderParameters encoderParams)
at System.Drawing.Image.Save(String filename, ImageFormat format)
at test2.Form1.Timer1_Tick(Object sender, EventArgs e) in H:\WEBCAM測試\test2\Backup\Form1.vb:line 246
at System.Windows.Forms.Timer.OnTick(EventArgs e)
at System.Windows.Forms.Timer.Callback(IntPtr hWnd, Int32 msg, IntPtr idEvent, IntPtr dwTime)



如果有大大知道 如何在1-2秒之內同時(或是相讓一個圖片存完 再存另一個圖片的方法) 或是知道以上如何解決 請告知小弟


這份程式 是打算 利用在 監視居家系統的研究 並且透過網頁更新圖片的方式(因為有多個webcam) 來瀏覽家中的情況...

如果大大們對此有心得 或是 有經驗的話請指點一二 謝謝大家...

本篇文章發表於2007-08-06 20:00
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
目前尚無任何回覆
   

回覆
如要回應,請先登入.