====== Lanciare eseguibile windows senza prompt dos ====== Autore: **//Fabio Di Matteo//** \\ Ultima revisione: **//25/03/2013//** \\ \\ Ecco come lanciare un eseguibile windows da un nostro programma senza che la finestra dell'interprete dei comandi faccia la sua comparsa. Useremo la funzione **CreateProcess** . \\ \\ **start.c** #include #include int main(int argc, char* argv[] ) { STARTUPINFO info={sizeof(info)}; PROCESS_INFORMATION processInfo; if (CreateProcess(NULL, "./bin/mytest.exe", NULL, NULL, TRUE, CREATE_NO_WINDOW, NULL, NULL, &info, &processInfo)) { MessageBox( NULL, "Creazione processo con successo", "Informazione", MB_OK | MB_ICONINFORMATION| MB_TASKMODAL); CloseHandle(processInfo.hProcess); CloseHandle(processInfo.hThread); }else { MessageBox( NULL, "Creazione del processo fallita!", "Attenzione", MB_OK | MB_ICONERROR| MB_TASKMODAL); } return 0 ; } ===== Compilazione (crosscompilazione su Gnu/Linux) ===== E' nessario informare il compilatore che l'eseguibile sara' un'applicazione grafica per windows quindi dobbiamo aggiungere alle opzioni i flags **-mwindows -mms-bitfields ** . i586-mingw32msvc-gcc -mwindows -mms-bitfields -static-libgcc -static-libstdc++ start.c -o start.exe