Cita:
Iniciado por Bellenger el metodo que usas no es nuevo, por no decir anticucho en fin la logia tiene muchos errores y le falta muchisimo como para ser un codigo de seguridad, pues como dijo alguien es mas facil y seguro guardar los valores encriptados en el registro asi como lo hace el mismo win, en fin es mi opinion pronto sacare mi propia version de algo parecido a esto espero poder terminarla a tiempo ah sin ofensas son solo opiniones. :)
me parece ke vos no tenes logica loko..mira es simple
Private Declare Function GetVolumeInformation& Lib "kernel32" Alias "GetVolumeInformationA" (ByVal lpRootPathName As String, ByVal pVolumeNameBuffer As String, ByVal nVolumeNameSize As Long, lpVolumeSerialNumber As Long, lpMaximumComponentLength As Long, lpFileSystemFlags As Long, ByVal lpFileSystemNameBuffer As String, ByVal nFileSystemNameSize As Long)
Private Sub Form_Load()
Dim cad1 As String * 256
Dim cad2 As String * 256
Dim numSerie As Long
Dim longitud As Long
Dim flag As Long
unidad = "C:\"
Call GetVolumeInformation(unidad, cad1, 256, numSerie, longitud, flag, cad2, 256)
label1 = numSerie
If Val(label1) <> -1943758465 Then
'el Nro: -1943758465 es el del HD de la PC ke le instalaré el sistema de mi tesis, si lo kieren pasar a otra PC les tira error de pirateria y les cierra el SW :P es cuestion de un pokito de logica no ?
MsgBox "Intento de pirateria", vbCritical, "Error !!!"
End
End If
MsgBox "Numero de Serie de la unidad " & unidad & " = " & numSerie
End Sub