none
No lee el numero de procesador. RRS feed

  • Pregunta

  • Hola a todos.

    Trabajo con Windows 10 y tengo una máquina Virtual para mi XP en el que alojo mi antiguo VB6. Lo he tenido que retocar por algunas cosas y me encuentro que no hay manera de que me lea el número del procesador. lo cual antes hacia perfectamente y no se si es problema de la máquina virtual o es otra cosa, la cuestión en que necesito leerlo y me salta en lo marcado en negrita.

    Private Property Get NumeroSerieProcesador() As String
    Dim objWMI As Object, objProcesador As Object
       On Error GoTo NumeroSerieProcesador_Error
        Set objWMI = GetObject("WINMGMTS:")
        For Each objProcesador In objWMI.InstancesOf("Win32_Processor")
            If Len(objProcesador.ProcessorID) Then   '////Aquí ya me salta al end if. Por lo que no lee el procesador.
                NumeroSerieProcesador = objProcesador.ProcessorID
                Exit For
            End If
        Next objProcesador
        Set objProcesador = Nothing
        Set objWMI = Nothing
      'ShellExecute 0, vbNullString, "mailto:usuario@managerialanalyzer.com?Subject=Solicitud de Licencia de Registro&Body=Envío Nº de Registro: ", vbNullString, App.Path, 1
    
       On Error GoTo 0
       Exit Property
    NumeroSerieProcesador_Error:
        MsgBox "Error " & Err.Number & " (" & Err.Description & ")  NumeroSerieProcesador de Módulo Module1"
    End Property

    No se que puede haber cambiado ya que en la máquina virtual que tenía en WIndows7 lo leía perfectamente, pero ahora, dice que no.

    Bueno, un saludo a todos.

    Gemma

    domingo, 3 de septiembre de 2017 6:14

Respuestas

  • Hola @gemma

    Revisa este enlace

    How to read system processor id in VB6.0

    Saludos


    Pedro Ávila
    "El hombre sabio querrá estar siempre con quien sea mejor que él."
    Lima - Perú

    • Marcado como respuesta gemma_campillo domingo, 3 de septiembre de 2017 16:19
    domingo, 3 de septiembre de 2017 14:57
  • Hola @gemma

    Tengo instalado Windows 10 de 64 bits y e instalado vb6 profesional edition y te cuento que replique el código del tutorial y si me funciona.

    Private Sub Command1_Click()
      Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
      Set colItems = objWMIService.ExecQuery("Select * from Win32_Processor")
    
      For Each objItem In colItems
        MsgBox "Caption: " & objItem.Caption
        MsgBox "CPU ID: " & objItem.ProcessorId
      Next
    End Sub

    Imagen

    Win32_Processor class

    Win32_Processor class

    El causante que no se lea puede ser que estas usando una maquina virtual y puede ser ese el motivo, espero logres solucionarlo.

    Otro abrazo para ti.

    Saludos


    Pedro Ávila
    "El hombre sabio querrá estar siempre con quien sea mejor que él."
    Lima - Perú




    • Editado Pedro Ávila lunes, 4 de septiembre de 2017 19:11
    • Marcado como respuesta gemma_campillo lunes, 4 de septiembre de 2017 19:45
    lunes, 4 de septiembre de 2017 5:00

Todas las respuestas

  • Hola @gemma

    Revisa este enlace

    How to read system processor id in VB6.0

    Saludos


    Pedro Ávila
    "El hombre sabio querrá estar siempre con quien sea mejor que él."
    Lima - Perú

    • Marcado como respuesta gemma_campillo domingo, 3 de septiembre de 2017 16:19
    domingo, 3 de septiembre de 2017 14:57
  • Hola Pedro:

    Gracias como siempre por tu ayuda.

    La página es muy buena, pero no me lee nada, me pone la lectura a 0, pasa por todos los sitios pero no lo lee, eso es lo que me pasa también con el procesador. No se que puede ser, tengo en esa máquina virtual el Xp Servicpack 3 y el VB6 con el servipack 6, ya no me acuerdo si se necesitaba algo más, llevaba 3 años parado y con las historia del cambio a Windows 10 y reinstalar todo lo que había en la otra máquina virtual que tenía en el Windows 7, algo ha dejado de funcionar. Bueno voy a seguir intentando a ver que puede ser, ya que es muy raro que no lea ni lo uno ni lo otro.

    Bueno querido amigo, muchas gracias por tu ayuda.

    Un abrazo.

    Gemma

    domingo, 3 de septiembre de 2017 16:19
  • Hola @gemma

    Tengo instalado Windows 10 de 64 bits y e instalado vb6 profesional edition y te cuento que replique el código del tutorial y si me funciona.

    Private Sub Command1_Click()
      Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
      Set colItems = objWMIService.ExecQuery("Select * from Win32_Processor")
    
      For Each objItem In colItems
        MsgBox "Caption: " & objItem.Caption
        MsgBox "CPU ID: " & objItem.ProcessorId
      Next
    End Sub

    Imagen

    Win32_Processor class

    Win32_Processor class

    El causante que no se lea puede ser que estas usando una maquina virtual y puede ser ese el motivo, espero logres solucionarlo.

    Otro abrazo para ti.

    Saludos


    Pedro Ávila
    "El hombre sabio querrá estar siempre con quien sea mejor que él."
    Lima - Perú




    • Editado Pedro Ávila lunes, 4 de septiembre de 2017 19:11
    • Marcado como respuesta gemma_campillo lunes, 4 de septiembre de 2017 19:45
    lunes, 4 de septiembre de 2017 5:00
  • Hola Pedro:

    Es tal como dices, en la máquina virtual tengo el xp con el vb6. Funciona perfectamente pero no lee el tema del que hablamos. He hecho la prueba esta mañana creando un ejecutable y sorpresa, en el Windows 10 en el cual he hecho la instalación lo lee correctamente. O sea, es la máquina virtual el problema, pero sabiéndolo ya está.

    A ver si me busco un rato y lo puedo poner en el Windows 10 y así estaría mas correcto el vb6.

    Gracias por todo querido amigo.

    Gemma

    lunes, 4 de septiembre de 2017 19:45