Hola:
Alguien me podria decir como puedo leer el numero de serie de una memoria USB desde Xailer?
De antemano mil gracias.
In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Numero de serie de una memoria USB
Numero de serie de una memoria USB
Saludos amigos.
Numero de serie de una memoria USB
Creo que con Wmi podrias hacer algo.
Saludos Cordiales.
"Sergio Garcia Luna" <meridiano74[at]prodigy[dot]net[dot]mx> escribis en el
mensaje news:52901c41$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Hola:
>
> Alguien me podria decir como puedo leer el numero de serie
> de una memoria USB desde Xailer?
>
> De antemano mil gracias.
> --
> Saludos amigos.
---
Este mensaje no contiene virus ni malware porque la protección de avast! Antivirus está activa.
http://www.avast.com
Saludos Cordiales.
"Sergio Garcia Luna" <meridiano74[at]prodigy[dot]net[dot]mx> escribis en el
mensaje news:52901c41$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Hola:
>
> Alguien me podria decir como puedo leer el numero de serie
> de una memoria USB desde Xailer?
>
> De antemano mil gracias.
> --
> Saludos amigos.
---
Este mensaje no contiene virus ni malware porque la protección de avast! Antivirus está activa.
http://www.avast.com
Numero de serie de una memoria USB
Gracias Juanc.
Intento lo siguiente, pero el valor que busco (oTemp:SerialNumber ) me regresa NIl en todos los casos
y no tango la menor idea de por que. Te agradecería si me puedes orientar.
Tambien vi esto en Internet, pero no se como introducirlo: ("SELECT * FROM Win32_DiskDrive WHERE InterfaceType='USB'");
METHOD Button1Click( oSender ) CLASS TForm1
LOCAL oTemp
::oServer := CreateObject( "wbemScripting.SwbemLocator" )
::oWMI := ::oServer:ConnectServer()
::oDrives := ::oWMI:ExecQuery( "SELECT * FROM Win32_PhysicalMedia" )
::oBoard := ::oWMI:ExecQuery( "SELECT * FROM Win32_BaseBoard" )
::oBios := ::oWMI:ExecQuery( "SELECT * FROM Win32_BIOS" )
altd()
FOR EACH oTemp IN ::oDrives
MsgInfo( "Serie del disco: " + Str( oTemp:SerialNumber ) )
NEXT
FOR EACH oTemp IN ::oBoard
MsgInfo( "Serie de la placa: " + Str( oTemp:SerialNumber ) )
NEXT
FOR EACH oTemp IN ::oBios
MsgInfo( "Serie de la BIOS: " + Str( oTemp:SerialNumber ) )
NEXT
RETURN Nil
Intento lo siguiente, pero el valor que busco (oTemp:SerialNumber ) me regresa NIl en todos los casos
y no tango la menor idea de por que. Te agradecería si me puedes orientar.
Tambien vi esto en Internet, pero no se como introducirlo: ("SELECT * FROM Win32_DiskDrive WHERE InterfaceType='USB'");
METHOD Button1Click( oSender ) CLASS TForm1
LOCAL oTemp
::oServer := CreateObject( "wbemScripting.SwbemLocator" )
::oWMI := ::oServer:ConnectServer()
::oDrives := ::oWMI:ExecQuery( "SELECT * FROM Win32_PhysicalMedia" )
::oBoard := ::oWMI:ExecQuery( "SELECT * FROM Win32_BaseBoard" )
::oBios := ::oWMI:ExecQuery( "SELECT * FROM Win32_BIOS" )
altd()
FOR EACH oTemp IN ::oDrives
MsgInfo( "Serie del disco: " + Str( oTemp:SerialNumber ) )
NEXT
FOR EACH oTemp IN ::oBoard
MsgInfo( "Serie de la placa: " + Str( oTemp:SerialNumber ) )
NEXT
FOR EACH oTemp IN ::oBios
MsgInfo( "Serie de la BIOS: " + Str( oTemp:SerialNumber ) )
NEXT
RETURN Nil
Saludos amigos.
Numero de serie de una memoria USB
Hola Sergio, ojala te de un norte el siguiente codigo:
Static Function GetUSBSerial( cDrive )
Local oJob
Local cDriveNumber
Local oJobs := oWMI:Win32_LDP
//
cDrive := Upper(cDrive)
If Len( cDrive ) == 1
cDrive += ":"
EndIf
If Len(cDrive) > 2
cDrive := SubStr(cDrive,1,2)
EndIf
For Each oJob In oJobs
If cDrive == __StrToken( oJob:Dependent, 2, '"' )
cDriveNumber = SubStr( __StrToken( __StrToken( oJob:Antecedent, 2,
'"' ), 1, "," ), 7 )
oWMI:cDriveNumber := cDriveNumber
Return GetSerial( cDriveNumber )
EndIf
Next
Return ""
Static Function GetSerial( cDriveNumber )
Local oDrive
Local cSerial:= ""
Local aDrives:= oWMI:Win32_DD
//
For Each oDrive In aDrives
If oDrive:Name == ".PHYSICALDRIVE" + cDriveNumber .and.
oDrive:InterfaceType == "USB"
cSerial := oDrive:PNPDeviceID
cSerial := SubStr( cSerial, 1, Rat( "&", cSerial ) - 1 )
cSerial := SubStr( cSerial, Rat( "&", cSerial ) + 1 )
If At( "", cSerial ) != 0
cSerial = SubStr( cSerial, At( "", cSerial ) + 1 )
EndIf
Return cSerial
EndIF
Next
Saludos Cordiales.
"Sergio Garcia Luna" <meridiano74[at]prodigy[dot]net[dot]mx> escribis en el
mensaje news:5294f2c8$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Gracias Juanc.
>
> Intento lo siguiente, pero el valor que busco
> (oTemp:SerialNumber ) me regresa NIl en todos los casos
> y no tango la menor idea de por que. Te agradecerma si me
> puedes orientar.
>
> Tambien vi esto en Internet, pero no se como introducirlo: ("SELECT * FROM
> Win32_DiskDrive WHERE
> InterfaceType='USB'");
>
>
> METHOD Button1Click( oSender ) CLASS TForm1
>
> LOCAL oTemp
>
> ::oServer := CreateObject( "wbemScripting.SwbemLocator"
> )
> ::oWMI := ::oServer:ConnectServer()
> ::oDrives := ::oWMI:ExecQuery( "SELECT * FROM
> Win32_PhysicalMedia" )
> ::oBoard := ::oWMI:ExecQuery( "SELECT * FROM
> Win32_BaseBoard" )
> ::oBios := ::oWMI:ExecQuery( "SELECT * FROM Win32_BIOS"
> )
>
> altd()
> FOR EACH oTemp IN ::oDrives
> MsgInfo( "Serie del disco: " + Str( oTemp:SerialNumber
> ) )
> NEXT
>
> FOR EACH oTemp IN ::oBoard
> MsgInfo( "Serie de la placa: " + Str(
> oTemp:SerialNumber ) )
> NEXT
>
> FOR EACH oTemp IN ::oBios
> MsgInfo( "Serie de la BIOS: " + Str( oTemp:SerialNumber
> ) )
> NEXT
>
> RETURN Nil
> --
> Saludos amigos.
---
Este mensaje no contiene virus ni malware porque la protección de avast! Antivirus está activa.
http://www.avast.com
Static Function GetUSBSerial( cDrive )
Local oJob
Local cDriveNumber
Local oJobs := oWMI:Win32_LDP
//
cDrive := Upper(cDrive)
If Len( cDrive ) == 1
cDrive += ":"
EndIf
If Len(cDrive) > 2
cDrive := SubStr(cDrive,1,2)
EndIf
For Each oJob In oJobs
If cDrive == __StrToken( oJob:Dependent, 2, '"' )
cDriveNumber = SubStr( __StrToken( __StrToken( oJob:Antecedent, 2,
'"' ), 1, "," ), 7 )
oWMI:cDriveNumber := cDriveNumber
Return GetSerial( cDriveNumber )
EndIf
Next
Return ""
Static Function GetSerial( cDriveNumber )
Local oDrive
Local cSerial:= ""
Local aDrives:= oWMI:Win32_DD
//
For Each oDrive In aDrives
If oDrive:Name == ".PHYSICALDRIVE" + cDriveNumber .and.
oDrive:InterfaceType == "USB"
cSerial := oDrive:PNPDeviceID
cSerial := SubStr( cSerial, 1, Rat( "&", cSerial ) - 1 )
cSerial := SubStr( cSerial, Rat( "&", cSerial ) + 1 )
If At( "", cSerial ) != 0
cSerial = SubStr( cSerial, At( "", cSerial ) + 1 )
EndIf
Return cSerial
EndIF
Next
Saludos Cordiales.
"Sergio Garcia Luna" <meridiano74[at]prodigy[dot]net[dot]mx> escribis en el
mensaje news:5294f2c8$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Gracias Juanc.
>
> Intento lo siguiente, pero el valor que busco
> (oTemp:SerialNumber ) me regresa NIl en todos los casos
> y no tango la menor idea de por que. Te agradecerma si me
> puedes orientar.
>
> Tambien vi esto en Internet, pero no se como introducirlo: ("SELECT * FROM
> Win32_DiskDrive WHERE
> InterfaceType='USB'");
>
>
> METHOD Button1Click( oSender ) CLASS TForm1
>
> LOCAL oTemp
>
> ::oServer := CreateObject( "wbemScripting.SwbemLocator"
> )
> ::oWMI := ::oServer:ConnectServer()
> ::oDrives := ::oWMI:ExecQuery( "SELECT * FROM
> Win32_PhysicalMedia" )
> ::oBoard := ::oWMI:ExecQuery( "SELECT * FROM
> Win32_BaseBoard" )
> ::oBios := ::oWMI:ExecQuery( "SELECT * FROM Win32_BIOS"
> )
>
> altd()
> FOR EACH oTemp IN ::oDrives
> MsgInfo( "Serie del disco: " + Str( oTemp:SerialNumber
> ) )
> NEXT
>
> FOR EACH oTemp IN ::oBoard
> MsgInfo( "Serie de la placa: " + Str(
> oTemp:SerialNumber ) )
> NEXT
>
> FOR EACH oTemp IN ::oBios
> MsgInfo( "Serie de la BIOS: " + Str( oTemp:SerialNumber
> ) )
> NEXT
>
> RETURN Nil
> --
> Saludos amigos.
---
Este mensaje no contiene virus ni malware porque la protección de avast! Antivirus está activa.
http://www.avast.com
Numero de serie de una memoria USB
Juanc te agradezco tu amable ayuda.
Voy a probar con el código que me proporcionas.
Voy a probar con el código que me proporcionas.
Saludos amigos.