Hola Grupo,
Como explique antes estoy interesado en que mis macros reconozcan el equipo
en que estan corriendo,
Gracias PabloV, estoy muy interesado en que me indiques como leer el serial
del procesador, si puedes ayudarme te lo agradeceria.
En otro foro me indico Ruben como leer el serial del disco duro:
Private Declare Function GetVolumeInformation Lib "kernel32" _
Alias "GetVolumeInformationA" (ByVal lpRootPathName As String, _
ByVal lpVolumeNameBuffer As String, ByVal nVolumeNameSize As Long, _
lpVolumeSerialNumber As Long, lpMaximumComponentLength As Long, _
ByVal lpFileSystemFlags As Long, ByVal lpFileSystemNameBuffer As String, _
ByVal nFileSystemNameSize As Long) As Long
Function DiskSerial(DrivePath As String) As String
Dim retCode As Long
Dim VolumeName As String
Dim VolumeSerialNumber As Long
Dim MaximumComponentLength As Long
Dim FileSystemFlags As Long
Dim FileSystemNameBuffer As String
Dim HiWord As Integer, LoWord As Integer
VolumeName = Space(255)
FileSystemNameBuffer = Space(255)
MaximumComponentLength = 0
FileSystemFlags = 0
retCode = GetVolumeInformation(DrivePath, VolumeName, 255,
VolumeSerialNumber, _
MaximumComponentLength, FileSystemFlags, FileSystemNameBuffer, 255)
If retCode = 0 Then
DiskSerial = "Error"
Else
HiWord = (VolumeSerialNumber And &HFFFF0000) \ &H10000
If VolumeSerialNumber And &H8000& Then
LoWord = VolumeSerialNumber Or &HFFFF0000
Else
LoWord = VolumeSerialNumber And &HFFFF&
End If
DiskSerial = Format$(Hex(HiWord), "0000") & "-" & Format$(Hex(LoWord),
"0000")
End If
End Function
llama a la function: DiskSerial("C:\")
Aunque tengo mis dudas respecto al valor que dvuelve, por que es diferente
al del codigo que manejo que obtuve con la ayuda de Hector Miguel.
Habria que determinar cual de los dos valores es el serial del disco duro y
que es lo que devuelve la otra funcion.
Yo pienso que es importante para los que creamos aplicaciones para Excel en
VBA tener una forma de proteger nuestro trabajo, asi que si alguien tiene
alguna idea o metodo que quiera compartir se le agradeceria bastante
Saludos,
Henry
Leer las respuestas