Archivo

Archivo para la categoría ‘Componentes’

Actualizada a la versión 3.0 la librería de componentes GLibWMI

jueves, 30 de julio de 2020 4 comentarios
Share Button

ImagenLibreria_154x154Aunque “oficialmente” es una actualización de la librería GLibWMI, que pasa a la versión 3.0, se ha reescrito el código de todos los componentes. A continuación se listan las novedades de esta actualización.

El código fuente estará a partir de esta versión en GitHub:

https://github.com/NeftaliDelphi/GLibWMI

Hasta ahora se consideraba en estado “beta” y esta versión pasa a ser “estable”.

  • Soporte desde Delphi6, Delphi7,… Delphi XE, XE2, XE3, XE4, XE5… Delphi 10.4
  • Reescrito todo el código completo de los componentes.
  • Se añade documentación a las propiedades y métodos de los componentes.
  • Nuevos Iconos para todos los componentes.
  • en esta versión se distribuyen los componentes en la paleta en 2 categorías (software y Hardware).
  • Añadidas nuevas demos de los componentes y se ha actualizado las existentes.
  • Se añaden nuevos componentes a la librerías:
    • PnpEntityInfo: Información de dispositivos Plug&Play.
    • FanInfo: Información de los ventiladores existentes en el sistema.
    • ProductInf: Información de los productos instalados en el sistema.
    • VideoControllerInfo: Información de los controladores de video presentes en el sistema.
    • DisplayInfo pasa a ser DisplayConfigurationInfo.

Captura_2020-06-29 14_04_45

El link a todas las actualizaciones de la librería está aquí.

He añadido al repositorio las demos compiladas para poder descargarlas y probar el funcionamiento, aunque estaría bien poder tener feedback de la compilación en diferentes versiones de Delphi (lo he probado en algunas, pero no en todas).

A continuación adjunto una descripción básica de la funcionalidad de cada uno de los componentes.

TBIOSInfo: La clase Win32_BIOS representa los atributos del servicio de entrada y salida básico del sistema (BIOS, Basic Input/Output Service) instalado en el equipo.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-bios

TComputerSystemInfo: La clase Win32_ComputerSystem representa el sistema operativo de un equipo en un entorno Win32.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-computersystem

TServiceInfo: La clase Win32_Service representa un servicio en un sistema Win32. Un aplicación de servicio cumple las reglas de la interfaz del Administrador de control de servicios (SCM, Service Control Manager) y un usuario la puede iniciar automáticamente al arrancar el sistema a través del programa Servicios del Panel de control o mediante una aplicación que utilice las funciones de servicio de la API de Win32. Los servicios se pueden ejecutar aunque ningún usuario haya iniciado sesión en el sistema.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-service

TPnPEntityInfo: La clase Win32_PnPEntity representa las propiedades de un dispositivo Plug and Play. Las entidades Plug and Play se muestran como entradas en el Administrador de dispositivos que se encuentra en el Panel de control.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-pnpentity

TDiskPartitionInfo: La clase Win32_DiskPartition representa las posibilidades y la capacidad de administración de un área con particiones en un disco físico de un sistema Win32. Ejemplo: Disco nº 0, Partición nº1.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-diskpartition

TProcessorInfo: La clase Win32_Processor representa un dispositivo capaz de interpretar una secuencia de instrucciones de código máquina en un equipo Win32. En un equipo multiprocesador, habrá una instancia de esta clase para cada procesador.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-processor

TDiskDriveInfo: La clase Win32_DiskDrive representa una unidad física de disco tal y como la percibe un equipo donde se ejecuta el sistema operativo Win32. Cualquier interfaz a una unidad física de disco de Win32 es un descendiente, o miembro, de esta clase. Las características de la unidad de disco vistas a través de este objeto corresponden a las características de administración y la lógica de la unidad. En algunos casos, esto puede no reflejar las características físicas reales del dispositivo. Cualquier objeto basado en otro dispositivo lógico no sería un miembro de esta clase. Ejemplo: Disco fijo IDE.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-diskdrive

TCDROMDriveInfo: La clase Win32_CDROMDrive representa una unidad de CD-ROM en Win32_ComputerSystem.

Nota: el nombre de la unidad no se corresponde con la letra de unidad lógica asignada al dispositivo.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-cdromdrive

TVideoControllerInfo: La clase Win32_VideoController representa las posibilidades y la capacidad de administración de la controladora de vídeo en un equipo Win32. Ejemplos: fabricante del adaptador de vídeo, versión del conjunto de chips, resolución de la pantalla y número de colores.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-videocontroller

TUSBControllerInfo: La clase Win32_USBController administra las capacidades de una controladora de bus serie universal (USB).

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-usbcontroller

