by J. Ernesto » Tue Nov 06, 2012 7: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:
*/
*
*
*
*