[ Jope@Hr @ 01.11.2004. 21:47 ] @
| Zanima me kad imam vise web kamera na jednom usb hub-u, mogu li (i kako) saznati pojedinacna imena tih kamera preko vb koda. npr. "Veo webcam", "Logitech webcam",... Ovaj kod mi je potreban za softver za nadzor. |
[ mladenovicz @ 04.11.2004. 16:18 ] @
Mozda ovo pomogne. Pogledaj VBEnumCapDrivers funkciju.
http://www.shrinkwrapvb.com/vcap_src.zip
[ Jope@Hr @ 04.11.2004. 17:32 ] @
Nisi me razumio, treba mi poseban api da dobijem samo ime sourcea
[ mladenovicz @ 04.11.2004. 18:22 ] @
Pa napisah ti, pogledaj VBEnumCapDrivers funkciju u ovom kodu.
[ Jope@Hr @ 04.11.2004. 22:11 ] @
Ej stvarno izvini na sve moguce nacine ali ja to ne mogu dobit. Nasao sam funkciju EnumCapDrivers- (ili sto je vec) i opet ne mogu dobit ime kamere. Posto sam nov u ovim vodama, a ti mi djelujes iskusniji u ovim stvarima mozes li, molim te napisati jednostavni program tipa> -----Print CapturingSourceName--------- ili nesto slicno? Rekao si da to mogu dobit preko gornje funkcije pa to nebi trebalo bit problem(ja sam izuzetak).
[ mladenovicz @ 05.11.2004. 09:58 ] @
Pokreni aplikaciju na koju si dobio link (btw, imas je i u attachmentu uz poruku). U options meniju treba da ti se pojavi lista svih devicea koje mozes da koristis za Capture. Aplikacija sluzi da ti prikaze listu svih raspolozivih devicea, da odaberes koji hoces i da radis capture sa selektovanim deviceom.
[ Jope@Hr @ 05.11.2004. 11:51 ] @
Vec mi postaje neugodno. Da bude lakse neke stvari cu istaknuti.
Pa reko sam ti da bez PO FRKE mogu dobiti dijalog sa SVIM podatcima o sourceu (isto kao vbenumcapdrivers).
Ali meni treba funkcija koja ce ispisati SAMO ime sourcea! Primjeri su u pocetnom pitanju.
Isto sam ti tako rekao da se dizajn aplikacije NE SLAZE sa windowsima pa navedeni dijalog NE DOLAZI u obzir.
Jope
[ mladenovicz @ 05.11.2004. 12:38 ] @
Je l' dobijas sa capGetDriverDescriptionA ono sto ti treba ili ne?
[ Jope@Hr @ 06.11.2004. 08:34 ] @
Po imenu mislim da je. Jel mi mozes napisat kako ga iskoristiti?
[ mladenovicz @ 06.11.2004. 11:25 ] @
Znaci vracamo se na pocetak. Aplikacija na koju imas link u funkciji VBEnumCapDrivers koristi capGetDriverDescriptionA metod.
[ Jope@Hr @ 06.11.2004. 14:08 ] @
Daj pliz!!! Samo je deklarirana u modulu. Nigdje se u programu zapravo ne koristi. Upisi pod |find| vbEnumCapDriversA i neces ga nigdje nac (osim u modulu, deklaraciji). Vidjet ces... Mene zanima kako je iskoristiti, posto primjera nema u programu! Na msdn-u sam bio 2 puta u zivotu, tako da nema svrhe da to trazim.
[ mladenovicz @ 06.11.2004. 14:14 ] @
u funkciji VBEnumCapDrivers se koristi capGetDriverDescription
Code:
Public Function VBEnumCapDrivers(ByRef frm As frmMain) As Long
'/*
' * Enumerate the potential capture drivers and add the list to the Options
' * menu. This function is only called once at startup.
' * Returns 0 if no drivers are available.
' */
Const MAXVIDDRIVERS As Long = 9
Const CAP_STRING_MAX As Long = 128
Dim numDrivers As Long
Dim driverStrings(0 To MAXVIDDRIVERS - 1) As String
Dim Index As Long
Dim Device As String
Dim Version As String
Dim menu As VB.menu
Device = String$(CAP_STRING_MAX, 0)
Version = String$(CAP_STRING_MAX, 0)
numDrivers = 0
For Index = 0 To (MAXVIDDRIVERS - 1) Step 1
If 0 <> capGetDriverDescription(Index, _
Device, _
CAP_STRING_MAX, _
Version, _
CAP_STRING_MAX) _
Then
'extend the menu
If Index > 0 Then
Load frm.mnuDriver(Index)
End If
Set menu = frm.mnuDriver(Index) 'get an object pointer to the new menu
'Concatenate the device name and version strings to the new menu item
menu.Caption = left$(Device, InStr(Device, vbNullChar) - 1)
menu.Caption = menu.Caption & " "
menu.Caption = menu.Caption & left$(Version, InStr(Version, vbNullChar) - 1)
menu.Enabled = True
numDrivers = numDrivers + 1
End If
Next
VBEnumCapDrivers = numDrivers
End Function
[ Jope@Hr @ 06.11.2004. 14:49 ] @
Svejedno ne mogu dobit ime kamere. Jedino driver (microsoft wdm)
[ mladenovicz @ 06.11.2004. 15:43 ] @
E onda ces morati nesto drugo da koristis za ovo. Verovatno sa WMI moze da se dobije informacija koja ti treba, potrazi na netu
[ mladenovicz @ 06.11.2004. 16:19 ] @
Probaj ovo
Code:
Public Function EnumUSBDevices(Optional strServer As String = ".")
Dim objsUSB
Dim objUSB
Set objsUSB = GetObject("winmgmts://" & strServer). _
ExecQuery("SELECT * FROM Win32_USBHub")
For Each objUSB In objsUSB
Debug.Print objUSB.Name, objUSB.Description, objUSB.DeviceID
Next objUSB
Set objsUSB = Nothing
End Function
[ Jope@Hr @ 06.11.2004. 20:31 ] @
Gle sto mi se javlja>
USB Root Hub USB Root Hub USB\ROOT_HUB\4&845673&0
|name| |description| |deviceID|
Jel mogu iz ovog dobit bas ime?
[ mladenovicz @ 06.11.2004. 21:09 ] @
ja dobijam sve USB uredjaje na svojoj masini
Code:
USB Root Hub USB Root Hub USB\ROOT_HUB\4&182EC3C&0
USB Root Hub USB Root Hub USB\ROOT_HUB\4&E147424&0
USB Mass Storage Device USB Mass Storage Device USB\VID_0C76&PID_0005\5&C2A9964&0&2
Aladdin USB Key Aladdin USB Key USB\VID_0529&PID_0001\5&C2A9964&0&1
USB Root Hub USB Root Hub USB\ROOT_HUB\4&1611BE1&0
USB Root Hub USB Root Hub USB\ROOT_HUB\4&169BB4E2&0
USB Root Hub USB Root Hub USB\ROOT_HUB20\4&3583CF18&1
[ Jope@Hr @ 06.11.2004. 22:17 ] @
Pa i ja ih dobijem u takvim zapisima, reko sam ti. Ali meni treba ime uredjaja.
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|