si ma questo ambaradam a che pro ?
Benvenuto nella nostra community, registra un account gratuito ADESSO!
Oltre 7000 persone hanno già registrato il loro account.
Chiedi aiuto, conversa con aziende ed esperti del settore webhosting italiano.
Iscriviti subito! In meno di 2 minuti!
si ma questo ambaradam a che pro ?
-
-_-' ma hai letto il post che ho scritto? l'avrò già ripetuto per lo meno tre volte -_-'
Io sono
http://www.phpsoft.it/system/files/shot-1.png
http://www.phpsoft.it/system/files/shot-2.png
ecco il risultato del lavoro di oggi
(ovviamente non si vede ma fa disabilitare, abilitare, stoppare, avviare ed espellere le periferiche nell'elenco)
devo solo fixare un bug causato dal refactoring che non gli fa più gestire i messaggi di notifica di cambio dei device
Ultima modifica di daniele_dll; 11-06-2007 alle 19:38
Io sono
a che pro il fatto che installi tutto con un click. Io se non li installo a mano i driver non mi sento sosddisfatto !
-
ecco, soffermiamoci un attimo su questo ... a me non si generano i messaggi DEVICE_ARRIVAL e DEVICE_REMOVE ... ma il solo messaggio DEVICE_CHANGE ... il tutto per far andare il driver Usb CDC nativo di winzoz per avere una seriale virtuale con cui controllare il mostro attualmente in cantiere ...
Ho sbattuto la testa in ogni dove ma nada ... non si generano tocca ri-enumerare ad ogni cambio e vedere se la mia periferica è presente o meno nel sistema e se non presente chiudere la connessione (se era aperta) sennò aprirla (se era chiusa) ...che palle ... se non fosse che ho bisogno dei trasferimenti bulk via usb col cavolo che usavo sto sistema mettevo HID e chi s'è visto s'è visto ...
Te che stai giocando con le SetupApi che mi sai dire ? (io però non uso solo le SetupApi ma creo una devicelist a partire dalla GUID e lì poi mi frega non generando i due comodissimi eventi...)
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
Non riesumerò mai più un post di Daniele
(dovrei sciverlo due milioni di volte, ma non voglio rubare troppi kb a luca...)
mmm, se prendi e intercetti il messaggio WM_DEVICECHANGE nella WndProc e verifichi che WPAram corrisponda a DBT_DEVICEARRIVAL o DBT_DEVICEREMOVECOMPLETE puoi verificare se viene messa o sganciata qualche periferica. Per leggere il tipo LParam lo devi gestire come una struttura del tipo DEV_BROADCAST_HDR, verificare se il nodo dbch_devicetype corrisponde a DBT_DEVTYP_XXXXXXXX che ti interessa (trovi l'elenco sotto), e poi gestire la struttura come DEV_BROADCAST_XXXXXXXX ovvero la struttura che contiene le informazioni collegate al tipo che ti interessa.Ho sbattuto la testa in ogni dove ma nada ... non si generano tocca ri-enumerare ad ogni cambio e vedere se la mia periferica è presente o meno nel sistema e se non presente chiudere la connessione (se era aperta) sennò aprirla (se era chiusa) ...che palle ... se non fosse che ho bisogno dei trasferimenti bulk via usb col cavolo che usavo sto sistema mettevo HID e chi s'è visto s'è visto ...
Te che stai giocando con le SetupApi che mi sai dire ? (io però non uso solo le SetupApi ma creo una devicelist a partire dalla GUID e lì poi mi frega non generando i due comodissimi eventi...)
Dai un occhio qua per il messaggio WM_DEVICECHANGE
http://msdn2.microsoft.com/en-us/library/aa363480.aspx
Informazioni sulla struttura DEV_BROADCAST_HDR
http://msdn2.microsoft.com/en-us/library/aa363246.aspx
Vari valori di wParam del messaggio WM_DEVICECHANGE:
http://msdn2.microsoft.com/en-us/library/aa363208.aspx (DBT_DEVICEREMOVALCOMPLETE)
http://msdn2.microsoft.com/en-US/library/aa363211.aspx (DBT_DEVNODES_CHANGED)
http://msdn2.microsoft.com/en-us/library/aa363206.aspx (DBT_DEVICEQUERYREMOVE)
http://msdn2.microsoft.com/en-us/library/aa363209.aspx (DBT_DEVICEREMOVEPENDING)
Inoltre per ricevere messaggi aggiuntivi, che sono quasi tutti quelli che ti ho postato sopra, devi usare RegisterDeviceNotification
http://msdn2.microsoft.com/en-US/library/aa363431.aspx
Comunque, a parte questo, l'albero delle periferiche te lo devi mantenere comunque perché non ti vien detto che succede tramite i messaggi ti vien detto solo che qualcosa è successo (tranne per quelli di avviso di rimozione che dovendo poter negare devi poter sapere cos'è che viene richiesto per la disconnessione)
Io sono
Mi fate paura...
i moderatori che vanno ot... siamo alla frutta
ban a tutti![]()
eh si, ci vorrebbe...
quanto vuoi ($) per bannare daniele?![]()
mi son permesso di andare OT perché stavamo su Off-Topic
comunque ora gli parlo via msn cosi effettivamente evitiamo di far troppa confusione![]()
Io sono
ecco, appunto... dammi il tuo indirizzo msn per favore
ciao
Ci sono attualmente 1 utenti che stanno visualizzando questa discussione. (0 utenti e 1 ospiti)
Segnalibri