Visual Basic - Asignar variable a letra de unidad

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil
Val: 14
Ha disminuido su posición en 4 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Asignar variable a letra de unidad

Publicado por Nigan (8 intervenciones) el 24/04/2020 13:15:20
Tengo un listado de los discos logicos de mi computadora en un checklistbox, como puedo asignar una variable para que cuando seleccione uno, se me abra en el explorador
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Andres Leonardo
Val: 3.117
Oro
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Asignar variable a letra de unidad

Publicado por Andres Leonardo (1798 intervenciones) el 24/04/2020 17:46:57
podrias ser mas explicito por que si tienes el check deberias tenerlo como una unidad podrias mostar lo qeu te carga

luego solo podrias abrirlo con un shell o con un directory explorer de propio vb
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 14
Ha disminuido su posición en 4 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Asignar variable a letra de unidad

Publicado por Nigan (8 intervenciones) el 24/04/2020 17:53:23
El listado se me genera automatico con todas las unidades, y lo tengo echo por la Shell, todo bien, ejecutando me todo por cada checked que hay marcado, pero tengo que asignar una variable a la dirección de la unidad , tipo de esta forma, unidadSeleccionada = system.io.getlocaldrive.name
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Andres Leonardo
Val: 3.117
Oro
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Asignar variable a letra de unidad

Publicado por Andres Leonardo (1798 intervenciones) el 24/04/2020 19:17:42
Lo que debes hacer es crear cada una de las rutas net use

1
net use z: \\192.168.0.6\Pruebas
y asi po cada una de las rutas que quieres crear lo haces con shell tambien.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 14
Ha disminuido su posición en 4 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Asignar variable a letra de unidad

Publicado por Nigan (8 intervenciones) el 24/04/2020 19:53:42
Adjunto mi código, disculpe mi ignorancia e insistencia pero esto me come la cabeza, gracias por ayudar

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
Public Class Form1
 
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        For Each i In System.IO.DriveInfo.GetDrives
            If i.IsReady = True Then
                Dim t As String = i.Name
                If i.VolumeLabel <> "" Then t &= "" & i.VolumeLabel & ""
                CheckedListBox1.Items.Add(t)
            End If
        Next
 
    End Sub
 
    Private Sub WhatIsChecked_Click(sender As Object, e As EventArgs) Handles WhatIsChecked.Click
        Dim indexChecked As Integer
        Dim itemChecked As Object
 
        For Each indexChecked In CheckedListBox1.CheckedIndices
            Shell("cmd.exe /c explorer :" & aquí iría variable con sireccion de la unidad, vbHide)
        Next
 
        For Each itemChecked In CheckedListBox1.CheckedItems
            MessageBox.Show("Dispositivo " + itemChecked + " EXPLORADO ")
        Next
 
    End Sub
End Class
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Andres Leonardo
Val: 3.117
Oro
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Asignar variable a letra de unidad

Publicado por Andres Leonardo (1798 intervenciones) el 24/04/2020 21:31:09
Creo que ahora si te entendi... lo que no sabes es como mostrar el elemento qeu necesitas

La teoria dice que el list tiene ITEMS y estos ITEMS le da un indice a cada uno de sus elementos, la mejor en .net es que puedes ver todso lso que estan seleccionadas y te da el indice.... pero tu quieres ademas del indique su valor o su texto en este caso la letra de la unidad....

siendo asi se defineasi

1
2
3
ControldeLista.ITEMS(ElIndicedelitemseleccionadodentrodelbucle).ToString 'to string para hacerlo texto o cadena de texto.
'Entonces quedaria
CheckedListBox1.Items(CheckedListBox1.SelectedIndex).ToString



Te ajdunto lo que quieres

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
Public Class Form1
 
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        For Each i In System.IO.DriveInfo.GetDrives
            If i.IsReady = True Then
                Dim t As String = i.Name
                If i.VolumeLabel <> "" Then t &= "" & i.VolumeLabel & ""
                CheckedListBox1.Items.Add(t)
            End If
        Next
 
    End Sub
 
 
 
    Private Sub WhatIsChecked_Click_1(sender As Object, e As EventArgs) Handles WhatIsChecked.Click
        Dim indexChecked As Integer
        Dim itemChecked As Object
 
        For Each indexChecked In CheckedListBox1.CheckedIndices
            'MsgBox(CheckedListBox1.Items(CheckedListBox1.SelectedIndex).ToString)
            Shell("cmd.exe /c explorer " & CheckedListBox1.Items(CheckedListBox1.SelectedIndex).ToString, vbHide)
        Next
 
        For Each itemChecked In CheckedListBox1.CheckedItems
            MessageBox.Show("Dispositivo " + CheckedListBox1.Items(CheckedListBox1.SelectedIndex).ToString + " EXPLORADO ")
        Next
 
    End Sub
End Class
drives
drives2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 14
Ha disminuido su posición en 4 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Asignar variable a letra de unidad

Publicado por Yusniel (8 intervenciones) el 24/04/2020 22:30:16
Por ahí va medio funcionando, digo esto por:

Al mostrar las unidades con su nombre, el ejecutable de explorador me abre la carpeta Mis Documentos, pero bueno, eso no sería algo tan necesario para el programa ni apura tanto, sin embargo, cuando solo dejo que se vean las letras de las unidades funciona por ese lado, lo que de verdad no funciona es cuando señalamos más de un disco, ya que el programa ejecuta el explorer dos veces en el primer checkbox marcado que encuentra, no un explorer en cada uno
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Andres Leonardo
Val: 3.117
Oro
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Asignar variable a letra de unidad

Publicado por Andres Leonardo (1798 intervenciones) el 24/04/2020 23:15:15
Podrias mostrar las Unidades como las muestras en una imagen?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 14
Ha disminuido su posición en 4 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Asignar variable a letra de unidad

Publicado por Yusniel (8 intervenciones) el 24/04/2020 23:38:50
20200424_173611
20200424_173449

En la primera imagen nuestro cuando no les agrego el nombre a las unidades y Marco dos checkbox me ejecuta el comando Shell a la misma checkbox

En la segunda muestro como me abre el explorador en Documentos, al tener los nombres de las unidades agregadas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar