World Map
Java Service Wrapper is the easiest way to make your product more reliable.
  • Free Trial
  • Buy Now
Personalizando su Aplicación (Windows)

Personalizando su Aplicación (Windows)

Personalizar su Wrapper

Compatibilidad :3.3.7
Ediciones :Edición ProfesionaEdición EstándarEdición de la Comunidad (No Soportado)
Plataformas :WindowsMac OSX (No Soportado)Linux (No Soportado)IBM AIX (No Soportado)FreeBSD (No Soportado)HP-UX (No Soportado)Solaris (No Soportado)IBM z/OS (No Soportado)IBM z/Linux (No Soportado)

Con el lanzamiento de la versión 3.3.7 del Wrapper, el Wrapper proporciona la capacidad de cambiar algunos de sus recursos y personalizar su apariencia en Windows.

Al personalizar la versión sin consola (consoleless) del binario del Wrapper "wrapperW.exe", una nueva versión del binario (Ejemplo: MyApp.exe) será creada, conteniendo los nuevos recursos especificados con el comando "--customize". El binario resultante se bloqueará, lo que significa que no será más posible personalizarlo.

Al crear un nuevo binario personalizado, cualquiera de los siguientes argumentos pueden ser combinados. El argumento "--target {target.exe}" es siempre necesario.

Por favor tenga en cuenta que las rutas para todos los nombres de archivos son relativas a la ubicación del binario del Wrapper, y no necesariamente relativa a la ubicación del comunicador. Por ejemplo, el siguiente comando creará un archivo de abjectivo en el mismo directorio que el binario "wrapperW.exe" y esperase encontrar el nuevo ícono y la pantalla de bienvenida en el mismo directorio:

bin\wrapperw.exe --customize --target myapp.exe --icon myicon.ico --splash mysplash.bmp

NOTA

Desde la versión 3.5.7 de Wrapper, los binarios de Windows del Wrapper tienen el codigo firmado para verificar que el binario es original de nosotros. Sin embargo, por favor note que personalizar su binario quitará el certificado del binario.

El objetivo ejecutable

Cuando se personaliza el binario del Wrapper, es necesario siempre especificar un nuevo nombre de archivo para la versión personalizada. El Wrapper siempre sobrescribirá el archivo si ya existe.

wrapperw.exe --customize --target myapp.exe

Poner el parámetro en su conjunto daría como resultado una línea de comando como esta:

bin\wrapperw.exe --customize --icon MyIcon.ico --splash MySplash.bmp --target MyApp.exe

Este comando creará un nuevo ejecutable MyApp.exe en el mismo directorio que se ubica "wrapperW.exe", con un ícono personalizado y una Pantalla de Bienvenida.

Personalizar wrapperw sin mostrar el cuadro de diálogo

Al personalizar wrapperw.exe, aparecerá un cuadro de diálogo para mostrar la salida del registro. Esto es útil para confirmar si la personalización terminó con éxito o si tuvo algunos errores. Sin embargo, en algunos casos, como cuando se inicia la personalización por un script, mostrar un cuadro de diálogo puede bloquear el proceso, ya que se requiere interación humana para cerrar la ventana. Por esta razón, el parámetro '--silent' fue añadido a la versión 3.5.34 de Wrapper para nunca mostrar el diálogo de salida cuando se personaliza wrapperw.exe. Recuerde que la propiedad wrapper.logdialog.enable, que controla si el cuadro de diálogo debe ser mostrado al finalizar cuando se ejecuta el Wrapper normalmente, no puede ser usado cuando se personaliza los binarios porque el archivo de configuración no se carga durante el proceso de personalización.

Ejemplo:
wrapperw.exe --customize --silent --target myapp.exe

NOTA

wrapperW.exe es una aplicación GUI, y cuando se lanza desde una consola, CMD.EXE no esperará a que se termine el proceso. Esto significa que el código de salida no puede ser capturado directamente. Si se especifica la opción --silent option, puede ser difícil decir si el proceso terminó con éxito o no, por lo que puede ser útil preceder al comando anterior con 'start /wait ' para esperar el proceso y capturar su código de salida.