TKeyboardInfo: La clase Win32_Keyboard representa un teclado instalado en un sistema Win32. Ejemplo: Un teclado Natural(R) de Microsoft

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-keyboard

TDesktopMonitorInfo: La clase Win32_DesktopMonitor representa el tipo de dispositivo de pantalla o monitor conectado al equipo.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-desktopmonitor

TPointingDeviceInfo: La clase Win32_PointingDevice representa un dispositivo de entrada usado para señalar y seleccionar zonas de la pantalla en un equipo Win32. Cualquier dispositivo usado para controlar un puntero o señalar en la pantalla de un equipo Win32 es miembro de esta clase. Ejemplo: un mouse, teclado táctil o tablillas de escritura o plumas.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-pointingdevice

TNetworkAdapterInfo: La clase Win32_NetworkAdapter representa un adaptador de red en un sistema Win32.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-networkadapter

TBatteryInfo: La clase Win32_Battery representa una batería conectada al sistema del equipo. Esta clase se aplica a las baterías en los sistemas portátiles y otras baterías internas/externas.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-battery

TSoundDeviceInfo: La clase Win32_SoundDevice representa las propiedades de un dispositivo de sonido instalado en un sistema Win32.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-sounddevice

TFanInfo: La clase Win32_Fan representa las propiedades de un ventilador del equipo. Por ejemplo, el ventilador para la refrigeración de la CPU.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-fan

TPrinterInfo: Capacidades y administración del dispositivo lógico de la impresora.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-printer

TUserAccountInfo: La clase Win32_UserAccount contiene información acerca de una cuenta de usuario de un sistema Win32.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-useraccount

TOperatingSystemInfo: La clase Win32_OperatingSystem representa un sistema operativo instalado en un sistema Win32. Los sistemas operativos que se pueden instalar en un sistema Win32 son descendientes (o miembros) de esta clase. Ejemplo: Microsoft Windows 95.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-operatingsystem

TProcessInfo: La clase Win32_Process representa una secuencia de eventos en un sistema Win32. Cualquier secuencia compuesta por la interacción de uno o más procesadores o intérpretes, código ejecutable y un conjunto de datos de entrada, es un descendiente (o miembro) de esta clase. Ejemplo: una aplicación cliente que se ejecuta en un sistema Win32.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-process

TPrintJobInfo: CIM_Job es un elemento lógico que representa una unidad de trabajo para un sistema, tal como un trabajo de impresión. Un trabajo es distinto a un proceso, en el sentido en que un trabajo se puede programar.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-printjob

TEnvironmentInfo: La clase Win32_Environment representa una configuración de entorno o de sistema en un sistema Win32.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-environment

TShareInfo: La clase Win32_Share representa un recurso compartido en un sistema Win32. Puede tratarse de una unidad de disco, impresora, comunicación entre procesos u otro dispositivo que se pueda compartir. Ejemplo: C:\PUBLIC.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-share

TCodecFileInfo: La clase Win32_CodecFile representa el códec de audio o vídeo instalado en el equipo. Los códecs convierten un tipo de formato de medio en otro, normalmente un formato comprimido a uno descomprimido. El nombre «códec» deriva de una combinación de «compress» (comprimir) y «decompress» (descomprimir). Por ejemplo, un códec puede convertir un formato comprimido como MS-ADPCM a un formato sin comprimir como PCM, que la mayor parte del hardware de audio puede reproducir directamente.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-codecfile

TRegistryInfo: La clase Win32_Registry representa el Registro del sistema en un sistema Win32.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-registry

TPhysicalMemoryInfo: La clase Win32_PhysicalMemory representa un dispositivo de memoria física que se encuentra en un sistema como disponible para el sistema operativo.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-physicalmemory

TProductInfo: Las instancias de esta clase representan productos instalados por MSI. Por lo general, un producto suele estar correlacionado con un solo paquete de instalación.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-product

TTimeZoneInfo: La clase Win32_TimeZone representa la información de zona horaria para un sistema Win32. Esta información incluye los cambios necesarios para la transición a y desde el horario de verano.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-timezone

TDesktopInfo: La clase Win32_Desktop representa las características comunes del escritorio de un usuario. El usuario puede modificar las propiedades de esta clase para personalizar el escritorio.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-desktop

TStartupCommandInfo: La clase Win32_StartupCommand representa un comando que se ejecuta automáticamente cuando un usuario inicia sesión en el equipo.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-startupcommand

TBootConfigurationInfo: La clase Win32_BootConfiguration representa la configuración de arranque de un sistema Win32.

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-bootconfiguration

TDisplayConfigurationInfo: La clase Win32_DisplayConfiguration representa la información de configuración del dispositivo de pantalla en un sistema Win32. Esta clase quedó obsoleta en favor de las propiedades de las clases Win32_VideoController, Win32_DesktopMonitor y CIM_VideoControllerResolution

