el 02-07-2010 12:43 PM
Saludos a todos:
Espero que alguien pueda indicarme como realizar lo siguiente.
Estoy realizando un proyecto en el cual para un mejor manejo de ciertas partes, escribo en una variable CHAR una dirección de ordenador, como: c:/archivos de programa/...
Luego quiero usar la función LaunchExecutable(); de LabWindows para que ejecute el programa guardado en el char.
El problema es que esta función si funciona escribiendo como variable la dirección pero no diciéndole que lea el char.
Me gustaría saber como hay que indicarle que lea el char o de que otra manera se puede hacer lo mismo.
Muchas gracias a todos por adelantado.
¡Resuelto! Ir a solución.
el 02-08-2010 05:32 AM
Lo que tienes que hacer es reemplazar el char por un arreglo de chars y pasar esto al comando. Puedes utilizar la macro MAX_PATHNAME_LEN que automaticamente dimensiona el arreglo al máximo previsto por el sistema.
char path[MAX_PATHNAME_LEN];
Ten en cuenta que en los path se utiliza el '\' que normalmente va a ser un carácter de control, así que si lo pasas simplemente vas a encontrar muchos errores. La solución es doblar este caracter en el arreglo del comando ("c:\\directorio1\\directorio2\\archivo.txt") u mejor aún utilizar el MakePathname que genera automáticamente el correcto delimitador para los componentes del directorio.
Por último, te comento que con FileSelectPopup puedes seleccionar interactivamente el archivo por elaborar: la función restituye en un char[] el pathname del archivo que puede pasarse directamente al LaunchExecutable.
el 02-09-2010 08:28 AM
Muchas gracias por tu rápida y buena respuesta.
Has aclarado las dudas que tenía.