Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - siliconplus

#1
Gracias.. !!!
;-)

Antes yo igual usaba batch...  y como se detallan en los post siguientes tambien tenia ciertos problemitas..   pero servía igual.   En todo caso era el inicio hacia el hackeo y crackeo leyendo resultados de otros comando y enlazandolos.. etc, etc.

Queda pendiente.. si seria posible leer la serie del procesador
jejeje

Gracias...
#2
No me queda mas que leer la MAC...  (por el momento).

La idea es tener dos variables fijas del PC por si falla una, es decir.  Si se quemó la tarjeta madre, el procesador se mantiene.. aunque a estas alturas, cambiar la placa es sinonimo de cambiar todo... cpu, socket.,etc, etc...   Lo mismo que si se quema el procesador...  mmm nueva placa madre...
:D

¿Algun link para leer la MAC?...
:silbar:
#3
la serie del disco duro se repite si es una imagen clonada  (idem de ejercicio anterior)
:xD

Por lo general la serie del disco no se utiliza porque si se quema o se cambia el disco por uno de mayor capacidad, el programa no se podra ejecutar en ese PC
:-[

  Print #1, "Processor Id: " & cpu.ProcessorId
  y
  Print #1, "Name: " & cpu.Name

son UNICOS...  un tipo de CPU tiene su ID unica dentro de su nombre  (los dos campos van de la mano), pero si es una imagen clonada (el disco)... no me dá el procesador actual...
:-(
#4
¿y como encriptas y desencriptas una "carpeta" de windows, de modo que pida pwd para accesarla ?...
#5
Aqui te envio la funcion propiamente tal...


   Dim BiosSet As Object
   Dim bios As Object

'   
' LEEMOS LA IDENTIFICACION DE LA PLACA MADRE
'
   Set BiosSet = GetObject("winmgmts:{impersonationLevel=impersonate}").InstancesOf("Win32_BIOS")
   
   On Local Error Resume Next

'
'  ARCHIVO QUE CONTENDRÁ LA INFORMACION QUE LEEREMOS
'
   open "DatosBios.txt" for output as  #1

   
   For Each bios In BiosSet
      Print #1, "PrimaryBIOS  :  " & bios.PrimaryBIOS & vbLf &  "Status;   " & bios.Status & vbLf

      For cnt = LBound(bios.BIOSVersion) To UBound(bios.BIOSVersion)
         Print #1, " BiosVersion:  " & bios.BIOSVersion(cnt) & vbLf
      Next
     
      Print #1, "Caption:  "; bios.Caption & vbLf
      Print #1, "Description:  "; bios.Description; vbLf
      Print #1, "Name:  "; bios.Name; vbLf
      Print #1, "Manufacturer:  "; bios.Manufacturer; vbLf
      Print #1, "ReleaseDate:  "; bios.ReleaseDate; vbLf
      Print #1, "SerialNumber:  "; bios.SerialNumber; vbLf
      Print #1, "SMBIOSBIOSVersion:  "; bios.SMBIOSBIOSVersion; vbLf
      Print #1, "SMBIOSMajorVersion:  "; bios.SMBIOSMajorVersion; vbLf
      Print #1, "SMBIOSMinorVersion:  "; bios.SMBIOSMinorVersion; vbLf
      Print #1, "SMBIOSPresent:  "; bios.SMBIOSPresent; vbLf
      Print #1, "SoftwareElementID:   "; bios.SoftwareElementID; vbLf
      Print #1, "Version;  "; bios.Version; vbLf
      Print #1, "InstallableLanguages; "; bios.InstallableLanguages; vbLf
      Print #1, "CurrentLanguage:  "; bios.CurrentLanguage; vbLf
     
   Next  'For Each bios



    Dim cpuSet As Object
    Dim cpu As Object

'
'  LEEMOS LOS PROCESADORES QUE TIENE ESTE PC
'   
   
    Set cpuSet = GetObject("winmgmts:\\.\root\cimv2").ExecQuery("Select * from Win32_Processor")

    For Each cpu In cpuSet
        Print #1, "Processor Id: " & cpu.ProcessorId
        Print #1, "Maximum Clock Speed: "; cpu.MaxClockSpeed
        Print #1, "Availability: " & cpu.Availability
        Print #1, "AddressWidth: " & cpu.AddressWidth
        Print #1, "CpuStatus: " & cpu.CpuStatus
        Print #1, "CurrentClockSpeed: " & cpu.CurrentClockSpeed
        Print #1, "MaxClockSpeed: " & cpu.MaxClockSpeed
        Print #1, "L2CacheSize: " & cpu.L2CacheSize
        Print #1, "L2CacheSpeed: " & cpu.L2CacheSpeed
        Print #1, "VoltageCaps: " & cpu.VoltageCaps
        Print #1, "Name: " & cpu.Name
    Next
   
    close #1

'****************************************************

Despues al revisar el archivo DatosBios.txt me encuentro que dos o mas PC tiene la misma identificacion, es decir, un disco duro fue clonado y a cada uno le pusieron la imagen de otro PC. Talvez estos datos no son los reales en ningun PC, quizás a todos los pusieron la misma imagen de disco...
:rolleyes:

Entonces surge la pregunta... En algun momento de la historia, al instalar el SO, se debio leer los datos del HW original.. ¿Como lo hizo?.  ¿Con que f(x)?..

Esto lo necesito para poder restringir el uso de programas en ciertos PC
de modo que cada vez que se ejecute el programa vaya leer el HW del equipo  y NO LA INFORMACION del hw que esta guardada en el disco (porque puede ser falsa o clonada)...  ¿Me explico?...

Espero que sirva de algo..
#6
Amigos... Llevo tiempo programando y no he podido encontrar la dll para leer la serie  EXACTA del procesador...     

Existen sequencias en VB tales como

Set swService = GetObject("winmgmts:")
   Set swCpuSet = swService.ExecQuery("Select * from Win32_Processor")
   Set swMemSet = swService.ExecQuery("Select * from Win32_PhysicalMemory")

que dan la serie del procesador o de la placa madre que ha sido grabada en el registro de Windows al momento de instalarse.   El problema surge cuando se clona el disco del PC a otro PC, por ende, se clona el registro.  Por lo tanto el segundo PC no arroja la verdadera serie del procesador ni menos la serie de la placa madre.   

Otro ejemplo similar es cuando llegan 20 PC nuevos, y todos vienen clonados y son similares pero ID.de procesador diferentes , y al ejecutar los comando  de VB WIN32_Processor.. todos me devuelven el mismo ID de procesador...
:-\

¿Como podría leer la serie del procesador actual? ( y no el clon).
Sé que se podia usando assembler (pero soy ignorante de ese lenguaje) y el tiempo apremia... :-(

De antemos gracias a todos...