MSDN link: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-displayconfiguration

Como siempre los comentarios, sugerencias, críticas (sin son constructivas) son bienvenidas.

Share Button
Categories: Componentes, Delphi, GLibWMI, WMI Tags:

Librería de componentes GLibWMI (actualización)

miércoles, 3 de abril de 2019 2 comentarios
Share Button

Estos días he dedicado un poco de tiempo a revisar esta librería de componentes GLibWMI para trabajar con WMI que ya hace unos años diseñé. Ya he comentado otras veces que por el tipo de código que contiene (en su día la diseñé con Delphi 6) debe compilar sin mayores problemas en versiones posteriores, salvo algunos Warnings (por conversión de tipos de datos) y algún Hint, que no afectan al funcionamiento de los componentes.

He compilado el paquete de componentes con la versión 10.2 Tokyo y he icluído algunas directivas de compilación.

Captura_2019-04-03 11_48_36   Captura_2019-04-03 11_50_24

La librería se ha actualizado a la versión 2.2b y he recompilado los ejemplos y demos que la acompañan.

He mantenido las descargas anteriores por si alguien necesita descargarlas.

Aquí tenéis el acceso a la sección donde se detallan los cambios.

Captura_2019-04-03 12_01_14

Share Button

Actualización de GLibWMI a Delphi XE7 (2.1b)

miércoles, 10 de septiembre de 2014 4 comentarios
Share Button

Imagen_entrada1Como he hecho en otras ocasiones coincidiendo con el lanzamiento de las nuevas versiones de Delphi, en este caso también he realizado la compilación de la librería para la versión XE7 de Delphi.

En esta versión, aprovechando, he añadido alguna mínima corrección y algún cambio sugerido por los usuarios.

Además de alguna demo nueva para el componente de consultas WMI.

Tenéis una descripción más amplia de la librería y algunas capturas de pantalla junto con el listado de todos los componentes que incluye, en la sección dedicada a ella.

Los componentes también se pueden descargar desde Sourceforge.

ejemplos

 

Se puede descargar la librería completa, las demos compiladas (sólo ejecutables) y el código fuente de las demos.

Share Button

Contenido actualizado en Dropbox

jueves, 1 de agosto de 2013 Sin comentarios
Share Button

He actualizado el contenido de la web en DropBox para que estén en todo momento accesibles los ejemplos, artículos, documentación,… Más detalles de todo ello en esta entrada.

He incluido los últimos ficheros añadidos a las entradas, la última versión de las librerías GLibWMI y los últimos ficheros de otras secciones como la de las rxLib en este blog.

Si os vais a dar de alta os agradecería que usarais esta invitación, de esta forma a ambos nos ofrecen un poco más de espacio, que nunca va mal…  ;-)

 

Un saludo.

Share Button
Categories: Código, Componentes, Ejemplos Tags:

Actualización de la librería GLib (versión 1.3)

viernes, 9 de septiembre de 2011 5 comentarios
Share Button

He actualizado la librería de componentes Glib a la versión 1.3

Se han corregido algunos pequeños errores y se han implementado algunas sugerencias de usuarios que los están utilizando. En el fichero leeme.txt que se adjunta con el paquete hay descripción detallada de los cambios, así como en el código de los componentes, donde están comentados igualmente los que afecta a cada uno.

He compilado el paquete en Delphi XE, sin mayores problemas (como era de esperar   ;-D ) y he dejado el fichero del package, junto con el resto.

Podéis descargar este paquete de componentes y algún otro desde la sección de componentes de la página.

Desde la misma página también podéis descargar los componentes de forma individual.

Como siempre, cualquier sugerencia, comentario, corrección,…  será bienvenida.

 

Share Button
Categories: Componentes, Delphi, GLib Tags: , ,

Actualización de las RxLib -no oficial-

viernes, 18 de marzo de 2011 4 comentarios
Share Button

Esta semana se ha publicado un nueva versión «no-oficial» de las RxLib que soporta Delphi XE; En mi caso hace unos días había hablado sobre una versión «portada» (con pequeños cambios) para que funcionara en la última versión de Delphi. Esta incluye nuevas funciones y nuevos componentes (17 según leo). Podéis ver la los cambios principales introducidos en esta versión revisando esta página. Desde ahí mismo o desde esta página de recopilación de versiones podéis descargar esta versión.

Por cierto, el link de descarga aparece en la página de recopilación o podéis user el que aparece debajo de estas líneas:

<Link de Descarga RxLib v2.75_1.0_D5_DXE>

Share Button

RxLib para RadStudio XE

jueves, 17 de febrero de 2011 8 comentarios
Share Button

