19 Ene 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.
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.
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.
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.
No Comments