PDA

View Full Version : Comando lancio exe


supertondo
07-09-2004, 15:46
Che funzione si usa in ambiente windows per lanciare un exe in C?

grazie :D :D :D

anx721
07-09-2004, 15:58
Dovrebbe essere:

system("comando da eseguire");

DanieleC88
07-09-2004, 22:50
Si usa ShellExecute, purtroppo ora non ricordo bene quali sono gli argomenti, ma dovrebbe bastare ShellExecute("programma da lanciare", NULL, NULL, NULL);

Se non funziona non prendertela con me, io ti ho avvisato :D.

honny
08-09-2004, 12:48
#include <process.h>

e poi usi

execl( const char *cmdname, const char *arg0, ... const char *argn, NULL );
oppure
spawnl( int mode, const char *cmdname, const char *arg0, const char *arg1, ... const char *argn, NULL );


ci sono diverse versioni delle versioni che ricordo :

1) lancia l' eseguibile e temina il main
2) lancia l' eseguibile fa wait del main fino a che l' eseguibile chiamato e' terminato e poi riparte
3) lancia l'eseguibile e prosegue il main, senza interessarsi dello stato dell' eseguibi8le chiamato

questo anticamente , ora che con le versioni 2005 express pure printf() e' dichiarata deprecated non so...

su *nix invece che c'e' solo execl mi pare che proprio non ci sia ritorno dopo una execl....

supertondo
08-09-2004, 20:47
Grazie mo provo;)

Berno
09-09-2004, 00:20
Originariamente inviato da honny
#include <process.h>

e poi usi

execl( const char *cmdname, const char *arg0, ... const char *argn, NULL );
oppure
spawnl( int mode, const char *cmdname, const char *arg0, const char *arg1, ... const char *argn, NULL );


ci sono diverse versioni delle versioni che ricordo :

1) lancia l' eseguibile e temina il main
2) lancia l' eseguibile fa wait del main fino a che l' eseguibile chiamato e' terminato e poi riparte
3) lancia l'eseguibile e prosegue il main, senza interessarsi dello stato dell' eseguibi8le chiamato

questo anticamente , ora che con le versioni 2005 express pure printf() e' dichiarata deprecated non so...

su *nix invece che c'e' solo execl mi pare che proprio non ci sia ritorno dopo una execl....
Ma questa libreria è per c o c++?

honny
09-09-2004, 00:49
perche' questa domanda ?

cmq io queste funzioni le avevo usate per C, e cmq se devi usarele con c++ non ci sono problemi, e' roba stabdard, da win in process.h per *nix in unistd.h isi :-) ( spawn su nix non mi sono mai accorto ci fossero...)

invece se ci stai provando su un visual e ti spara fuori 20000 warning perche' sono deprecated nulla di nuovo sotto il sole....

PS : scusate ma sta cosa proprio non mi va giu'....

anx721
09-09-2004, 00:53
Comuqnue è per il C, quindi anche per il C++

Berno
09-09-2004, 19:37
Originariamente inviato da honny
perche' questa domanda ?
Perchè ho cercato con google la lista di funzioni contenute in process.h e c'è scritto dovunque che è per c++...

Io non uso nè il c++ nè tantomeno un ambiente grafico, mi baso sui rudimenti di c che mi hanno insegnato all'università e tento di fare qualche programmino ogni tanto...