Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [C#] Problema con Process.Start
Forum - C# / VB.NET - [C#] Problema con Process.Start

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
ianna93 (Normal User)
Newbie


Messaggi: 11
Iscritto: 23/04/2010

Segnala al moderatore
Postato alle 19:54
Mercoledì, 05/05/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?

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6403
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 20:00
Mercoledì, 05/05/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à.
PM Quote
Avatar
Thejuster (Admin)
Guru^2


Messaggi: 2305
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 9:01
Giovedì, 06/05/2010
prova a postare il codice dove esegui l'avvio del processo.

non siamo maghi che riusciamo a vedere da quì il tuo sorgente :D


https://mire.forumfree.it/ - Mire Engine
C# UI Designer
PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6403
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 10:09
Giovedì, 06/05/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à.
PM Quote
Avatar
ianna93 (Normal User)
Newbie


Messaggi: 11
Iscritto: 23/04/2010

Segnala al moderatore
Postato alle 20:51
Giovedì, 06/05/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

  1. Process.Start(sistema + "\\pwmf.exe");
  2. 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

  1. Process.Start(sistema + "\\messenpass.exe");

ma non appena gli passo il parametro (ho provato in due modi)
Codice sorgente - presumibilmente Plain Text

  1. Process.Start(sistema + "\\messenpass.exe", "/stext pw.log");
  2. 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:hail:

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6403
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 21:16
Giovedì, 06/05/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à.
PM Quote
Avatar
ianna93 (Normal User)
Newbie


Messaggi: 11
Iscritto: 23/04/2010

Segnala al moderatore
Postato alle 21:27
Giovedì, 06/05/2010
system32
dici che centra anche dove?

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6403
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 23:56
Giovedì, 06/05/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à.
PM Quote
Avatar
ianna93 (Normal User)
Newbie


Messaggi: 11
Iscritto: 23/04/2010

Segnala al moderatore
Postato alle 8:52
Venerdì, 07/05/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
PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo