FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour ¿ Serial del Board Solucionado
Posts: 162
Joined: Tue Feb 03, 2009 10:08 PM
¿ Serial del Board Solucionado
Posted: Wed Oct 31, 2012 11:03 PM

Compañeros, un favor..

Necesito una rutina que me devuelva el serial del board..

Gracias

J. Ernesto Pinto Q.
Fwh_x64 2501, BCC++_x64 7_70 , Harbour 3.20, LopeEdit 5.8
jepsys@hotmail.com, jepsys@gmail.com

Posts: 410
Joined: Sun Jan 31, 2010 03:30 PM
Re: ¿ Serial del Board
Posted: Wed Oct 31, 2012 11:10 PM

Function WMainInfo()

LOCAL oDatos, oSrv, oJob, i
LOCAL nFree:= ""
LOCAL oLoc:= CreateObject( "wbemScripting.SwbemLocator" )

LOCAL objWMI

LOCAL oSistema
LOCAL oDisco
LOCAL oParti
LOCAL oDisket
LOCAL objUnd
LOCAL oUnd
LOCAL oResolu
LOCAL oSistem
LOCAL oUsers
LOCAL oServ
LOCAL oTime
LOCAL oProc
LOCAL oJbs
LOCAL oIpSet
LOCAL oList
LOCAL aDrives

// mymen(netname())

TRY

objWMI:= oLoc:ConnectServer()

CATCH

TRY
objWMI:= oLoc:ConnectServer("192.168.2.20")
MYMEN("IP OK")
CATCH
MYMEN("Error. Validando el servidor")
CLOSE ALL
RETURN
END

END

oSistema:= objWMI:ExecQuery("Select * from Win32_PhysicalMedia")
oDisco:= objWMI:ExecQuery("Select * from Win32_LogicalDisk")
oParti:= objWMI:ExecQuery("Select * from CIM_DiskPartition")

oDisket:= objWMI:ExecQuery("Select * From Win32_LogicalDisk Where DeviceID = 'A:'")

objUnd:= objWMI:ExecQuery("Select * from Win32_MappedLogicalDisk")
oUnd:= objWMI:ExecQuery("Select * from Win32_CDROMDrive")
oResolu:= objWMI:ExecQuery("Select * from Win32_DesktopMonitor")
oSistem:= objWMI:ExecQuery("Select * from Win32_OperatingSystem")
oUsers:= objWMI:ExecQuery("Select * from Win32_Account")
oServ:= objWMI:ExecQuery("Select * from Win32_Service Where Name = 'Themes'")
oTime:= objWMI:ExecQuery("Select * from Win32_LocalTime")
oProc:= objWMI:ExecQuery("Select * from Win32_Processor")
oJbs:= objWMI:ExecQuery("SELECT Product, SerialNumber FROM Win32_BaseBoard")

oIpSet:= objWMI:ExecQuery("SELECT IPAddress FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled=TRUE")

oList := objWMI:ExecQuery("Select * from Win32_ComputerSystem")

aDrives := objWMI:ExecQuery( "SELECT * FROM Win32_ComputerSystemProduct" )

/*
//Return(Nil)
objWMI:= oLoc:ConnectServer()
oJbs := objWMI:ExecQuery( "select * from Win32_BaseBoard" )
//oSrv:ExecQuery( "SELECT * FROM Win32_BaseBoard" )

                    DeviceID

FOR Each oDatos In oDisco
MsgInfo("Unidad: " + ALLTRIM(cValToChar(oDatos:Name)) + " SN :" + ALLTRIM((oDatos:SystemName)) + "\ Serial: " + ALLTRIM(cValToChar(oDatos:VolumeSerialNumber)),"Unidad y serial lógico de las unidades de disco")
NEXT

FOR Each oDatos in oParti
MsgInfo(ALLTRIM(cValToChar(oDatos:Name)) + " - Tamaño: " +ALLTRIM(cValToChar(oDatos:Size)) + " En: " + ALLTRIM(cValToChar(oDatos:SystemName)) + " - Tipo: " + ALLTRIM(cValToChar(oDatos:TYPE)),"Particiones disponibles")
NEXT

FOR Each oDatos in oDisket
nFree:= oDatos:FreeSpace

IF VALTYPE(nFree) = "U"
MsgInfo("No hay diskete en la unidad A:\","Aviso del WMI de Windows")
ELSE
MsgStop("Hay un diskete en la unidad A:\","Aviso del WMI de Windows")
ENDIF

NEXT

FOR Each oDatos In objUnd
MsgInfo("Device ID: " + oDatos:DeviceID +" Nombre: " + oDatos:Name +" Espacio Libre: " + cValtoChar(oDatos:FreeSpace) + " Tamaño: " + cValtoChar(oDatos:Size),"Lista de unidades Mapeadas en Mi PC")
NEXT

FOR Each oDatos in oUnd
MsgInfo("Unidad: " + oDatos:Drive + " " + "Nombre: " + oDatos:Caption,"Unidades de CD instaladas en el equipo")
NEXT

FOR Each oDatos in oResolu
MsgInfo("Trabajando a Resolución de Alto: " + cValToChar(oDatos:ScreenHeight) + " y Ancho: " + cValToChar(oDatos:ScreenWidth),"Resolucion de Panralla")
NEXT

FOR Each oDatos In oSistem
MsgInfo(oDatos:InstallDate,"Fecha de Instalación de Windows XP")
NEXT

FOR Each oDatos in oSistem
MsgInfo("Directorio de Windows es: " + oDatos:WindowsDirectory +" Directorio del Sistema es: "+ oDatos:SystemDirectory,"Directorio de Windows y del Sistema")
NEXT

/*
FOR Each oDatos in oUsers
MsgInfo(cValToChar(oDatos:Name) + " - " + cValToChar(oDatos:Caption),"Lista de Usuarios de Windows")
NEXT

MsgInfo("Deshabilitarndo los Themes en Windows XP")
FOR Each oDatos in oServ
oDatos:StopService()
SysRefresh()
NEXT

MsgInfo("Habilitando los Themes en Windows XP")
FOR Each oDatos in oServ
oDatos:StartService()
SysRefresh()
NEXT

FOR Each oDatos in oSistem
MsgInfo(oDatos:Caption + " " + oDatos:VERSION,"Sistemas operativos instalados en el PC")
NEXT

FOR Each oDatos in oTime
MsgInfo( "Día: " + cValToChar(oDatos:DAY) + CRLF +;
"Día de la semana: " + cValToChar(oDatos:DayOfWeek) + CRLF +;
"Hora: " + cValToChar(oDatos:Hour) + CRLF +;
"Minutos: " + cValToChar(oDatos:Minute) + CRLF +;
"Mes: " + cValToChar(oDatos:MONTH) + CRLF +;
"Segundos: " + cValToChar(oDatos:Second) + CRLF +;
"Semana en el mes: " + cValToChar(oDatos:WeekInMonth) + CRLF +;
"Año: " + cValToChar(oDatos:YEAR),"Dia, Hora, Mes y Año desde WMI")
NEXT

FOR EACH oDatos IN oProc
MsgInfo("El Nombre del Procesador es: "+Alltrim(cValtoChar(oDatos:Name)),"Desde WMI")
MsgInfo("la Velocidad Actual del Procesador es: "+Alltrim(cValtoChar(oDatos:CurrentClockSpeed)) + " Mghz","Desde WMI")
MsgInfo("la Velocidad Màxima del Procesador es: "+Alltrim(cValtoChar(oDatos:MaxClockSpeed)) + " Mghz","Desde WMI")

NEXT

FOR EACH oDatos IN oList
If oDatos:PartOfDomain
MsgInfo("Dominio: " + oDatos:Domain, "Desde WMI")
Else
MsgInfo("Grupo de Trabajo: " + oDatos:Domain, "Desde WMI")
EndIf
Next

*/

FOR EACH oDatos IN oIPSet
MsgInfo("El IPAddress es: " + Alltrim((oDatos:IPAddress(0))), "Desde WMI")
MsgInfo("El MacAddress es: " + Alltrim((oDatos:IPAddress(1))), "Desde WMI")
NEXT

FOR EACH oDatos IN oJbs
MsgInfo("El Tipo de la MotherBoard es: "+Alltrim((oDatos:Product)),"Desde WMI")
MsgInfo("El N£mero de Serie de la MotherBoard es: "+Alltrim((oDatos:SerialNumber)),"Desde WMI")
NEXT

FOR Each oDatos In oSistema
MsgInfo("Serial de fabrica: " + ALLTRIM((oDatos:SerialNumber)),"")
exit
NEXT

