Publicentral.com - Promocion en cientos de buscadoresPromocion en cientos de buscadores
Mostrando Codigo - Visual Basic

Obtener numero de serie de una unidad

Este codigo se puede utilizar en las unidades de disco, Cd y Disco duro, para leer el numero de serie de la unidad especificada. En primer lugar debemos crear un modulo Proyecto > Agregar modulo E introducir la primera parte del codigo Posteriormente introducir el codigo en el formulario y un boton al que llamaremos Command1, el cual ejecutará la aplicacion. En la linea 23 debemos modificar C: por la unidad de disco que deseemos.
Visitas: 31798 - 08/05/2004 23:54:16
CODIGO SIN DEMOSTRACIONCODIGO NO EJECUTABLENO CONTIENE ARCHIVO DESCARGABLE
CODIGO


// Codigo ofrecido por Tutores.org
' ---------- MODULO
Declare Function GetVolumeInformation Lib "kernel32.dll" Alias _
"GetVolumeInformationA" (ByVal lpRootPathName As String, ByVal _
lpVolumeNameBuffer As String, ByVal nVolumeNameSize As Integer, _
lpVolumeSerialNumber As Long, lpMaximumComponentLength As Long, _
lpFileSystemFlags As Long, ByVal lpFileSystemNameBuffer As String, ByVal _
nFileSystemNameSize As Long) As Long

'---------- FORMULARIO
Function GetSerialNumber(strDrive As String) As Long
Dim SerialNum As Long
Dim res As Long
Dim Temp1 As String
Dim Temp2 As String
Temp1 = String$(255, Chr$(0))
Temp2 = String$(255, Chr$(0))
res = GetVolumeInformation(strDrive, Temp1, _
Len(Temp1), SerialNum, 0, 0, Temp2, Len(Temp2))
GetSerialNumber = SerialNum
End Function

Private Sub Command1_Click()
Call MsgBox(GetSerialNumber("c:"))
End Sub

ENLACE AL CODIGO
Si quieres enlazar desde tu pagina a este codigo
<!-- Inicio enlace Tutores.org -->
<a title="Tutores.org - Obtener numero de serie de una unidad" href="http://www.tutores.org/codigo/1068/" target="_blank">Obtener numero de serie de una unidad</a>
<!-- Final enlace Tutores.org -->
COMENTARIOS
jemch
la parte que dice:
Temp1 = string$(255, Chr$(0))
Temp2 = string$(255, Chr$(0))

Dice que el signo pesos no puede ser usado, y que string es un tipo 'class' y no puede ser usado como una expresión

Eso lo arrojó MSVB2005
cap
a mi tambien me sale el mismo error y no dicen si hay q usar una referencia o algo
Sliker
Ese mensaje de error te lo da, por que este código es para ser usado en Visual Basic 6, no 2005, ni 2008. Visual Basic 5 (quizás), pero el uso del dólar o símbolo de pesos ( $ ) es para escribir variables cortas de tipo STRING. Por ejemplo: a) Dim x as STRING; b) Dim x$. Para los enteros (INTEGER) y simples (SINGLE) puede ser usados símbolos como (% ENTERO) y otros, pueden encontrar ayuda sobre este tema en la ayuda de Microsoft Visual Basic 6. Saludos =)
pablo 27-09-2007 00:22:32
El código funciona en VB6, solo se le ólvido poner la despues de llamar a la función con "C:" va "C:" o la que quieran.
pablo 27-09-2007 00:22:32
va contra barra dsp de C:, perdon amigo.. y el foro no sale, por eso no estaba en el cód. :)
genesis
Yo lo use en VB en un programa hecho en Excel y me permitio protegerlo y solo se ejecute en la PC con licencia.

Gran Aporte

Muchas Gracias
augusto 16-02-2010 17:29:09
hice la prueba con el visual para excel pero siempre me dice que el cerial es = sin ningun resultado
Juan 23/03/2004 14.09.13
He usado este codigo, pero obtengo "0" como numero de serie del disco "C", en cambio si pongo d para ver el numero de serie de la unidad "D" obtengo "-2005661924". No se si es que hago algo mal porque esperaba que el numero de serie del disco C fuera algo distinto de 0.
Gracias.
bham 09-02-2012 23:06:12
MUY BUEN APORTE, QUITE EL MENSAJE Y LE AGREGUE UNA VALIDACION PARA CAMBIAR DE FORMULARIO Y QUEDO EXCELENTE.
INSERTAR COMENTARIO

Usuario:
Email:
Comentario:
Codigo Seguridad


Antes de enviar un comentario...
Todos los comentarios son revisados personalmente
Todo comentario que no haga relacion al codigo mostrado en esta pagina sera eliminado

Usuarios registrados tienen preferencia en recibir respuestas de ayuda!!
Ademas de poder insertar Imagenes,Enlaces y otras propiedades del editor.
Por favor, insertar los comentarios descriptivos.