Obtener Unidades Con vb-File system Drives
Hola a todos, siempre hemos querido hacer un control personalizado para guardar nuestros datos. Pues aqui te dejo un codigo que seguro que te gustará.
Para ello vamos a utilizar la clase My.computer.FileSystem.Drives que nos da informacion de nuestras unidades de disco que tenemos en este momento en nuestro sistema operativo.
Esta clase nos da mas informacion que la que normalmente vas a utilizar pero esta bien tenerla..
Como puede ser …
Espacio Libre, Espacio Utilizado, Espacio en Uso, El Nombre del Volumen, De donde parte la unidad(por si es una unidad de red) ,El tipo de unidad (Disco solido,USB(REMOVABLE), CD-ROM…)…
Te animo a que le heches un ojo
Aqui te dejo el video de como se hace y aun asi te dejo el codigo como siempre…
Aqui va el codigo
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
Imports System.IO Public Class Form1 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load CargarUnidades() End Sub Private Function CargarUnidades() Dim Dt As New DataTable Dt.Columns.Add("Unidad") Dt.Columns.Add("NVolumen") Dt.TableName = "Tabla" For Each DRV As DriveInfo In My.Computer.FileSystem.Drives Dim Dr As DataRow Dr = Dt.NewRow Dr("Unidad") = DRV.RootDirectory If DRV.IsReady Then Dr("NVolumen") = DRV.VolumeLabel Else Dr("NVolumen") = "" End If Dt.Rows.Add(Dr) Next Dt.AcceptChanges() Me.ComboBox1.DisplayMember = "Unidad" Me.ComboBox1.ValueMember = "Unidad" Me.ComboBox1.DataSource = Dt Me.Volumen.DataBindings.Clear() Me.Volumen.DataBindings.Add(New Binding("Text", Me.ComboBox1.DataSource, "Nvolumen")) End Function Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click CargarUnidades() End Sub Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged For Each DRV As DriveInfo In My.Computer.FileSystem.Drives If DRV.RootDirectory.ToString = Me.ComboBox1.SelectedValue.ToString Then If DRV.IsReady Then Me.Espacio.Text = DRV.TotalFreeSpace / 1024 / 1024 / 1024 & "GB(s) libres" Else Me.Espacio.Text = "" End If End If Next End Sub End Class |
Un saludo a todos