elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  Serial y Unidad de Pen Drive
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 3 Ir Abajo Respuesta Imprimir
Autor Tema: Serial y Unidad de Pen Drive  (Leído 13,865 veces)
Dessa


Desconectado Desconectado

Mensajes: 624



Ver Perfil
Serial y Unidad de Pen Drive
« en: 9 Abril 2009, 12:59 pm »

No encuentro una propiedad comun entre Win32_LogicalDisk y Win32_DiskDrive para relacionar directamente la letra de un pen con su serial


Gracias y saludos

 


« Última modificación: 2 Mayo 2009, 12:27 pm por Dessa » En línea

Adrian Desanti
seba123neo
Moderador
***
Desconectado Desconectado

Mensajes: 3.621



Ver Perfil WWW
Re: Serial y Unidad de Pen Drive
« Respuesta #1 en: 10 Abril 2009, 00:00 am »

Hola, yo probe con 2...uno es F y el otro H...el de unidad lo tira con order como dijiste...y el otro tambien.. :P...probe primero uno despues el otro y al reves y siempre me lo mostro igual...

saludos.


En línea

Dessa


Desconectado Desconectado

Mensajes: 624



Ver Perfil
Re: Serial y Unidad de Pen Drive
« Respuesta #2 en: 10 Abril 2009, 00:59 am »

Hola, yo probe con 2...uno es F y el otro H...el de unidad lo tira con order como dijiste...y el otro tambien.. :P...probe primero uno despues el otro y al reves y siempre me lo mostro igual...

saludos.

Sí, Seba, en algunos casos el orden de las unidades (Win32_LogicalDisk) y el orden de los seriales (Win32_DiskDrive) coinciden, yo probé en tres cpu distintas y solo en una coincidía (no llego a entender como windows maneja este tema).

Por eso la pregunta sería hay alguna manera de conocer las letras de las unidades con Win32_DiskDrive ???

Gracias y saludos

En línea

Adrian Desanti
Fabricio

Desconectado Desconectado

Mensajes: 115


Ver Perfil
Re: Serial y Unidad de Pen Drive
« Respuesta #3 en: 13 Abril 2009, 21:28 pm »

Hola a todos por lo que probe este error ocurre en algunos casos y en otros no yo probe con dos pen iguales y me doy lo s datos cambiados luego probe con otros dos pen y me dio los datos en forma correcta todo en la misma pc  :huh:
la verdad no entiendo que ocurre y por que algunas veces funciona y otras no

saludos  :D
En línea

Dessa


Desconectado Desconectado

Mensajes: 624



Ver Perfil
Re: Serial y Unidad de Pen Drive
« Respuesta #4 en: 14 Abril 2009, 17:19 pm »

Hola fabricio, no es un error, son dos funciones distintas que no se rigen por el mismo orden, el code wmi al que me refiero en la pregunta original es simple, pero lamentablemente no siempre retorna el serial de fábrica y las letras de sus unidades en el orden que corresponde.

Saludos



 
« Última modificación: 2 Mayo 2009, 12:06 pm por Dessa » En línea

Adrian Desanti
Hasseds

Desconectado Desconectado

Mensajes: 145



Ver Perfil
Re: Serial y Unidad de Pen Drive
« Respuesta #5 en: 21 Abril 2009, 20:53 pm »

Fabricio, te mando el code por MP.


Saludos, espero que te sirva.

« Última modificación: 26 Mayo 2009, 12:04 pm por Hassed » En línea

Sergio Desanti
Fabricio

Desconectado Desconectado

Mensajes: 115


Ver Perfil
Re: Serial y Unidad de Pen Drive
« Respuesta #6 en: 21 Abril 2009, 22:59 pm »

Muchisimas gracias  ;-)
un gran saludo
En línea

Dessa


Desconectado Desconectado

Mensajes: 624



Ver Perfil
Re: Serial y Unidad de Pen Drive
« Respuesta #7 en: 7 Julio 2009, 21:03 pm »

No encuentro una propiedad comun entre Win32_LogicalDisk y Win32_DiskDrive para relacionar directamente la letra de un pen con su serial