A la sección de «Recopilatorio de las RxLib», he subido una nueva versión (oficiosa como las últimas) que compila bien en la nueva versión de Dephi (RAD Studio XE). Los ficheros de INCLUDE están actualizados para la nueva versión y he añadido alguna directiva de compilación para evitar errores segun diferentes configuraciones.

He modificado algunas units en la demo principal (RxDemo) de forma que compile para las últimas versiones.

Un saludo y a disfrutarla.  ;-)

Share Button

Versión 1.5 del componente TSelectOnRuntime

viernes, 3 de diciembre de 2010 4 comentarios
Share Button

Hace unos días, a partir de unos comentarios y alguna petición sobre este componente por parte de usuarios, he corregido algun bug en el componente y he añadido algo de código. Actualizado la ayuda y recompilado las demos.

También he comprobado que funciona perfectamente en la nueva versión de Delphi, RAD Studio XE sin cambio alguno.

Corregidos unos problemas relacionados con los Anchors del componente y también cuando los componentes seleccionados tenían alineación alClient.

Para acceder a este componente puedes ir a la página de TSelectOnRuntime o acceder a la librería GLib completa desde aquí.

Share Button
Categories: Componentes, Delphi Tags: ,

Componente TPanelMiniaturas v.1.1110

lunes, 22 de noviembre de 2010 18 comentarios
Share Button

TPanelMiniaturas es un componente pensado para gestionar una lista o colección de miniaturas, que enlazan con una lista de imágenes. Está pensado para gestionar la colección tanto en diseño como en ejecución.

Permite añadir imágenes de forma individual, en bloque (mediante una carpeta) y arrastrándolas desde el explorador.

Diferentes opciones para personalizar la lista de miniaturas.

Además permite gestionar de forma automática un «pase de diapositivas»; Se configura la velocidad de visualización y automáticamente el componente realiza un pase en «loop» por todas las imágenes almacenadas en la colección.

IMPORTANTE: Esta primera versión del componente no tiene en cuenta el consumo de memoria, algo que sí está previsto para las posteriores versiones, así que no es aconsejable utilizaro con un gran número de imágenes ni que tengan gran tamaño.

La autoría de este componente es compartida. De un ejemplo generado en mi web, Salvador Jover (Delphi básico) tuvo la idea de generar un componente; Creó la estructura básica utilizando colecciones y a partir de ahí, casi sin comerlo ni beberlo, fuimos añadiendo propiedades y características hasta generar esta primera versión.     ;-D

Tanto en mi web, como en la suya iremos publicando más cosas sobre el componente, así que si te interesa puedes estar atento a ambas. Igualmente aceptamos sugerencias, correcciones, modificaciones,… y cualquier otra que sirva para mejorarlo y enriquecerlo. El código está disponible para uso libre. Si realizáis cambios o mejoras os agradeceríamos que nos los comuniquéis para añadirlos al componenete.

Diseño de clases del componente (Click para agrandar).

Puedes descargar tanto los fuentes completos del componente como las demos compiladas, por si te interesa probarlo sin necesidad de instalarlo, en los siguientes enlaces:

<Sources TPanelMiniaturas>

<Demo EXE TPanelMiniaturas>

AÑADIDO(22/11): En el blog de Salvador podéis consultar una lista de Tarea/Bugs/Mejoras/…   tanto de esta primera versión, como las propuestas para las próximas. Algo así como el «estado actual» y el «libro de ruta» de este pequeño proyecto.

Un saludo.

Share Button

Componente TPanelMiniaturas (En proceso…)

jueves, 4 de noviembre de 2010 4 comentarios
Share Button

A raiz de la última entrada de este blog respecto a crear componentes en un ScrollBox, y el ejemplo que desarrollé para mostrarlo creando un simple visualizador de imágenes y sus minuatura, Salvador (Delphi básico) y yo mismo, nos hemos propuesto crear un componente que permita gestionar estas miniaturas.

La idea inicial, era simplemente recordar y practicar determinados conceptos sobre componentes, pero poco a poco la cosa ha ido tomando forma y el resultado (por ahora en desarrollo todavía) se está tornando bastante interesante.

El componente TPanelMiniaturas está pensado como una colección  (TCollection) de minuaturas (TCollectionItems). Además se complementa con un componente adicional que se encarga de «pintar» las minuaturas en pantalla y que está ligado a cada ítem de la colección. Debe permitir gestionar esas miniaturas en diseño y en ejecución y facilitar al programador métodos para trabajar con ellas.

Podéis ver más imágenes y detalles del diseño del componente en esta entrada de la web de Salvador:  «Panel de miniaturas» y seguir las últimas ideas que se nos van ocurriendo aquí (debate en facebook). Estamos abiertos a cualquier idea y sugerencia, así que si alguien se anima, que «no se corte»…  ;-)

Un saludo.

Share Button
Categories: Componentes, Delphi Tags: ,