Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    258

    [C++] lanciare un programma e aspettare che finisca...

    Devo fare un programma in C++ che modifichi il registro, lanci un programma e poi, quando il programma lanciato esce, rimetta a posto il registro.

    Per la parte sul registro è un'altra faccenda. Come faccio però a far partire un altro programma e ad aspettare che finisca di essere eseguito?

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    In Windows ti consiglio la CreateProcess e la WaitForSingleObiect ...

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    258
    spero che ci siano anche in windows CE...

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Ovviamente ci sono, essendo funzionalita' core ... ma sarebbe bene che tu indicassi prima con quale sistema devi lavorare nell'esporre i tuoi problemi ...

    CreateProcess
    http://msdn2.microsoft.com/en-us/library/ms885182.aspx

    WaitForSingleObject
    http://msdn2.microsoft.com/en-us/library/aa450988.aspx

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    258
    ma sarebbe bene che tu indicassi prima con quale sistema devi lavorare nell'esporre i tuoi problemi ...
    chiedo scusa.....

    Comunque potreste farmi un esempio veloce di come usare quelle due funzioni? ad es per lanciare pippo.exe ed aspettare fino al termine della sua esecuzione..

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Beh ... anche se avresti potuto trovare qualcosa tra i mille esempi su google ...

    codice:
      PROCESS_INFORMATION pi = {0}; 
      STARTUPINFO si = {sizeof(si)}; 
      si.wShowWindow = SW_NORMAL; 
    
      CreateProcess(_T("pippo.exe"), _T(""), NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi); 
      WaitForSingleObject(pi.hProcess, INFINITE); 
      MessageBox(NULL, _T("finito"), NULL, 0);

  7. #7
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    258
    ok... grazie... provo e poi faccio sapere se ci riesco...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.