FOR Each oDatos In aDrives
MsgInfo("nombre x : " + ALLTRIM((oDatos:Name)),"")
MsgInfo("UUID x : " + (oDatos:UUID),"")

NEXT

/*
For nAt := 1 to Len( aDrives )
MYMEN( Upper( "SERIAL X : " + AllTrim( STR( aDrives[nAt] ),20 ) ) )

Next nAt
*/

Return nil

JOHNSON RUSSI

Posts: 162
Joined: Tue Feb 03, 2009 10:08 PM
Re: ¿ Serial del Board Solucionado
Posted: Fri Nov 02, 2012 02:45 PM

JOHNSON Gracias, voy a probar y comento mas tarde.

Saludos

J. Ernesto Pinto Q.
Fwh_x64 2501, BCC++_x64 7_70 , Harbour 3.20, LopeEdit 5.8
jepsys@hotmail.com, jepsys@gmail.com

Posts: 257
Joined: Tue May 16, 2006 04:46 PM
Re: ¿ Serial del Board
Posted: Mon Nov 05, 2012 06:30 PM
Ernesto,

Yo uso esta funcion con excelentes resultados. Espero te sirva.

Code (fw): Select all Collapse
//=============================================================================
FUNCTION PE_GUID() //Extrae el Identificador Unico Global (GUID) del equipo (SerialProtect() de Pablo Vidal en el foro)
local oLoc := CreateObject( "wbemScripting.SwbemLocator" )
local oSrv := oLoc:ConnectServer(,"root\cimv2")
local aDrives := oSrv:ExecQuery( "SELECT * FROM Win32_ComputerSystemProduct" )
local oDrive, cSerial := ""
Local aData  := {}
Local nAt
 for each oDrive in aDrives
  AADD( aData, oDrive:UUID )
 Next
 For nAt := 1 to Len( aData )
  cSerial += Upper( AllTrim( cStr( aData[nAt] ) ) )
 Next nAt
Return( cSerial )
RodolfoRBG
FWH 1307, xHarbour123 BCC582
rodolfoerbg@gmail.com
Posts: 162
Joined: Tue Feb 03, 2009 10:08 PM
Re: ¿ Serial del Board
Posted: Tue Nov 06, 2012 07:34 PM

Jhonson y Rodolfo

