SoloCodigo

Programación General => C/C++ => Visual C++ => Mensaje iniciado por: black_flowers en Sábado 26 de Marzo de 2011, 22:17

Título: no consigo ejecutar aplicación con shellexecute.
Publicado por: black_flowers en Sábado 26 de Marzo de 2011, 22:17
estoy que no doy una, he probado todas las combinaciones pero no consigo ejecutar un maldito programa con shellexecute. Lo quetengo es un programa en c++ que utiliza esta instrucción para ejecutar otro programa:
Código: C++
  1. ShellExecute(NULL,"open", "miPrograma.exe",NULL,NULL, SW_SHOW);
  2.  
pero compila, pasa de largo y no hace nada.
la aplicación miPrograma.exe se encuentra en la misma carpeta que el que estoy ejecutando.
he probado tambien así:
miPrograma.exe
así: (poniendo miPrograma.exe en C:)
Código: C++
  1. ShellExecute(NULL,"open", "miPrograma.exe",NULL,"C:", SW_SHOW);
  2.  
pero nada, ninguna funciona.
Sólo me ha funcionado esto:
Código: C++
  1. ShellExecute(NULL,"open", "calc.exe",NULL,NULL, SW_SHOW);
  2.  
ya que la calculadora es accesible desde cualquier punto.
no obstante si coloco la calculadora en c: y hago esto:
Código: C++
  1. ShellExecute(NULL,"open", "calc.exe",NULL,"C:", SW_SHOW);
  2.  
ya no funciona tampoco.
Título: Re: no consigo ejecutar aplicación con shellexecute.
Publicado por: rfog en Jueves 31 de Marzo de 2011, 12:37
El programa que quieres ejecutar debe estar accesible desde el PATH o en la misma carpeta que el directorio actual del programa llamante.

La vez que llamas con "C:" no te funciona porque es "C:\", doble barra para indicar una sóla barra invertida.
Título: Re: no consigo ejecutar aplicación con shellexecute.
Publicado por: black_flowers en Jueves 31 de Marzo de 2011, 13:19
ok, ya lo había resuelto en el foro de c++

un saludo.