Personalizar el ícono

NOTA

Esta funcción requiere las ediciones Estándar o Profesional del Java Service Wrapper.

El Wrapper viene con un ícono predeterminado. Sin embargo, el Wrapper ha probado ser un excelente lanzador de aplicaciones, y con esta finalidad, el desarrollador de software puede querer reemplazar el ícono con el del producto con el cual se está usando el Wrapper.

El archivo del ícono es un archivo estándar con multiples capas, que contiene todos los tamaños de íconos que necesitan ser compatibles.

Ejemplo:
wrapperw.exe --customize --target myapp.exe --icon myicon.ico

Lo siguiente es una captura de pantalla de un directorio conteniendo un MyApp.exe personalizado, así como copias renombradas de las 3 ediciones del Java Service Wrapper y sus íconos predeterminados.

Personalizar la pantalla de bienvenida

NOTA

Esta funcción requiere las ediciones Estándar o Profesional del Java Service Wrapper.

La versión sin consola del binário del Wrapper, "wrapperW.exe", por defecto mostrará una pantalla de bienvenida al iniciar. Se puede personalizar esta pantalla de bienvenida con una imagen representando el producto en que se usa el Wrapper.

El binario wrapper.exe del Wrapper no mostra una pantalla de bienvenida, por lo tanto, no se permite el argumento para personalizar la pantalla de bienvenida.

Hacer que el Wrapper muestre una pantalla de bienvenida en lugar de hacerlo desde dentro de Java tiene el benefício de hacer que el inicio de las aplicaciones parezca muy receptivo. Esto es porque la pantalla de bienvenida aparece antes que la máquina JVM sea lanzada y puede permanecer visible mientras las clases de Java se cargan e inician.

La forma como la pantalla de bienvenida se comporta puede ser controlada con la propiedad wrapper.splashscreen.mode.

Ejemplo:
wrapperw.exe --customize --target myapp.exe --splash mysplash.bmp

Actualmente solamente archivos bitmap (*.bmp) son compatibles. No hay resctricciones en el tamaño o profundidad de bits.

Pantalla de bienvenida predeterminada de la edición Profesional del Java Service Wrapper.

Pantalla de bienvenida predeterminada de la edición Estándar del Java Service Wrapper.

Ejemplo de pantalla de bienvenida personalizada.

Personalizar el archivo de configuración predeterminado

Por defecto, si el binario del Wrapper es llamado sin especificar ningun archivo de configuración, el Wrapper asumirá que debe usar el archivo de conficuración en el mismo directorio en el cual se ubica el ejecutable. Esto es un archivo llamado {MyApp}.conf, mientras que la denominación {MyApp} se basa en el nombre del archivo ejecutable. Por ejemplo: si el archivo ejecutable se llama "test.exe", el Wrapper intenrará abrir "test.conf".

Ejemplo:
wrapperw.exe --customize --target myapp.exe --conf ../conf/myconf.conf

Esta opción es muy útil cuando usada con la opción "--passthrough" descrita a continuación.

NOTA

Rutas relativas deben ser relativas a la ubicación del ejecutable del Wrapper.

NOTA

Esta opción fue añadida en la versión 3.5.5 del Wrapper.

Personalizar el comportamiento de la línea de comandos

Por defecto, el Wrapper interpreta los parámetros por si mismo. Cualquier parámetro que debería ser pasado a la aplicación de la JVM, debería ser definido con la propiedad wrapper.app.parameter.<n>. En la versión 3.5.2 del Wrapper, el comando "--" fue añadido para facilitar el pase a la aplicación de la JVM. No obstante, personalizar su aplicación con esta opción hará con que el Wrapper se ejecute en segundo plano y hará con que el ejecutable parezca a una aplicación nativa de Windows.

Al activar esta funccionalidad, solo requiere agregar el parámetro "--passthrough" en el comando para personalizar su ejecutable del Wrapper. El nuevo ejecutable iniciará su aplicación inmediatamente.

