Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB6 Jäätyy Webcamia käsitellessä

tesmu [18.09.2010 18:08:37]

#

Eli käsittelen webcamia tälläisellä koodilla

Private Declare Function SendMessage Lib "USER32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long

Private Declare Function capCreateCaptureWindow Lib "avicap32.dll" Alias "capCreateCaptureWindowA" (ByVal lpszWindowName As String, ByVal dwStyle As Long, ByVal X As Long, ByVal Y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hwndParent As Long, ByVal nID As Long) As Long


Private mCapHwnd As Long

 Const CONNECT As Long = 1034

 Const DISCONNECT As Long = 1035

 Const GET_FRAME As Long = 1084

 Const COPY As Long = 1054

Private Sub Form_Load()
mCapHwnd = capCreateCaptureWindow("WebcamCapture", 0, 0, 0, 320, 240, radarcam.hwnd, 0)

DoEvents
SendMessage mCapHwnd, CONNECT, 0, 0
End Sub

Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
SendMessage mCapHwnd, DISCONNECT, 0, 0
End Sub

Private Sub Form_Terminate()
SendMessage mCapHwnd, DISCONNECT, 0, 0
End Sub

Private Sub Form_Unload(Cancel As Integer)
SendMessage mCapHwnd, DISCONNECT, 0, 0
End Sub

Private Sub refresRadar_Timer()

SendMessage mCapHwnd, GET_FRAME, 0, 0 'Get Current Frame

        SendMessage mCapHwnd, COPY, 0, 0 'Copy Current Frame to ClipBoard

        radarcam.Picture = Clipboard.GetData 'Put ClipBoard's Data to picOutput
End Sub

Ainakun painan VB6:sta stoppinäppäintä niin koko ohjelma jäätyy ja sammuu vain taskmanagerilla. Osaisiko joku sanoa mistä johtuu ja miten mahdollisesti saisi korjattua?

neau33 [18.09.2010 22:16:45]

#

Moi tesmu!

kokeile pysäyttää toi Timer jutska ennen tota DISCONNECT jutskaa...

tesmu [19.09.2010 18:22:47]

#

Ei auta, sama jumitus jää...

Ratkaisin tosin ongelman tekemällä OCX-kontrollin webcamia varten. Jollon jumitusta ei tule kun käytän OCX-kontrollia.

Tumppu [21.09.2010 16:50:41]

#

Mutta eihän kyseinen ongelma pitäisi haitat kuin kehittely vaiheessa. Itse muistan taistelleeni saman ongelman parissa muutama vuosi takaperin, mutta annoin asian olla, koska itse exe:ssä se ei tuntunut haittaavan mitenkään.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta