¿Cómo Convierto una Dirección de LabVIEW en un String de ANSI C?



Software Primario:
Versión de Software Primario: N/A
Versión de Software Primario Corregido: N/A
Software Secundario: LabWindows/CVI Development Systems>>Base Package

Problema:
¿Cómo convierto un tipo de dato de Dirección de LabVIEW en un tipo de dato String en ANSI C?


Solución:
Con las funciones en el archivo extcode.h y los tipos de dato definidos dentro del mismo, usted puede convertir una Dirección de LabVIEW en un string de ANSI C.

En específico, usted debe utilizar la función PathToCString.  Para poder utilizar esta función, usted debe incluirel archivo labview.lib en su proyecto (este archivo se encuentra dentro del directorio LabVIEW/cintools).

Esta función regresa el string de C en la forma de un UHandle.  Un UHandle es un tipo de dato char**.  De esta manera, usted puede definir un string de C como un char** y almacenar el resultado de la función PathToCString en esta variable.  Utilizando la Ventana para Visualización de Variables (Variable Watch Window) en LabWindows/CVI, usted puede observar que el texto almacenado en el tipo de dato de Dirección de LabVIEW es leído correctamente por CVI.  El siguiente código demuestra como realizar esta conversión:

Path outputPath;
char **filename;
int main (int argc, char *argv[])
{
if (InitCVIRTE (0, argv, 0) == 0)
return -1; /* out of memory */

MyLabVIEWVI(&outputPath);
(UHandle)filename = PathToCString(outputPath);
return 0;
}


Puede encontrar más información sobre el archivo extcode.h bajo el tema Calling External Code dentro de la ayuda de LabVIEW.



Ligas Relacionadas:
KnowledgeBase 2FDDF9M5: Is There a Function that Will Translate a LabVIEW File Reference to a File Pointer so I Can Access the File in C?
Developer Zone Tutorial: How Do I Create a Shared Library (DLL) That Can Call LabVIEW Manager Functions?

Archivos Adjuntos:





Día del Reporte: 01/28/2006
Última Actualización: 06/30/2012
Identificación del Documento: 3TRDNGK7