Discusiones sobre Productos NI

cancelar
Mostrando los resultados de 
Buscar en lugar de 
Quiere decir: 

resolve ambiguity

Hola a todos,

Mi problema es que tengo 2 librerias .h, una copia de la otra. en mi programa de CVI, en el codigo fuente .C, utilizo un enum, declarado en el .h. cuando le doy CTRL+i (go to definition). me dice que la encuentra en las 2 librerias.h. aunque solo tengo incluida 1 en el .C.

 

esto causa que cuando compilo. no sepa a cual dirigirse.

 

ya renombre la Libreria y la quite del folder( la que no se usa). y aun asi Labwindows CVI, me sigue diciendo que la encuentra en las 2 librerias.

 

mi pregunta es como quito la referencia a la libreria antigua para que solo la busque en el .h actual?

 

Gracias por su ayuda.

0 kudos
Mensaje 1 de 3
3.409 Vistas

Hola el compilador no tiene referencia a un archivo .h si no està definida en uno de los .c u .h. Puede ser que haya una cadena de archivos que en algun sitio tiene una referencia al .h antiguo.

Lo que puedes hacer es abrir cada archivo .c de tu proyecto y usar la función Options >> Preprocess source file: se abrirá otra ventana que incluye todo el código del archivo .c comprendendo de manera explicita el contenido de los archivos incluídos a cada nivel: dentro de esta ventana puedes buscar por el .h incorrecto y ver adonde está referenciado para andar corrigiendo la referencia.



Proud to use LW/CVI from 3.1 on.

My contributions to the Developer Community
________________________________________
If I have helped you, why not giving me a kudos?
0 kudos
Mensaje 2 de 3
3.402 Vistas

Estaba revisando tu pregunta y me fijé en que ya has intendado renombrar y mover el archivo, por lo que ya no deberías encotrarlo, y no me entero del porque se el CVI siga encontrando un elemento definido dos veces.

Lo que puedes revisar es que no tengas la librería .h antigua incluyda en el proyecto aunque no en algun file .c; igualmente averigua si la librería es la referencia de un instrumento (.fp) que tienes añadido en el menu Instrument u en la lista de librerías del menu Library.

 

Puede haber otras causas por tener referencia al archivo .h que no se me ocurren por el momento, sin embargo con el Preprocess source file deberías ver quien va ligando la librería a tu proyecto. Recuerda que este procedimiento debe ser repetido para todos los .c que estas usando.

 

Si no logras resolver el asunto, pon un pantallazo del error que recibes del compilador.



Proud to use LW/CVI from 3.1 on.

My contributions to the Developer Community
________________________________________
If I have helped you, why not giving me a kudos?
0 kudos
Mensaje 3 de 3
3.391 Vistas