ianna93 (Normal User)
Newbie
Messaggi: 11
Iscritto: 23/04/2010
|
Salve a tutti, sono nuovo. Mi servirebbe un aiuto:
devo avviare un file eseguibile e passargli dei paramenti. Facile, no?: Process.Start("file.exe", "/parametro"). Peccato che non avvii per nulla il file, nemmeno se non gli passo i parametri. Con un altro file va tutto bene, con un altro ancora se lo apro normalmente funziona, ma se gli passo dei parametri non parte più! Aiutatemi voi: quale comando usate di solito voi? come lo usate?
|
|
nessuno (Normal User)
Guru^2
Messaggi: 6403
Iscritto: 03/01/2010
|
Che tipo di programma è?
Cosa fa file.exe?
Come ti accorgi che non si avvia?
Se lo avvii da riga di comando, funziona?
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità. |
|
Thejuster (Admin)
Guru^2
Messaggi: 2305
Iscritto: 04/05/2008
|
prova a postare il codice dove esegui l'avvio del processo.
non siamo maghi che riusciamo a vedere da quì il tuo sorgente
|
|
nessuno (Normal User)
Guru^2
Messaggi: 6403
Iscritto: 03/01/2010
|
Mi sembra scontato che l'eseguibile che vuoi lanciare deve stare nella stessa cartella dell'eseguibile del programma ... altrimenti, come lo dovrebbe trovare?
Oppure indica tutto il percorso assoluto ...
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità. |
|
ianna93 (Normal User)
Newbie
Messaggi: 11
Iscritto: 23/04/2010
|
Scusate il ritardo, eccomi eccomi!!
Da "nessuno":
Che tipo di programma è?
Cosa fa file.exe?
Come ti accorgi che non si avvia?
Se lo avvii da riga di comando, funziona?
è un exe compilato con "bat to exe converter", praticamente è una specie di archivio in exe. Questo exe una volta aperto dovrebbe generare un file *.log. Mi accorgo che non si avvia perché il programma in c# che dovrebbe prima avviare l'exe poi gestire il *.log che poi non trova.
Codice sorgente - presumibilmente C# / VB.NET |
Process.Start(sistema + "\\pwmf.exe");
string pwmf = File.ReadAllText(sistema + "\\pwmf.log");
|
Se avvio l'exe normalmente parte senza problemi.
Un altro problema con Process.Start si è verificato quando ho cercato di raggirare il problema: volevo avviare messenpass (non so se lo conoscete quello per le password di msn) e passagli il parametro "/stext file.log". Da dos tutto perfetto, ma da c# molto meno. Il programma si avvia se scrivo
Codice sorgente - presumibilmente Plain Text |
Process.Start(sistema + "\\messenpass.exe");
|
ma non appena gli passo il parametro (ho provato in due modi)
Codice sorgente - presumibilmente Plain Text |
Process.Start(sistema + "\\messenpass.exe", "/stext pw.log");
Process.Start(sistema + "\\messenpass.exe", "/stext \"pw.log\"");
|
non parte niente e non succede nulla e il programma (quello in c#) continua il suo cammino!
Ripeto che da dos TUTTO funziona corretamente!
Grazie per l'attenzione attendo aiuti |
|
nessuno (Normal User)
Guru^2
Messaggi: 6403
Iscritto: 03/01/2010
|
Ma tutti i file di cui parli (exe, log ...) in quale cartella si trovano ...?
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità. |
|
ianna93 (Normal User)
Newbie
Messaggi: 11
Iscritto: 23/04/2010
|
system32
dici che centra anche dove?
|
|
nessuno (Normal User)
Guru^2
Messaggi: 6403
Iscritto: 03/01/2010
|
Ovvio che c'entra ...
Per i .exe va bene in \windows\system32 ma per i .log e quelli passati come parametri, no.
Devono stare nella cartella corrente d'esecuzione oppure indica il percorso completo.
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità. |
|
ianna93 (Normal User)
Newbie
Messaggi: 11
Iscritto: 23/04/2010
|
Avevi ragione! però la variabile "sistema" è opportunamente dichiarata e, almeno in teoria, doveva passare il parametro di creare il file log dove si trovava l'exe (non quello in c#), no?
Grazie ancora, siete stati gentilissimi!
Ultima modifica effettuata da ianna93 il 07/05/2010 alle 8:56 |
|