Tengo un programa servidor/cliente. Mi cliente usa _popen para ejecutar comandos. Cuando envío un comando del servidor al cliente, mi cliente abre una nueva terminal (cmd) y luego la cierra. Todo esto sucede en un segundo.
No quiero que mi programa cliente abra y cierre una terminal al ejecutar un comando. No quiero ninguna terminal cuando ejecuto un comando en mi cliente con _popen . ¿Cómo puedo evitar que mi cliente abra un nuevo terminal?
Cliente:
FILE* f = _popen(command, "r"); if (f == NULL) { printf("error _popen 2\n"); }Tal vez popen() no sea lo que necesita. Eche un vistazo a la familia de funciones _spawn ( https://docs.microsoft.com/en-us/cpp/c-runtime-library/spawn-wspawn-functions ), ¿quizás eso es lo que está buscando?
También existen algunas bibliotecas C multiplataforma para ejecutar otros programas, que ya inventaron la rueda que está tratando de reinventar. Por ejemplo: