c++ Builder enviar parametros
hola en C++ Builder
¿como puedo pasar parametros ¡? especialmente al enviar parametros con espacios por ejemplo abrir archivo que esta en C:\miapp.exe tengo este codigo pero no se como hacerle por que los parametros que la aplicacion recibe. se muestran asi. c:\miapp.exe parametro 1 parametro 2 parametro _3 y yo quiero que salgan asi. c:\miapp.exe parametro 1 parametro 2 parametro _3 Código:
gracias por su atencion. |
Cuando hay espacios debes indícar el texto entre comillas, ejemplo: "c:\documents and settings\tu carpeta\tuprograma.exe"
|
Cita:
entonces asi. char *sCmdLin = "C:\\miapp.exe "parametro 1" "parametro 2" "parametro _3" " ; mm char *sCmdLin = "C:\\miapp.exe 'parametro 1' 'parametro 2' 'parametro _3' " ; dejame revisarlo. ptra cosas a fuerzas se tiene que poner la doble barra?? C:\\ o solo con C:\ si es doble barra a fuerza. como la pongo??? si se supone que el programa lo obtiene el directorio de windows. o de archivos de texto que manejan solo C:\archivos de programa\mi app\ |
Con CreateProcess:
Código:
PROCESS_INFORMATION pi = {0}; Código:
ShellExecute(0, 0, "C:\MiPrograma.exe", "param1 param2", 0, SW_SHOW); Saludos. |
Cita:
por que yo quiero pasar paramtros. asi bool bRet = CreateProcess(0, "C:\MiPrograma.exe param 1 param 2 ,0,0,0,0,0,0,&si,&pi); son 2 parametros y que pueda recibirllos asi. param 1 param 2 en la forma que me propnene salen asi C:\MiPrograma.exe param 1 lo que quiero es poder pasarle la ruta de otra aplicacion . y de otros documentos. a mi aplicacion. la ruta es c:\archivos de programa\winrar.exe y el archivo a comprimir es C:\Users\jxj\Documents\mi carpeta\archivo emails.txt como ven hay espacios. y no se como manejarlos. con c++ builder 6.. |
Código:
PROCESS_INFORMATION pi = {0}; |
Cita:
sol una duda mas respecto a \\ casi siempre lo manjo asi \ en todo archivos ini. lo tengo asi. [winrar] AppPat=c:\archivos de programa\winrar.exe\ como se le agregan los 2 \\ si yo manejo \ he probado y no responde si pongo \ solo responde si pongo \\ mmm. reviso y aver que pasa. |
Cuando escribes código C el carácter '\' es de control. El compilador espera recibir otro caracter (\n, \r. \"...) asi, cuando quieres poner un '\' debes poner '\\'. Para poner unas comillas en un texto debes poner \", para diferenciar esas comillas de las que debes poner en la sintaxis.
Cuando lees un ini con una ruta C:\loquesea, el compilador lo interpreta tal cual, no actúan los caracteres de control, porque no estamos escribiendo código. Los parámetros, cuando llevan espacios en su interior, deben ir encerrados entre comillas. Así, param numero uno, debe ir escrito en el código así: Código:
"\"param numero uno\"" Saludos. |
La franja horaria es GMT +2. Ahora son las 22:49:50. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi