Comandos de Configuración del sistema

Velneo proporciona un conjunto de comandos que permiten escribir y leer entradas en el fichero de configuración del sistema operativo de una máquina. 

Aprovecharemos esta funcionalidad, al igual que lo hace Velneo, para guardar y recuperar información útil de nuestras aplicaciones.

configuración del sistema

En el sistema operativo Windows los valores de configuración del sistema se guardan en el registro accesible mediante el comando regedit.exe. En Linux, OS X, iOS y Android se guardan en ficheros de texto. En este artículo vamos a centrarnos en Windows, aunque en el resto de plataformas el funcionamiento es el mismo.

Para acceder al registro de Windows tenemos que ejecutar el comando regedit desde la ventana Ejecutar (Tecla Windows+R).

Desde nuestras aplicaciones solo tenemos acceso a la información del registro que cuelga de la rama HKEY_CURRENT_USER y concretamente Velneo guardará siempre todos los valores de configuración en la rama HKEY_CURRENT_USER\SOFTWARE\Velneo.

Rama HKEY_CURRENT_USER (HKCU)
En esta rama se encuentra la configuración del usuario que está actualmente usando el equipo. Los cambios que hagamos en esta rama afectarán solo al usuario actual. Las carpetas del usuario, los colores de la pantalla y la configuración del Panel de control se almacenan aquí. Esta información está asociada al perfil del usuario. Esta clave a veces aparece abreviada como “HKCU”.

En la imagen siguiente se muestra un ejemplo de los valores de configuración en el Editor del Registro.

VAF_04_REGEDIT

Cuando usamos los comandos de Configuración del sistema, debemos tener en cuenta lo siguiente:

    • El ámbito de estos comandos de instrucción es la rama HKEY_CURRENT_USER\Software por lo tanto esta parte de la senda de una entrada del registro debemos omitirla en los parámetros.
    • El parámetro Fórmula de clave raíz es una subrama de Software. Normalmente valdrá Velneo.
    • En el parámetro Fórmula de senda de sección se especifican una o múltiples subcarpetas de la clave raíz, separadas por doble slash \\.
    • El parámetro Fórmula de entrada contiene el nombre de la clave que vamos a leer o escribir
    • La Fórmula de dato contiene la expresión de tipo fórmula que devuelve el valor de cadena o número que vamos a excribir.

Ejemplos:

  • Configuración del sistema: Escribir cadena de texto ( “Velneo”, “Mis_APPS”, “Path_Librerías”, $APP_INFO_CARPETA_LIBRERIAS@MiAplicacion.dat )
  • Configuración del sistema: Leer cadena de texto ( “Velneo”, “Mis_APPS”, “Parametro1”, CPARAMETRO_1 )
  • Configuración del sistema: Escribir cadena de texto ( “Velneo”, “ExtReport”, “zintdir”, sysCacheClientPath)
  • Configuración del sistema: Escribir cadena de texto ( “Velneo”, “WebBrowser\\websettings”, “enableJavascript”, “true” )

¿Qué secciones de la clave Velneo nos pueden interesar para nuestras aplicaciones?

Si revisamos por orden alfabético algunas de las secciones que utiliza Velneo, podemos destacar las siguientes entradas:

HKEY_CURRENT_USER\Software\Velneo\ExtReport\zintdir

Esta configuración es utilizada por VReport para localizar la utilidad de creación de códigos de barras Zint (zint.exe, zint.dll y zlib1.dll).
Podemos adjuntar en nuestro proyecto los 3 ficheros de la utilidad Zint y en el Pre_Init del marco Autoexec ejecutar el comando

Configuración del sistema: Escribir cadena de texto ( “Velneo”, “ExtReport“, “zintdir“, sysCacheClientPath)

HKEY_CURRENT_USER\Software\Velneo\SerialPorts\

En esta sección se guarda la configuración de los Dispositivos series que el usuario utiliza desde la aplicación mediante el comando Puerto serie: Configurar dispositivo.
Por ejemplo, la configuración del objeto Dispositivo serie ARDUINO_PLACA del proyecto de aplicación se guardará en la clave siguiente:

HKEY_CURRENT_USER\SOFTWARE\Velneo\SerialPorts\41mcn2yd.vca\ARDUINO_PLACA

La clave se creará únicamente cuando el usuario cambia la configuración del Dispositivo serie que viene por defecto con la aplicación.

HKEY_CURRENT_USER\SOFTWARE\Velneo\vAdmin\

El componente vAdmin.exe lee las claves LastServer, Servers y LastUser de la sección vAdmin para usarlas como valores iniciales en la ventana de Login.

HKEY_CURRENT_USER\SOFTWARE\Velneo\vClient

