Inicio > Componentes, Delphi, GLibWMI, Programación, WMI > Componentes GLibWMI

Componentes GLibWMI

Share Button

GLibWMI es una librería/biblioteca de componentes enfocados a la Administración de Sistemas Windows.
Están basados en la WMI de Windows (Windows Management Instrumentation). Podéis conocer algo más sobre WMI en la entrada del blog titulada “WMI – Introducción“.

_________________________________________________________

ACTUALIZACIÓN:  1o/09/2014.

Liberada la Versión 2.1b.

Nuevas propiedades en los componentes y algunos errores corregidos.

Además la librería se ha compilado con Delphi XE7 sin problemas.

ejemplos_thumb.png

<DESCARGAR LIBRERÍA COMPLETA>

<DESCARGAR SOURCE DEMOS>

<DESCARGAR EXE DEMOS>

_________________________________________________________

ACTUALIZACIÓN:  01/08/2013.

Liberada la Versión 2.0b.

Nuevos componentes añadidos (BootConfigurationInfo, DesktopInfo CodecsInfo, RegistryInfo, TimeZoneInfo) y corrección de algunos bugs.
Compilado para las nuevas versiones de Delphi, incluídas XE4 y XE5.

 Versión 2.0 GLibWMI

<DESCARGAR LIBRERÍA COMPLETA>

<DESCARGAR SOURCE DEMOS>

<DESCARGAR EXE DEMOS>

_________________________________________________________

ACTUALIZACIÓN:  23/02/2010.

Liberada la Versión 1.8b.

Nuevos componentes añadidos y corrección de algunos bugs; Correción en la recuperación de propiedades y algunas pérdidas de memoria.

Actualizadas las demos con los nuevos componentes.

Como la anterior verión, los últimos cambios están subidos en Sourceforge (GLibWMI).

<Descargar librería completa;  Sources+Bin>

<Descargar demos; Sources+Bin>

<Descargar demos; Bin>

_________________________________________________________

ACTUALIZACIÓN:  22/01/2010.

Versión 1.6b.

He subido el proyecto a Sourceforge (GLibWMI). La ultima versión estará disponible allí para su descarga.

Se distribuye con licencia GNU y todos los ficheros (incluídos los fuentes se pueden descargar).

Descargar ficheros:

<GLibWMI completa 1.6b>
<GLibWMI demos 1.6b>
<GLibWMI EXE demos 1.6b>

_________________________________________________________

La librería está en fase beta y se puede usar de forma libre y gratuíta.

Las versiones actuales están disponibles (ficheros compilados) para D6, D7 y D2009.

Se pueden descargar diferentes paquetes:

<GLibWMI>
<GLibWMI para Delphi 6>
<GLibWMI para Delphi 7>
<GLibWMI para Delphi 2009>
<Demos compiladas>>

Funciona sin problemas en sistemas basados en Windows 2000 y posteriores.
Para más información consultar:
Operating System Availability of WMI Components

Como bien he dicho, están en fase beta, así que se aditen sugerencias, errores, comentarios,…

Un saludo.

Share Button
  1. Raynel Rodríguez
    Miércoles, 3 de Febrero de 2016 a las 00:22 | #1

    Hola Neftalí, saludos y felicitaciones por tus componentes, son excelentes!!. Tengo un problema o duda, estoy haciendo una aplicación de o cual crea un número serial para validar el programa por primera vez, estoy usando los componentes GLibWMI para realizarlo, en especifico los de BiosCode, pero al correrlo y validarlo con este ejemplo:

    BiosCode:=BiosInfo1.GetHashCode;
    if Hash 0 then
    EdIcode.Text := inttostr(Bioscode)+Claveanhadida
    else
    EdIcode.Text := inttostr(Bioscode);
    Clave := EdIcode.Text;

    El valor que puse en EdIcode varía, sé que si corro la aplicación en modo administrador el valor guardado en esta variable permanece fijo, cómo haría para que el valor permanezca fijo, cualquier ayuda sería excelente, uso Win 8.1. De antemano, muchísimas gracias.

  2. Neftalí
    Miércoles, 3 de Febrero de 2016 a las 09:46 | #2

    @Raynel Rodríguez
    Hola Raynel.
    Tendrías que ponerme algo más de código o enviarme un ejemplo, porque con ese que has puesto, no soy capaz de entender el problema que tienes.

    Un saludo.

  3. Jaume
    Martes, 24 de Enero de 2017 a las 22:31 | #3

    Hola Neftalí,
    Enhorabuena, te felicito. Es de agradecer esta librería.
    ¿El serial number de la propiedad SerialNumber del componente DiskDriveInfo de la GLibWMI que se muestra en los distintos discos es el número de serie del Fabricante, o es el que se asigna al formatear?
    Saludos y gracias por tu tiempo.

  4. Miércoles, 25 de Enero de 2017 a las 09:08 | #4

    @Jaume
    Hola Jaume.
    El serial es realmente el número de serie del fabricante (que no cambia cuando formateas el disco).

    El algunos sistemas antiguos (Windows XP) te devolverá un valor vacío porque no estaba implementado todavía en WMI. A partir de esa versión ya obtienes el valor correcto.

  5. Antonio
    Viernes, 10 de Marzo de 2017 a las 06:50 | #5

    Hola Neftalí.
    Excelentes componentes te mando una felicitación.
    Tengo una duda espero me puedas ayudar, con tus componentes podria desde una pc remota basado en una ip o nombre del equipo en red saber el hardware y software instalado en el equipo remoto?
    En caso de que si se pueda me podrias ayudar diciendome como poder hacerlo o cual componente usar con un pequeño ejemplo?
    De antemano muchas gracias.
    Saludos.

  6. Viernes, 10 de Marzo de 2017 a las 08:47 | #6

    @Antonio
    Hola Antonio.
    Gracias por la felicitación.
    En prinicpio WMI permite sin problemas conectarse tanto a un equipo local, como a otros equipos de una red, siempre que tengas permisos de acceso (y poseas usuario y contraseña).

    En mi caso esta librería inicialmente se pensó para una conexión local, así que en su día no publiqué las propiedades de usuario y contraseña, pero sí están presentes en el método de conexión, así que podrías modificar con muy poco esfuerzo el código para publicar esas propiedades.

    Si buscas en la unit CWMIBase (que usan todos lo componentes) verás que hay un método para realizar la conexión:

    //: Conectar al proveedor.
    procedure TWMIBase.ConnectWMI();

    Que posee la siguiente llamada:

    // Connect to the WMI service, with the root\cimv2 namespace
    aServices := Locator.ConnectServer(
    Self.FHost, // Host
    GetWMIRoot(), // root
    {user}STR_EMPTY, {password}STR_EMPTY,
    STR_EMPTY, STR_EMPTY, 0, nil);

    El Host, el usuario y el password se inicializan con: ‘.’ y 2 cadenas vacías. Eso corresponde a un equipo local (al mismo equipo donde se ejecuta), pero si cambias esos parámetros por el nombre/IP de otro equipo, un usuario y una contraseña válida, deberías poder acceder sin problemas a otros equipos de la red.

    Pruébalo y dime qué tal te ha ido.

    Un saludo.

Comment pages
1 2 589
  1. Sin trackbacks aún.
What is 14 + 27 ?
Please leave these two fields as-is:
IMPORTANTE! Para continuar, debes contestar la pregunta anterior (para evitar SPAM) :-)