Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di bovy
    Registrato dal
    Nov 2006
    Messaggi
    269

    [C++]lancio eseguibile da programma

    ho creato una applicazione grafica con wxdevc++, e vorrei che cliccando sul pulsante inizia, partisse una animazione flash della quale ho creato un proiettore(.exe appunto).
    quando facevo la stessa cosa utilizzando devc++, quindi senza interfaccia grafica ma in dos, mettevo:

    codice:
    system("c:/percorso/pluto.exe");
    e andava, se lo faccio in wxdevc++, vedo che si apre il terminale( già questo è strano) e dopo una frazione di secondo sparisce (come un flash) e non parte niente, allora mi è sorto il dubbio o che magari ci devo aggiungere qualcosa visto che utilizzo l'interfaccia grafica, oppure che il comando

    codice:
    system("c:/percorso/pluto.exe");
    non va bene se uso una interfaccia grafica

    ditemi voi...
    Windows più che un sistema operativo è un sistema nervoso....

  2. #2
    vedo che si apre il terminale( già questo è strano) e dopo una frazione di secondo sparisce (come un flash)
    Questo non è strano per niente, la funzione system non serve per lanciare eseguibili, ma per passare una stringa all'interprete dei comandi (su Windows solitamente cmd.exe o command.com), quindi è normale che compaia per un momento la finestra.
    non parte niente
    Questo è più strano; comunque per lanciare eseguibili ti conviene usare le API apposite come la CreateProcess se lavori con le API di Windows.
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Utente di HTML.it L'avatar di bovy
    Registrato dal
    Nov 2006
    Messaggi
    269
    comunque in teoria dovrebbe funzionare la system?
    Windows più che un sistema operativo è un sistema nervoso....

  4. #4
    Teoricamente sì.
    P.S.: nei percorsi usa i backslash (\), non gli slash normali (/); funzionano anche questi, ma in Windows il separatore di percorso è il backslash.
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    Utente di HTML.it L'avatar di bovy
    Registrato dal
    Nov 2006
    Messaggi
    269
    si lo so..però mi dava errore se usavo il backslash
    Windows più che un sistema operativo è un sistema nervoso....

  6. #6
    Nelle stringhe C devi inserire due backslash, visto che il backslash singolo viene usato come carattere di escape.
    codice:
    system("c:\\percorso\\pluto.exe");
    Amaro C++, il gusto pieno dell'undefined behavior.

  7. #7
    Utente di HTML.it L'avatar di bovy
    Registrato dal
    Nov 2006
    Messaggi
    269
    ok..adesso non mi da più l'errore, però me lo continua a non aprire
    Windows più che un sistema operativo è un sistema nervoso....

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 © 2024 vBulletin Solutions, Inc. All rights reserved.