El componente vClient.exe también dispone de las claves LastServer, Servers y LastUser para inicializar la ventana de Login.

Las secciones DebuggerV7 y DebuggerJS guardan algunos aspectos del interface de ambos depuradores de código. Si eliminamos ambas secciones al inicio de nuestra aplicación conseguiremos tener siempre el depurador con el mismo aspecto.

La sección EditorFormulasDlg determinará el aspecto del Editor de fórmulas en tiempo de ejecución.

La sección MainWindow guarda para cada usuario/servidor/instancia/ el aspecto de la ventana principal de la aplicación (posición, tamaño, maximizada, …).

Si nuestra aplicación accede a Internet a través de un Servidor proxy con o sin seguridad, la sección proxy contendrá los parámetros de acceso.

HKEY_CURRENT_USER\SOFTWARE\Velneo\vDataClient

El componente vDataClient.exe dispone también de claves para configurar la ventana de login, tamaño de la ventana principal y el aspecto visual del interface.

HKEY_CURRENT_USER\SOFTWARE\Velneo\WebBrowser

Esta sección se corresponde con la configuración del Visor HTML de Velneo accesible a través del botón de la Barra de Herramientas.

Hay que tener en cuenta que esta configuración es común a todos los componentes de Velneo que usen el Visor HTML en la misma máquina y con el mismo usuario conectado. Esto quiere decir que si desde vDevelop se cambia la configuración del Visor HTML, ésta afectará a los Visores HTML de todas las aplicaciones que ejecutemos con el componente vClient. Si desde una aplicación, por ejemplo, cambiamos la clave enableJava a false, el resto de aplicaciones que ejecutamos con el mismo vClient tendrán también el java desactivado en el Visor HTML.

VAF_04_WEBBROWSER

Así que esto es lo mismo que si configuramos el explorador web de la máquina que usarán todas las aplicaciones del usuario conectado.

HKEY_CURRENT_USER\SOFTWARE\Velneo\Mis_APPS

Por supuesto, nosotros también podemos tener nuestra propia sección dentro de la raíz Velneo, por ejemplo Mis_APPS.

Algunos ejemplos de uso:

  • Path de la carpeta con nuestras librerías javascript que usaremos desde el Visor HTML: Mis_APPS\Path_Librerias = D:/MisLibrerias
  • Path del ejecutable del visor para ficheros PDF: Mis_APPS\Path_VisorPDF = C:\Program Files (x86)\Adobe\Acrobat 11.0\Acrobat\Acrobat.exe
  • Valor devuelto por una utilidad externa: Mis_APPS\Resultado_AutoIt3 = resultado
  • Valor del parámetro pasado a la Aplicación: Mis_APPS\Parametro1 = valor del parámetro

Para pasar un parámetro a nuestra aplicación Velneo creamos el siguiente archivo de comandos miAPP_parametros.cmd

@ECHO OFF
 REM Comprueba si hay parámetros
 IF %1.==. GOTO INICIAR
REM Escribe el parámetro en el registro para que lo lea vClient
 REG ADD HKCU\Software\Velneo\Mis_APPS /v Parametro1 /t REG_SZ /d %1 /f
REM Inicia la Aplicación Velneo y cierra el batch
 :INICIAR
 START "VELNEO" "C:\Program Files\Velneo\vClient.exe" vatp://Mi_Usuario:@127.0.0.1/Mi_Aplicacion
 EXIT

Conclusiones

    • A través de las opciones de Configuración del sistema podemos establecer y reiniciar el aspecto visual de los componentes de Velneo.
    • Es también una forma de comunicarnos con aplicaciones de terceros recibiendo parámetros o resultados de otros cálculos.
    • Todas las opciones deben colgar siempre de la rama HKEY_CURRENT_USER\Software\Velneo a la que el usuario tiene siempre acceso total.
    • Hay que tener en cuenta que solo podemos escribir y leer valores de texto o números enteros (ver los comandos de Configuración).
    • Aunque hemos visto el detalle en el sistema operativo Windows, los comandos de Configuración del sistema son multiplataforma.

¿Preparado para utilizar los comandos de configuración del sistema? 

Me gustaría escuchar tu opinión. Déjame un comentario más abajo.

Paco Satué
correo@pacosatu.es

Es un Ingeniero de Telecomunicación de carrera y un Informático-programador por vocación, que empezó en los 80 con DBase, Clipper y FoxBase. Hasta el año 2012 utilizó Visual Foxpro, pero debido a su abandono por parte de Microsoft tuvo que buscar una herramienta de desarrollo alternativa. La elección fue Velneo porque principalmente es una empresa española con soporte cercano, aparte de un producto moderno y adaptado a las últimas tecnologías Cliente-Servidor en Cloud.

No Comments

Post A Comment

Pin It on Pinterest