Pasar argumentos de la línea de comandos a un ejecutable de LabVIEW

Actualizado el Dec 1, 2021

Ambiente

Software

  • LabVIEW

Sistema Operativo

  • Windows

Puede ser conveniente tener un ejecutable de LabVIEW que se inicie en diferentes estados o con diferentes parámetros de entrada. Cuando se inicia un ejecutable de LabVIEW desde la línea de comandos usando el sistema operativo Windows, puede pasar argumentos definidos por el usuario a la aplicación siempre que la máquina tenga el motor de tiempo de ejecución apropiado y los controladores necesarios. Tenga en cuenta que la sintaxis para llamar a un ejecutable de LabVIEW con argumentos de línea de comando difiere entre las versiones de LabVIEW. Cuando LabVIEW pasa los argumentos de la línea de comando al ejecutable de LabVIEW, puede hacer referencia a los argumentos mediante programación. Este documento describe cómo se logra esto y para comprender mejor, debe saber cómo crear un ejecutable de LabVIEW y cómo usar el property node (en inglés).

Los argumentos que se pasan de la línea de comandos al ejecutable de LabVIEW se referencian programáticamente en el diagrama de bloques usando la Aplicación: Command Line Arguments (en inglés) de la línea de comandos de un nodo de propiedad, como se muestra en la Figura 1.


Figura 1 . Nodo de propiedades de argumentos


Los argumentos vienen como un array de cadenas. El primer elemento del array es siempre el nombre de la aplicación.

En LabVIEW 2019 y posteriores, la paleta Application Control incluye el nuevo VI Get Command Line Arguments ( Figura 2 ). Este VI devuelve los argumentos definidos por el usuario pasados desde la línea de comando junto con el nombre de la aplicación.



Figura 2 . Get Line Arguments VI

Las instrucciones para pasar los argumentos a través de la línea de comando se dan a continuación.


LabVIEW 8.0 y posterior

Con la introducción del proyecto en LabVIEW 8.0, primero necesita habilitar el paso de argumentos de línea de comando en la especificación de construcción de la aplicación. Para hacer esto, siga estos pasos:
  1. Haga clic con el botón derecho en  Build Specifications en el Project Explorer del proyecto completado
  2. Seleccione New>>Application (EXE)
  3. Navega a la categoría Advanced
  4. Marque la casilla Pass all command line arguments to application (Figura 3)


Figura 3 . Casilla de verificación de categoría avanzada


Para pasar los argumentos de la línea de comando a la aplicación y acceder a ellos en su código, utilice el ejecutable desde el símbolo del sistema y agregue argumentos de entrada separados por espacios. Por ejemplo, si se compiló Test.exe , se podría llamar de la siguiente manera, donde 1000 y sine son argumentos de línea de comando:


"<build directory>\test.exe" 1000 sine


Si la opción de Pass all command line arguments to application no está seleccionada en la especificación de compilación, la aplicación aún puede recibir argumentos de la línea de comandos usando la sintaxis de LabVIEW 7.x.


LabVIEW 7.x


Los argumentos definidos por el usuario comienzan después de dos guiones (––) rodeados por espacios en la línea de comando. Por ejemplo, utilizando el mismo ejecutable de LabVIEW mencionado anteriormente; Test.exe , podría ser llamado por lo siguiente:

"<build directory>\test.exe" –– 1000 sine

LabVIEW 6.1 o versiones anteriores


Windows : utilice la función GetCommandLine () de la API de Windows para leer la línea de comandos que inició la aplicación actual. Analice la cadena devuelta por la función para obtener los argumentos de la línea de comando.

UNIX : LabVIEW no puede leer directamente argumentos de línea de comandos en sistemas UNIX, pero puede leer variables de entorno. Ejecute LabVIEW con una variable de entorno configurada con los argumentos que desea pasar. Por ejemplo, en bash ejecute la siguiente línea: LVARGS = "arg1 arg2 arg3" labview &. Ahora en System Exec VI, use echo $ LVARGS como la cadena de línea de comando y use la cadena devuelta en su aplicación. La misma línea en bash también funciona para un ejecutable de LabVIEW al cambiar Labview en la línea de arriba por el nombre del ejecutable.

Para obtener más información sobre el uso de argumentos de línea de comando en LabVIEW, consulte los enlaces relacionados a continuación o busque "command line" en la Ayuda de LabVIEW.