Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Rilevare Pen Drive
Forum - C# / VB.NET - Rilevare Pen Drive

Avatar
pinguino (Ex-Member)
Pro


Messaggi: 172
Iscritto: 26/12/2007

Segnala al moderatore
Postato alle 15:05
Venerdì, 24/10/2008
Ciao!


Mi serve sapere come posso in vb.net trovare tutte le unità a cui è collegata una pen-drive (ho cercato su google ma niente).

per esempio mettiamo che attacco una pen drive e la chiama G:, poi in vb.net come faccio a fare una "scansione" per sapere ke in G: è collegata una pen-drive?

:k:

PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 18:05
Venerdì, 24/10/2008
Mi ricordo di avere postato una discussione qui sull'argomento, prova a fare una ricerca.

PM Quote
Avatar
pinguino (Ex-Member)
Pro


Messaggi: 172
Iscritto: 26/12/2007

Segnala al moderatore
Postato alle 18:41
Venerdì, 24/10/2008
Ho provato, ma non da alcun risultato.

PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 16:20
Domenica, 26/10/2008
Beh allora, prova così. IO.DriveInfo.GetDrives() restituisce un array di DriveInfo, che rappresentano i drive disponibili. Ognuno di questi ha delle proprietà, tra cui DriveType e IsReady. La prima vale Removable se il drive è removibile (quindi usb) e la seconda è True se la periferica è pronta (quindi se esiste). Name restituisce il nome del drive.

PM Quote
Avatar
pinguino (Ex-Member)
Pro


Messaggi: 172
Iscritto: 26/12/2007

Segnala al moderatore
Postato alle 22:32
Martedì, 04/11/2008
Aspetta spiegati meglio, ho capito il concetto ma non ho capito come usarlo xD

PM Quote
Avatar
Thejuster (Admin)
Guru^2


Messaggi: 2305
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 13:46
Mercoledì, 05/11/2008
non c'è un modo d'uso il modo lo crei tu
quel sistema recupera solo i driver disponibili.
tipo come la pen driver

per lavorarci sopra basta accedere norlmente come fai con i file sul tuo computer

invece di c:\  metti l'unità rilevata da quel driver.

però non so come fare precisamente a sapere se quella e una pen driver o no.


https://mire.forumfree.it/ - Mire Engine
C# UI Designer
PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 16:41
Mercoledì, 05/11/2008
Testo quotato

Postato originariamente da Il Totem:

Beh allora, prova così. IO.DriveInfo.GetDrives() restituisce un array di DriveInfo, che rappresentano i drive disponibili. Ognuno di questi ha delle proprietà, tra cui DriveType e IsReady. La prima vale Removable se il drive è removibile (quindi usb) e la seconda è True se la periferica è pronta (quindi se esiste). Name restituisce il nome del drive.



Capire il concetto equivale a saperlo usare. Forse non l'hai capito bene :P

Dicevo, quindi, che la funzione Io.DriveInfo.GetDrives() restituisce un array di tutti i drives disponibili:
Codice sorgente - presumibilmente C# / VB.NET

  1. Dim Drives() As IO.DriveInfo = IO.DriveInfo.GetDrives()


Che ognuno di questi ha le proprietà DriveType e IsReady. Se la prima vale Removable, è un'unità rimovibile (usb):
Codice sorgente - presumibilmente VB.NET

  1. For Each D As IO.DriveInfo In Drives
  2.   If D.DriveType = DriveType.Removable Then
  3.   End If
  4. Next


E se IsReady è True, l'unità esiste ed è funzionante:
Codice sorgente - presumibilmente VB.NET

  1. For Each D As IO.DriveInfo In Drives
  2.   If D.DriveType = DriveType.Removable And
  3.      D.IsReady = True Then
  4.   End If
  5. Next


PM Quote
Avatar
pinguino (Ex-Member)
Pro


Messaggi: 172
Iscritto: 26/12/2007

Segnala al moderatore
Postato alle 17:17
Mercoledì, 05/11/2008
Allora è come avevo fatto cambia solo che ho messo:

Dim Drives = IO.DriveInfo.GetDrives()

invece di specificare il tipo :rotfl:

PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 16:38
Giovedì, 06/11/2008
Il tipo viene considerato Object, ma il contenuto è comunque un array di DriveInfo. Le due conseguenze del tuo codice sono il mancato suggerimento da parte di IntelliSense (che non fornisce nulla di importante per i tipi Object), e la minor velocità di elaborazione. Non era, comunque, formalmente sbagliato.

PM Quote