Retomé el tema hace unos dias y por fin pude encontrar la forma de relacionar directamente la unidad lógica de un Pendrive con con su serial (Win32_DiskDrive-PNPDeviceID), no es por intermedio de Win32_LogicalDisk sino por intermedio de Win32_LogicalDiskToPartition, esta clase me devuelve la letra Lógica (dependent) y el numero de index del disco al que corresponde (Antecedent), lo que queda es solo relacionar este numero de index con el tambien numero de index que devuelve Win32_DiskDrive (Win32_DiskDrive-index ) Y (Win32_DiskDrive-PNPDeviceID).

Paso el code para el que le pueda servir

Código:

Private Function UsbSerial() As String

Dim disco1 As Object: Dim Objeto1 As Object ' Detecta seriales de Pendrive, MP3, Etc
Dim disco2 As Object: Dim Objeto2 As Object ' Autor = Dessa
Dim sDisco As String: Dim sLetra As String  ' http://foro.elhacker.net/programacion_vb-b50.0/

Set Objeto1 = GetObject("winmgmts:").ExecQuery("Select * from Win32_LogicalDiskToPartition")
Set Objeto2 = GetObject("winmgmts:{impersonationLevel=impersonate}").InstancesOf("Win32_DiskDrive")

For Each disco1 In Objeto1
      sLetra = Mid(disco1.dependent, InStr(1, disco1.dependent, "=") + 2, 2)
      sDisco = Mid(disco1.Antecedent, InStr(1, disco1.Antecedent, "#") + 1, InStrRev(disco1.Antecedent, ",") - InStr(1, disco1.Antecedent, "#"))
    For Each disco2 In Objeto2
      If disco2.InterfaceType = "USB" Then
        If disco2.Index = Val(Mid(sDisco, 1, Len(sDisco) - 1)) Then
          UsbSerial = UsbSerial + sLetra + " " & Mid(disco2.PNPDeviceID, InStrRev(disco2.PNPDeviceID, "\") + 1, InStrRev(disco2.PNPDeviceID, "&") - InStrRev(disco2.PNPDeviceID, "\") - 1) + vbNewLine
        End If
      End If
    Next
Next

End Function



PD: Funcinó en XP-SP3 y W7

S2







« Última modificación: 8 Julio 2009, 14:29 pm por Dessa » En línea

Adrian Desanti
cobein


Desconectado Desconectado

Mensajes: 759



Ver Perfil WWW
Re: Serial y Unidad de Pen Drive
« Respuesta #8 en: 9 Julio 2009, 03:25 am »

Vuelvo a decir esto, creo que ya lo comente varias veces, WMI no es recomendable, no siempre esta disponible, lo que hace el code muy susceptible a fallos.
En línea

http://www.advancevb.com.ar
Más Argentino que el morcipan
Aguante el Uvita tinto, Tigre, Ford y seba123neo
Karcrack es un capo.
Dessa


Desconectado Desconectado

Mensajes: 624



Ver Perfil
Re: Serial y Unidad de Pen Drive
« Respuesta #9 en: 9 Julio 2009, 14:58 pm »

Ok, cobein, gracias por el aporte, pero cual seria la mejor solución para relacionar los seriales de los Pendrive con sos respectivas unidades ?

Por ejemplo usando APIs en XP se puede enumerar los seriales que se encuentran en HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USBSTOR y a travez del dato del valor ParentIdPrefix de cada serial se puede  relacionar con la unidad de cada pendrive conectado que se encuentran en HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices (en el interior del dato Binario de cada unidad montada con Pendrive se encuentra tambien el valor ParentIdPrefix de cada serial, esto permitiria relacionar directamente los seriales con sus respectivas unidades). Pero no hay una manera mas directa ???


« Última modificación: 9 Julio 2009, 21:57 pm por Dessa » En línea

Adrian Desanti
Páginas: [1] 2 3 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Obtener Serial de unidad optica
Scripting
Mauricio De Abreu 0 1,558 Último mensaje 17 Febrero 2022, 16:38 pm
por Mauricio De Abreu
Unidad local google drive aparece vacía ¿?
Software
samjack 4 8,293 Último mensaje 10 Noviembre 2022, 01:37 am
por Danielㅤ
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines