Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Lanciare un eseguibile
Forum - C# / VB.NET - Lanciare un eseguibile

Avatar
fosforo (Normal User)
Expert


Messaggi: 305
Iscritto: 06/04/2009

Segnala al moderatore
Postato alle 10:37
Martedì, 14/07/2009
Questo topic è stato chiuso dal moderatore

Ciao
Sto impazzendo nel cercare di capire il motivo per cui cosi funziona

Shell("C:\Programmi\MAM_Watch_folder\programma.exe " +File)

e cosi XP mi da errore

System.Diagnostics.Process.Start("C:\Programmi\MAM_Watch_folder\programma.exe  " + File)  

Grazie 1000


Scusate per la figuraccia.
PM
Avatar
theprogrammer (Normal User)
Guru^2


Messaggi: 2509
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 10:42
Martedì, 14/07/2009
Ti da' errore? Quale?


- Se le mie risposte non vi soddisfano, ignoratele, altrimenti un "grazie" e' molto gradito ...

"Dai un pesce (programma) a un uomo e lo nutrirai per un giorno. Insegnagli a pescare (programmare) e lo nutrirai per tutta la vita." (niente pappa pronta)
PM
Avatar
fosforo (Normal User)
Expert


Messaggi: 305
Iscritto: 06/04/2009

Segnala al moderatore
Postato alle 10:57
Martedì, 14/07/2009
Mi esce la solita finestra di XP con ConsoleApplication 1

Si è verificato un errore in ConsoleApplication1. L'applicazione verrà chiusa.

Io non ho dichiarato nulla prima per il
System.Diagnostics.Process.Start


Scusate per la figuraccia.
PM
Avatar
theprogrammer (Normal User)
Guru^2


Messaggi: 2509
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 11:01
Martedì, 14/07/2009
Guarda ... devi essere piu' preciso nelle domande, altrimenti non si capisce e si rinuncia a rispondere ...

1) qual e' esattamente tutto il codice che usi ?

2) qual e' esattamente (in dettaglio, cerca di essere preciso e riporta tutto) l'errore che ti viene evidenziato ?

3) non e' che l'errore lo crea il programma che viene lanciato ? Hai provato a lanciare il programma dalla Console direttamente ?


- Se le mie risposte non vi soddisfano, ignoratele, altrimenti un "grazie" e' molto gradito ...

"Dai un pesce (programma) a un uomo e lo nutrirai per un giorno. Insegnagli a pescare (programmare) e lo nutrirai per tutta la vita." (niente pappa pronta)
PM
Avatar
fosforo (Normal User)
Expert


Messaggi: 305
Iscritto: 06/04/2009

Segnala al moderatore
Postato alle 11:28
Martedì, 14/07/2009
Scusami.
Cerco di essere più presiso.

Shell("C:\Programmi\programma.exe " + NomeFile1)

System.Diagnostics.Process.Start("C:\Programmi\programma.exe " + NomeFile1)

Queste sono le 2 righe che ho scritto per lanciare il mio eseguibile "programma.exe"

Il mio eseguibile funzione bene sia se lo lancio con la prima riga, sia che lo lancio aprendo un prompt e scrivendo la riga di comando.
Purtroppo devo usare System.Diagnostics.Process.Start
per dopo gestire il processo con un WaitForExit.


Scusate per la figuraccia.
PM
Avatar
theprogrammer (Normal User)
Guru^2


Messaggi: 2509
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 11:48
Martedì, 14/07/2009
Testo quotato

Postato originariamente da fosforo:
Shell("C:\Programmi\programma.exe " + NomeFile1)

System.Diagnostics.Process.Start("C:\Programmi\programma.exe " + NomeFile1)

Queste sono le 2 righe che ho scritto per lanciare il mio eseguibile "programma.exe"

Il mio eseguibile funzione bene sia se lo lancio con la prima riga, sia che lo lancio aprendo un prompt e scrivendo la riga di comando ...



... finisci il discorso ... mentre se lo lanci con la seconda riga, quale errore (in dettaglio) ti da' ?


- Se le mie risposte non vi soddisfano, ignoratele, altrimenti un "grazie" e' molto gradito ...

"Dai un pesce (programma) a un uomo e lo nutrirai per un giorno. Insegnagli a pescare (programmare) e lo nutrirai per tutta la vita." (niente pappa pronta)
PM
Avatar
Thejuster (Member)
Guru^2


Messaggi: 1894
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 12:33
Martedì, 14/07/2009
Naturale che non ti funziona.

Vuoi passare un argomento all'exe come se fosse VisualBasic.
Mentre avevo già trattato quest'argomento con jaco++

la funzione Shell di C# per inviare un argomento richiede un parametro o una funzione da specificare

il tuo esempio
[code

System.Diagnostics.Process.Start("C:\Programmi\MAM_Watch_folder\programma.exe  " + File)



non potrà mai funzionare perchè non gli hai specificato cosa fare.

in questo modo non invii un argomento,
ma semplicemente aggiungi una stringa allo shell
quindi e come se scrivessi esempio

nella var File abbiamo "Test.txt"
quindi diverrebbe

"  programma.exe File.txt "

devi separare con virgola

esempio



System.Diagnostics.Process.Start("C:\Programmi\MAM_Watch_folder\programma.exe ","/c " + File);




:k:


PM
Avatar
fosforo (Normal User)
Expert


Messaggi: 305
Iscritto: 06/04/2009

Segnala al moderatore
Postato alle 17:54
Martedì, 14/07/2009
OK capito e funziona

Solo un grandissimo grazie per l'aiuto e per la pazienza.


Scusate per la figuraccia.
PM