Non ho mai realizzato automazioni tramite la Windows Images Acquisition Library (wiaaut.dll); ho fatto stasera qualche esperimento e ho visto che creando questo oggetto (o in "early binding" impostando un riferimento nel vba, tramite Menu /Strumenti /Riferimenti, o in "late binding" tramite CreateObject) viene stabilito un contatto con dispositivi di I/O immagini. Stranamente il riconoscimento del device e' avvenuto con Scanner, uno smartphone android e una Canon PowerShot, ma non con la webcam integrata...
No combinato questo codice (lavora in late binding):
- Codice: Seleziona tutto
Sub Macro1()
'
Dim myWIA As Object
Dim myCD As Object, myDev, getPIC
Set myWIA = CreateObject("WIA.DeviceManager")
NumDev = myWIA.deviceinfos.Count 'vedi quanti dispositivi collegati
Set myCD = CreateObject("WIA.CommonDialog")
Set myDev = myCD.ShowSelectDevice 'Scegli il dispositivo
Set getPIC = myDev.ExecuteCommand(wiaCommandTakePicture) '!!
getPic.SaveFile ("C:\PROVA\pippoppa.jpg") '???
'
'
'2 vedi le immagini gia' aqcquisite:
Set myPic = myCD.ShowAcquireImage 'Anteprima immagini esistenti, o scan immagine
myPic.SaveFile ("C:\PROVA\pippoppe.jpg")
'
'
End Sub
Irrimediabilmente sulla Set getPIC mi ritrovavo con run time error "Non implementeto" oppure "Formato dell' Id non valido", qualsiasi device selezionassi, per cui non sono arrivato a collaudare la riga ???
Sono stato piu' fortunato con l' opzione "2 vedi le immagini gia' aqcquisite": con l' istruzione Set myPic si accede alla preview delle foto gia' scattate (ma dallo smartphone non ho visto niente..) o all' opzione Scan (ma tramite un' interfaccia di Epson scanner); in questo seconda modalita' ho potuto selezionare e salvare in C:\PROVA sia una immagine dalla PowerShot che una pagina scannerizzata al momento.
Una documentazione sull' argomento e' disponibile qui:
http://msdn.microsoft.com/en-us/library ... 85%29.aspx comprende numerosi esempi (che comunque non mi hanno portato oltre quanto sopra descritto, anche se immagino che ci si puo' cavare molto di piu').
Pubblica il codice che hai provato a usare, magari con 4 occhi facciamo un passo avanti.
Ciao