Auto Completado de los Nombres de las Funciones de un Control “Ring” Para DLLs en TestStand



Software Primario: NI TestStand
Versión de Software Primario: 3.5
Versión de Software Primario Corregido: N/A
Software Secundario: N/A

Problema:
En TestStand tengo un paso que llama a una DLL creada. Hago clic derecho sobre el paso y selecciono la opción Specify Module... para especificar con cual DLL es con la que estoy trabajando. Después de especificar la DLL con la que estoy trabajando, espero ver que el control de tipo ring llamado Function Name se acutalize de manera automática con los nombres de las funciones de la DLL. Sin embargo, esto no sucede. Algunas veces recibo la imagen que se encuentra adjunta, "Parameters Info.jpg". ¿Cómo puedo hacer que TestStand cargue los nombres de las funciones de mi DLL en el control tipo ring llamado Function Name de manera automática?

Solución:
El control ring Function Name selecciona la función en el code module (codigo fuente) que el paso llamará. Para poder lograr que el control ring Function Name de manera automática carge los nombres de las funciones de una DLL, esta DLL debe de tener una librería de tipo asociada (type library). Una librería de tipo (type library) provee la informacíon detallada acerca de la interfaz de programación utilizada para acceder a la DLL (ej. Los nombres de las funciones y sus argumentos). Si una DLL contiene una librería de tipo (type library) o si existe una librería de tipo (type library) con el mismo nombre base que la DLL, el adaptador de la DLL, ya sea C/C++ o LabWindows/CVI va a extraer la información de esta librería de tipo (type library) y el control Funtion Name se cargará con los nombres de las funciones de manera automática con todos los nombres de las funciones que contiene esa DLL. En cualquier otro caso, el adaptador para la DLL accesa a la DLL y encuentra los nombres de las funciones que la DLL exporta. Si una librería de tipo (type library) de una DLL contiene ligas a un archivo de ayuda para una función, usted puede dar clic en el botón de ? que se encuentra de un lado del nombre de la función para poder acceder a la ayuda.

El crear una librería de tipo (type library) para una DLL no es necesario para que las funciones de la DLL sean reconocidas por TestStand. Si usted no tiene una librería de tipo (type library), siempre es posible el agregar los parámetros manualmente para cada una de las funciones de la DLL habilitando la opción Edit Prototype y de esta manera insertar los parámetros para que concuerden con la definición conocida de la función de la DLL. Otra opción es habilitar la opción Use Prototype from Module Tab la cual especifica que se ignorará la planilla del prototipo de código y utilizara el prototipo especificado en la pestaña de Module. Esta opción se encuentra en la pestaña de Source Code

Recuerde que para poder llamar una DLL dentro de cualquier ambiente de programación, las funciones de la DLL deben de ser exportadas.

Ligas Relacionadas:
KnowledgeBase 1P68ATSR: How Do I Create a Type Library Using Visual C++?
KnowledgeBase 2NHB2JEV: Embedding Type Libraries in LabWindows/CVI for TestStand DLL Steps
Developer Zone Example: Exporting Variables and Functions from a DLL in LabWindows/CVI

Archivos Adjuntos:


Parameter Info.jpg - Parameter Info.jpg



Día del Reporte: 10/06/1999
Última Actualización: 06/30/2012
Identificación del Documento: 1Q5GNRSR