Título: problema con system(") en C++ Publicado por: victorio95 en 25 Octubre 2019, 14:57 pm Bueno, primer post. Sed amables jajaja.
Al lío, estoy haciendo un programa en C++ el cual llama a un programa externo mediante la función system(ruta). Pero dicho programa tiene una especie de "switch". Ésto hace que no pueda completarse la llamada y se queda en espera hasta que, en este caso, le de al 1. el programa al que llamo es 2jpeg.exe: system("2jpeg -src rutaInput -dst rutaOutput -jpeg mode:quality:100"); al ejecutar esto en el cmd es cuando me sale el "switch": Before you start converting process, please note that free version of 2Jpeg adds one demo label to the output file 1- Continue, 2- Order FULL version, 3- Exit entonces... ¿Es posible decirle desde C++ pasarle el 1 para que continúe con el proceso? Gracias de antemano Título: Re: problema con system(") en C++ Publicado por: Serapis en 25 Octubre 2019, 20:27 pm Olvida un programa que te muestra publicidad en las imágenes...
"Guglea" algún ejemplo que utilice la api de GDI+ : GdipSaveImageToFile te permite guardar en jpg definiendo el nivel de calidad y también en png o tiff... Título: Re: problema con system(") en C++ Publicado por: ThunderCls en 28 Octubre 2019, 18:50 pm Opino igual que NEBIRE, no es necesario usar software de terceros para hacer lo que deseas. De igual manera y habiendo dicho lo anterior, si de todas formas deseas seguir usando 2jpeg te puedo dar un par de ideas:
1- Solucion tanto facil como cutre :-\ Utiliza la redireccion de entrada de consola de windows con un fichero. Te creas un fichero con la respuesta que espera 2jpeg (en este caso 1) y luego modificas tu linea de comandos para que tome la entrada desde ese fichero algo como: Código
2- Solucion preferible ;-) Usa CreateProcess/Pipes para poder redireccionar la entrada y/o salida de un child process https://docs.microsoft.com/en-us/windows/win32/procthread/creating-a-child-process-with-redirected-input-and-output Suerte! |