Puesto que el Wrapper pasará todos los parámetros a la máquina JVM, no será más posible especificar el archivo de configuración desde la línea de comando. El nuevo ejecutable por su vez intentará usar el archivo de configuración predeterminado. Para cambiar el archivo de configuración predeterminado, por favor considere usar la opción "--conf" descrita anteriormente.

Ejemplo:
wrapperw.exe --customize --target myapp.exe --passthrough

ADVERTENCIA

La línea de comando entera será pasada a la máquina JVM, haciendo con que el Wrapper no escuche a ninguna entrada de la línea de comando y el ejecutable personalizado no podrá instalar la aplicación como un servicio de Windows.

NOTA

Esta opción fue añadida en la versión 3.5.5 del Wrapper.

Personalizar el fabricante

El binario del Wrapper tiene un recurso de información de versión definido, que especifica la información del archivo básico como número de versión, copyright, descripción del archivo, fabricante, etc. Distribuidores, que empaquetan sus aplicaciones con el Wrapper y quieren poner su propia información adelante del binario del Wrapper, pueden querer reemplazar el nombre del fabricante en el binario de "Tanuki Software, Ltd." para el nombre de su empresa.

Ejemplo:
wrapperw.exe --customize --target myapp.exe --manufacturer "My Example Company"

NOTA

Esta opción fue añadida en la versión 3.5.10 del Wrapper.

Personalizar la configuración

Desde la versión 3.5.35 del Wrapper, es posible incrustar cualquier propiedad de configuración en los binarios del Wrapper.

Hay cuatro opciones para hacerlo:

  • properties-default para modificar los valores predeterminados de las propiedades listadas en la línea de comandos
  • property-file-default para modificar los valores predeterminados de las propiedades listadas en el archivo de configuración.
  • properties-final para incrustar propiedades "final" (que no pueden ser alteradas), listándolas en la línea de comandos.
  • property-file-final para incrustar propiedades "final" (que no pueden ser alteradas), obteniéndolas desde el archivo de configuración.
Ejemplo (listando las propiedades en la línea de comandos):
wrapperw.exe --customize --target myapp.exe --properties-default wrapper.console.format=LPTM --properties-final wrapper.name="testwrapper" wrapper.displayname="Test Wrapper Sample Application" wrapper.description="Test Wrapper Sample Application Description"

Cuando las propiedades de configuración son listadas directamente en la línea de comandos, ellas deben ser separadas por un 'espacio'. Cualquier valor que contenga espacios debe ser envuelto por comillas dobles.

Ejemplo (usando archivos de configuración):
wrapperw.exe --customize --target myapp.exe --property-file-default ../conf/wrapper-embedded-default.conf --property-file-final ../conf/wrapper-embedded-final.conf

Es posible incrustrar las propiedades de la licencia en los binarios del Wrapper.

Ejemplo:
wrapperw.exe --customize --target myapp.exe --property-file-final ../conf/wrapper-license.conf

Para visualizar qué propiedades se han incrustado en su archivo .exe de destino, usted puede usar los tokens 'S' o 'Z' de la propiedad wrapper.properties.dump.format y configurar wrapper.properties.dump.loglevel a INFO.

Desde la versión 3.5.36 del Wrapper, el archivo de configuración ya no es necesario, ya que los binarios se han personalizado con propiedades incrustadas. Incrustar toda la configuración es una buena manera de facilitar el lanzamiento de su aplicación!

Desde la versión 3.5.37, también es posible omitir el archivo de configuración al especificar '-' en la línea de comandos usada para lanzar al Wrapper. Esto permite al usuario añadir propiedades de la línea de comandos después de '-' y anular la configuración incrustada predeterminada.

NOTA

Desde la versión 3.5.36 del Wrapper, las variables de entorno y cualquier variable referenciada en los valores de las propiedades de configuración ya no se expandirán durante la personalización. Sus valores se resolverán en el tiempo de ejecución. Las variables a las que se hace referencia en directivas y rutas de archivos include se seguirán expandiendo durante la personalización.

Referencia: Propriedades de Configuración WrapperW

Propriedades usadas para