Gracias`por sus aporte, usando la funcion que me envio Jhonson, hice algunos ajustes y me dio resusltado, aqui les dejo la s modificaciones y un listado de lo que me arrojo, espero que le sirve a mucha mas gente...

include "fivewin.ch"

Function W_Main_Info ()
Local oDatos, oSrv, oJob, i, sMensaje := ""
Local nFree := ""
Local oLoc := CreateObject ( "wbemScripting.SwbemLocator" )
Local objWMI
Local oSerial_Board
Local oDisco
Local oParticiones
Local oDiskettes
Local oHard_Unidades
Local oDVD_CD
Local oResolucion
Local oSistema
Local oUsuarios
Local oThemas
Local oFecha_Hora
Local oProcesador
Local oTipo_Board
Local oIP_Mac
Local oDominio_Grupo
Local aDrives

sMensaje += "NetName () := " + NetName () + CRLF
sMensaje += "GetNetCard := " + GetNetCardID () + CRLF

TRY

objWMI := oLoc:ConnectServer () && Aquí esta la configuración del Sistema

CATCH

TRY
objWMI := oLoc:ConnectServer ( "192.168.2.20" ) && 0.0.0.0
MsgInfo ( "IP OK" )
CATCH
MsgInfo ( "Error. Validando el servidor" )
CLOSE ALL
Return ( NIL )
END

END

oSerial_Board := objWMI:ExecQuery ( "Select * from Win32_PhysicalMedia" )
oDisco := objWMI:ExecQuery ( "Select * from Win32_LogicalDisk" )
oParticiones := objWMI:ExecQuery ( "Select * from CIM_DiskPartition" )
oDiskettes := objWMI:ExecQuery ( "Select * From Win32_LogicalDisk Where DeviceID = 'A:'" )
oHard_Unidades := objWMI:ExecQuery ( "Select * from Win32_MappedLogicalDisk" )
oDVD_CD := objWMI:ExecQuery ( "Select * from Win32_CDROMDrive" )
oResolucion := objWMI:ExecQuery ( "Select * from Win32_DesktopMonitor" )
oSistema := objWMI:ExecQuery ( "Select * from Win32_OperatingSystem" )
oUsuarios := objWMI:ExecQuery ( "Select * from Win32_Account" )
oThemas := objWMI:ExecQuery ( "Select * from Win32_Service Where Name = 'Themes'" )
oFecha_Hora := objWMI:ExecQuery ( "Select * from Win32_LocalTime" )
oProcesador := objWMI:ExecQuery ( "Select * from Win32_Processor" )
oTipo_Board := objWMI:ExecQuery ( "Select Product, SerialNumber FROM Win32_BaseBoard" )
oIP_Mac := objWMI:ExecQuery ( "Select IPAddress FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled=TRUE" )
oDominio_Grupo := objWMI:ExecQuery ( "Select * from Win32_ComputerSystem" )
aDrives := objWMI:ExecQuery ( "Select * from Win32_ComputerSystemProduct" )

/*
objWMI := oLoc:ConnectServer ()
oTipo_Board := objWMI:ExecQuery ( "select * from Win32_BaseBoard" )
* oSrv:ExecQuery ( "SELECT * FROM Win32_BaseBoard" )

DeviceID
*/

  • --------------------------- // -------------------------- *
    sMensaje += "Unidad y serial lógico de las unidades del disco:" + CRLF
    FOR Each oDatos In oDisco
    sMensaje += "Unidad: " + ALLTRIM ( cValToChar ( oDatos:Name ) ) + ;
    ", SN : " + ALLTRIM ( ( oDatos:SystemName ) ) + ;
    " \ Serial: " + ALLTRIM ( cValToChar ( oDatos:VolumeSerialNumber ) ) + CRLF
    NEXT
  • --------------------------- // -------------------------- *

  • --------------------------- // -------------------------- *
    sMensaje += CRLF + "Particiones Discos Duros disponibles:" + CRLF
    FOR Each oDatos in oParticiones
    sMensaje += ALLTRIM ( cValToChar ( oDatos:Name ) ) + ;
    " - Tamaño: " + ALLTRIM ( cValToChar ( oDatos:Size ) ) + ;
    " En: " + ALLTRIM ( cValToChar ( oDatos:SystemName ) ) + ;
    " - Tipo: " + ALLTRIM ( cValToChar ( oDatos:TYPE ) ) + CRLF
    NEXT

  • --------------------------- // -------------------------- *

  • --------------------------- // -------------------------- *
    sMensaje += CRLF + 'Drive Diskette de 3½":' + CRLF
    FOR Each oDatos in oDiskettes
    nFree := oDatos:FreeSpace

IF VALTYPE ( nFree ) = "U"; sMensaje += " No hay diskete en la unidad A:\" + CRLF
ELSE ; sMensaje += " Hay un diskete en la unidad A:\" + CRLF
ENDIF

NEXT
* --------------------------- // -------------------------- *

  • --------------------------- // -------------------------- *
    sMensaje += CRLF + "Lista de unidades Mapeadas por el PC:" + CRLF
    FOR Each oDatos in oHard_Unidades
    sMensaje += "Device ID: " + oDatos:DeviceID + ;
    "Nombre: " + oDatos:Name + ;
    "Espacio Libre: " + cValtoChar ( oDatos:FreeSpace ) + ;
    "Tamaño: " + cValtoChar ( oDatos:Size ) + CRLF
    NEXT
  • --------------------------- // -------------------------- *

  • --------------------------- // -------------------------- *
    sMensaje += CRLF + "Unidades de CD instaladas en el equipo:" + CRLF
    FOR Each oDatos in oDVD_CD
    sMensaje += "Unidad: " + oDatos:Drive + " " + ;
    "Nombre: " + oDatos:Caption + CRLF
    NEXT

  • --------------------------- // -------------------------- *

  • --------------------------- // -------------------------- *
    sMensaje += CRLF + "Resolución de Pantalla:" + CRLF
    FOR Each oDatos in oResolucion
    sMensaje += "Alto: " + cValToChar ( oDatos:ScreenHeight ) + " * " + ;
    "Ancho: " + cValToChar ( oDatos:ScreenWidth ) + CRLF
    NEXT

  • --------------------------- // -------------------------- *

  • --------------------------- // -------------------------- *
    sMensaje += CRLF + "Fecha de Instalación de Windows XP:" + CRLF
    FOR Each oDatos In oSistema
    sMensaje += oDatos:InstallDate + CRLF
    NEXT

  • --------------------------- // -------------------------- *

  • --------------------------- // -------------------------- *
    sMensaje += CRLF + "Directorios:" + CRLF
    FOR Each oDatos in oSistema
    sMensaje += "Windows en: " + oDatos:WindowsDirectory + ;
    ", Sistema en: " + oDatos:SystemDirectory + CRLF
    NEXT

  • --------------------------- // -------------------------- *
  • &&

  • --------------------------- // -------------------------- *
    sMensaje += CRLF + "Lista de Usuarios de Windows:" + CRLF
    FOR Each oDatos in oUsuarios
    sMensaje += cValToChar ( oDatos:Name ) + " - " + cValToChar ( oDatos:Caption ) + CRLF
    NEXT

  • --------------------------- // -------------------------- *

  • --------------------------- // -------------------------- *
    sMensaje += CRLF + "Deshabilitando los Themes en Windows XP" + CRLF
    FOR Each oDatos in oThemas
    oDatos:StopService ()
    SysRefresh ()
    NEXT

  • --------------------------- // -------------------------- *

  • --------------------------- // -------------------------- *
    sMensaje += CRLF + "Habilitando los Themes en Windows XP" + CRLF
    FOR Each oDatos in oThemas
    oDatos:StartService ()
    SysRefresh ()
    NEXT

  • --------------------------- // -------------------------- *

  • --------------------------- // -------------------------- *
    sMensaje += CRLF + "Sistemas operativos instalados en el PC:" + CRLF
    FOR Each oDatos in oSistema
    sMensaje += oDatos:Caption + " " + oDatos:VERSION + CRLF
    NEXT

  • --------------------------- // -------------------------- *

  • --------------------------- // -------------------------- *
    sMensaje += CRLF + "Fecha y Hora actual del PC:" + CRLF
    FOR Each oDatos in oFecha_Hora
    sMensaje += "Fecha_Año: " + cValToChar ( oDatos:YEAR ) + CRLF + ;
    "Fecha_Mes: " + cValToChar ( oDatos:MONTH ) + CRLF + ;
    "Fecha_Día: " + cValToChar ( oDatos:DAY ) + CRLF + ;
    "Día de la semana: " + cValToChar ( oDatos:DayOfWeek ) + CRLF + ;
    "Semana en el mes: " + cValToChar ( oDatos:WeekInMonth ) + CRLF + CRLF + ;
    "Hora: " + cValToChar ( oDatos:Hour ) + CRLF + ;
    "Minutos: " + cValToChar ( oDatos:Minute ) + CRLF + ;
    "Segundos: " + cValToChar ( oDatos:Second ) + CRLF
    NEXT

  • --------------------------- // -------------------------- *

  • --------------------------- // -------------------------- *
    sMensaje += CRLF + "Procesadores en la CPU:" + CRLF
    FOR EACH oDatos IN oProcesador
    sMensaje += " El Nombre del Procesador es: " + ALLTRIM ( cValtoChar ( oDatos:Name ) ) + CRLF
    sMensaje += " la Velocidad Actual del Procesador es de: " + ALLTRIM ( cValtoChar ( oDatos:CurrentClockSpeed ) ) + " Mghz" + CRLF
    sMensaje += " la Velocidad Màxima del Procesador es de: " + ALLTRIM ( cValtoChar ( oDatos:MaxClockSpeed ) ) + " Mghz" + CRLF

NEXT
* --------------------------- // -------------------------- *

  • --------------------------- // -------------------------- *
    sMensaje += CRLF + "Dominio / Grupo:" + CRLF
    FOR EACH oDatos IN oDominio_Grupo
    If oDatos:PartOfDomain; sMensaje += "Dominio: " + oDatos:Domain + CRLF
    Else ; sMensaje += "Grupo de Trabajo: " + oDatos:Domain + CRLF
    EndIf
    Next
  • --------------------------- // -------------------------- *

  • --------------------------- // -------------------------- *
    sMensaje += CRLF + "IP Mac:" + CRLF
    FOR EACH oDatos IN oIP_Mac
    sMensaje += "La IPAddress es: " + ALLTRIM ( oDatos:IPAddress ( 0 ) ) + ;
    ", la MacAddress es: " + ALLTRIM ( oDatos:IPAddress ( 1 ) ) + CRLF
    NEXT

  • --------------------------- // -------------------------- *

  • --------------------------- // -------------------------- *
    sMensaje += CRLF + "Tipo de MainBoard:" + CRLF
    FOR EACH oDatos IN oTipo_Board
    sMensaje += "Tipo : " + ALLTRIM ( oDatos:Product ) + ;
    ", Serie: " + ALLTRIM ( oDatos:SerialNumber ) + CRLF
    NEXT

  • --------------------------- // -------------------------- *

  • --------------------------- // -------------------------- *
    nAt := 0
    sMensaje += CRLF + "Seriales del MainBoard de Fábrica:" + CRLF
    FOR Each oDatos In oSerial_Board
    sMensaje += "Serial " + TRANSFORM ( nAt++, "99" ) + ": " + ALLTRIM ( oDatos:SerialNumber ) + CRLF

  • exit
    NEXT
  • --------------------------- // -------------------------- *

  • --------------------------- // -------------------------- *
    sMensaje += CRLF + "Lista de Drivers UUID" + CRLF
    FOR Each oDatos IN aDrives
    sMensaje += " nombre x : " + ALLTRIM ( oDatos:Name ) + ;
    " UUID x : " + ( oDatos:UUID ) + CRLF
    NEXT

  • --------------------------- // -------------------------- *

  • &&
    sMensaje += CRLF + "Seriales:" + CRLF
    FOR nAt := 1 TO LEN ( aDrives ) && 1 = Diskette A:, 2 = Diskette B:, W_MAIN_INFO( 242 )
    sMensaje += "Serial " + TRANSFORM ( nAt, "99" ) + ":" + CRLF && ALLTRIM ( STR ( aDrives [ nAt ] ), 20 ) + CRLF && Error description: (DOS Error -2147352567) WINOLE/1016 array access: SWbemObjectSet
    NEXT nAt

  • --------------------------- // -------------------------- *
  • &&

NDOSNUME := FCREATE ( 'info_system.txt', 1 ) && FO_READ := 0, FO_WRITE := 1, READWRITE := 2
FWRITE ( NDOSNUME, sMensaje )
FCLOSE ( NDOSNUME )

MsgInfo ( sMensaje, "Información Hard" )

Return ( NIL )
* JOHNSON RUSSI

/*
NetName () := DESARROLLO
GetNetCard := 00-13-D3-EA-85-56
Unidad y serial lógico de las unidades del disco:
Unidad: A:, SN : DESARROLLO \ Serial:
Unidad: C:, SN : DESARROLLO \ Serial: D4418E23
Unidad: D:, SN : DESARROLLO \ Serial: B4744350
Unidad: E:, SN : DESARROLLO \ Serial: 365939F5
Unidad: F:, SN : DESARROLLO \ Serial: C8A2ADA4
Unidad: G:, SN : DESARROLLO \ Serial: B873F1FE
Unidad: H:, SN : DESARROLLO \ Serial: 68771B08
Unidad: I:, SN : DESARROLLO \ Serial: 52A2A1E2
Unidad: J:, SN : DESARROLLO \ Serial: 34D81EED
Unidad: K:, SN : DESARROLLO \ Serial:
Unidad: L:, SN : DESARROLLO \ Serial:

Particiones Discos Duros disponibles:
Disco #1, Partici¢n #0 - Tamaño: 105873920 En: DESARROLLO - Tipo: Installable File System
Disco #1, Partici¢n #1 - Tamaño: 104752742400 En: DESARROLLO - Tipo: Installable File System
Disco #1, Partici¢n #2 - Tamaño: 104857600000 En: DESARROLLO - Tipo: Installable File System
Disco #1, Partici¢n #3 - Tamaño: 110355283968 En: DESARROLLO - Tipo: Installable File System
Disco #0, Partici¢n #0 - Tamaño: 161338834944 En: DESARROLLO - Tipo: Installable File System
Disco #0, Partici¢n #1 - Tamaño: 209715200000 En: DESARROLLO - Tipo: Extended w/Extended Int 13
Disco #0, Partici¢n #2 - Tamaño: 314571751424 En: DESARROLLO - Tipo: Installable File System
Disco #0, Partici¢n #3 - Tamaño: 314571751424 En: DESARROLLO - Tipo: Installable File System

Drive Diskette de 3½":
No hay diskete en la unidad A:\

Lista de unidades Mapeadas por el PC:

Unidades de CD instaladas en el equipo:
Unidad: K: Nombre: HL-DT-ST DVDRAM GSA-H10A

Resolución de Pantalla:
Alto: 1024 * Ancho: 1280

Fecha de Instalación de Windows XP:
20120829163309.000000-180

Directorios:
Windows en: C:\WINDOWS, Sistema en: C:\WINDOWS\system32

Lista de Usuarios de Windows:
Administradores - DESARROLLO\Administradores
Duplicadores - DESARROLLO\Duplicadores
Invitados - DESARROLLO\Invitados
Operadores de configuraci¢n de red - DESARROLLO\Operadores de configuraci¢n de red
Operadores de copia - DESARROLLO\Operadores de copia
Usuarios - DESARROLLO\Usuarios
Usuarios avanzados - DESARROLLO\Usuarios avanzados
Usuarios de escritorio remoto - DESARROLLO\Usuarios de escritorio remoto
Debugger Users - DESARROLLO\Debugger Users
HelpLibraryUpdaters - DESARROLLO\HelpLibraryUpdaters
HelpServicesGroup - DESARROLLO\HelpServicesGroup
SQLServer2005SQLBrowserUser$DESARROLLO - DESARROLLO\SQLServer2005SQLBrowserUser$DESARROLLO
SQLServerMSSQLServerADHelperUser$DESARROLLO - DESARROLLO\SQLServerMSSQLServerADHelperUser$DESARROLLO
SQLServerMSSQLUser$DESARROLLO$SQLEXPRESS - DESARROLLO\SQLServerMSSQLUser$DESARROLLO$SQLEXPRESS
SQLServerSQLAgentUser$DESARROLLO$SQLEXPRESS - DESARROLLO\SQLServerSQLAgentUser$DESARROLLO$SQLEXPRESS
Administrador - DESARROLLO\Administrador
Todos - DESARROLLO\Todos
Asistente de ayuda - DESARROLLO\Asistente de ayuda
ASPNET - DESARROLLO\ASPNET
Invitado - DESARROLLO\Invitado
postgres - DESARROLLO\postgres
SUPPORT_388945a0 - DESARROLLO\SUPPORT_388945a0
LOCAL - DESARROLLO\LOCAL
CREATOR OWNER - DESARROLLO\CREATOR OWNER
CREATOR GROUP - DESARROLLO\CREATOR GROUP
CREATOR OWNER SERVER - DESARROLLO\CREATOR OWNER SERVER
CREATOR GROUP SERVER - DESARROLLO\CREATOR GROUP SERVER
DIALUP - DESARROLLO\DIALUP
NETWORK - DESARROLLO\NETWORK
BATCH - DESARROLLO\BATCH
INTERACTIVE - DESARROLLO\INTERACTIVE
SERVICE - DESARROLLO\SERVICE
ANONYMOUS LOGON - DESARROLLO\ANONYMOUS LOGON
PROXY - DESARROLLO\PROXY
SYSTEM - DESARROLLO\SYSTEM
ENTERPRISE DOMAIN CONTROLLERS - DESARROLLO\ENTERPRISE DOMAIN CONTROLLERS
SELF - DESARROLLO\SELF
Usuarios autentificados - DESARROLLO\Usuarios autentificados
RESTRINGIDO - DESARROLLO\RESTRINGIDO
USUARIO DE TERMINAL SERVER - DESARROLLO\USUARIO DE TERMINAL SERVER
Inicio de sesi¢n interactivo remoto - DESARROLLO\Inicio de sesi¢n interactivo remoto
SERVICIO LOCAL - DESARROLLO\SERVICIO LOCAL
Servicio de red - DESARROLLO\Servicio de red
BUILTIN - DESARROLLO\BUILTIN

Deshabilitando los Themes en Windows XP

Habilitando los Themes en Windows XP

Sistemas operativos instalados en el PC:
Microsoft Windows XP Professional 5.1.2600

Fecha y Hora actual del PC:
Fecha_Año: 2012
Fecha_Mes: 11
Fecha_Día: 2
Día de la semana: 5
Semana en el mes: 1

Hora: 18
Minutos: 53
Segundos: 30

Procesadores en la CPU:
El Nombre del Procesador es: AMD Sempron(tm) Processor 2600+
la Velocidad Actual del Procesador es de: 1599 Mghz
la Velocidad Màxima del Procesador es de: 1599 Mghz

Dominio / Grupo:
Grupo de Trabajo: SISTEMAS

IP Mac:
La IPAddress es: 0.0.0.0, la MacAddress es:

Tipo de MainBoard:
Tipo : MS-7181, Serie:

Seriales del MainBoard de Fábrica:
Serial 0: 9VPC7613
Serial 1: 2SJB9JZ0590076

Lista de Drivers UUID
nombre x : MS-7181 UUID x : FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF

Seriales:
Serial 1:
Serial 2:
Serial 3:
Serial 4:
Serial 5:

*/
*
*
*
*

J. Ernesto Pinto Q.
Fwh_x64 2501, BCC++_x64 7_70 , Harbour 3.20, LopeEdit 5.8
jepsys@hotmail.com, jepsys@gmail.com

Posts: 1816
Joined: Wed Oct 26, 2005 02:49 PM
Re: ¿ Serial del Board Solucionado
Posted: Sun Jun 20, 2021 12:27 PM
Buenos días para todos, estoy intentando usar la función que aporto nuestro amigo Pablo Vidal, pero en algunos computadores me devuelve error.
Alguien ha tenido el mismo problema?

El error
Code (fw): Select all Collapse
   Error description: Error wbemScripting.SwbemLocator/3  DISP_E_MEMBERNOTFOUND: CONNECTSERVER
   Args:
     [   1] = U   
     [   2] = C   root\cimv2


El código
Code (fw): Select all Collapse
#include "Fivewin.ch"

Function Main()

cIdUni := PE_GUID()
msginfo(cIdUni)

/*
cEquipo:=getenv("COMPUTERNAME")
msginfo(cEquipo)

cUsuario:=getenv("USERNAME")
msginfo(cUsuario)

cUsuarioRed := NetName()
msginfo(cUsuarioRed)

uMac := GetNetCardID()
xbrowse(uMac)

cIP := GetHostByName( GetHostName() ) 
msginfo(cIP)

MsgInfo( nSerialHD() ) // Check default drive
MsgInfo( nSerialHD( "C:" ) ) // Serial number on HardDisk*/

Return nil

//=============================================================================
FUNCTION PE_GUID() //Extrae el Identificador Unico Global (GUID) del equipo (SerialProtect() de Pablo Vidal en el foro)
local oLoc := CreateObject( "wbemScripting.SwbemLocator" )
local oSrv := oLoc:ConnectServer(,"root\cimv2")
local aDrives := oSrv:ExecQuery( "SELECT * FROM Win32_ComputerSystemProduct" )
local oDrive, cSerial := ""
Local aData  := {}
Local nAt
 for each oDrive in aDrives
  AADD( aData, oDrive:UUID )
 Next
 For nAt := 1 to Len( aData )
  cSerial += Upper( AllTrim( cStr( aData[nAt] ) ) )
 Next nAt
Return( cSerial )
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 25.01 ] [ xHarbour 64 bits) ]
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: ¿ Serial del Board Solucionado
Posted: Sun Jun 20, 2021 12:53 PM
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 880
Joined: Fri Jan 12, 2007 08:35 PM
Re: ¿ Serial del Board Solucionado
Posted: Sat Jul 24, 2021 01:16 AM
Hola yo la tengo funcionando super bien de esta manera :-)

Saluditos :-)

Code (fw): Select all Collapse
Function Tarjeta_Madre()

   LOCAL oLoc := CreateObject( "wbemScripting.SwbemLocator" )
   LOCAL oSrv := oLoc:ConnectServer(,"root\cimv2")
   LOCAL aDrives := oSrv:ExecQuery( "SELECT * FROM Win32_BaseBoard" )
   LOCAL oDrive, cSerialTarj := ""
   LOCAL aData  := {}
   LOCAL nAt

   FOR Each oDrive in aDrives

      AADD( aData, oDrive:SerialNumber )

   NEXT

   FOR nAt := 1 to Len( aData )

      cSerialTarj += Upper( AllTrim( cStr( aData[nAt] ) ) )

   NEXT nAt

Return( cSerialTarj )
Que es mejor que programar? creo que nada :)
Atropellada pero aqui ando :P

I love Fivewin

séʌǝɹ ןɐ ɐʇsǝ opunɯ ǝʇsǝ

Continue the discussion