System.Diagnostics.Process.Start

mercoledì 20 febbraio 2008 - 12.02

almax Profilo | Junior Member

Ho creato un progetto con vs2005 ho inserito al suo interno un file exe per esigenze, ora vorrei tramite
System.Diagnostics.Process.Start avviare questo exe quale percorso devo inserire?

System.Diagnostics.Process.Start("file.exe") ?

Grazie

alextyx Profilo | Expert

Puoi anche precisare alcune opzioni sul processo. Dai una veloce occhiata a questi link:

http://www.devx.com/dotnet/Article/7914

http://www.thescripts.com/forum/thread364481.html

almax Profilo | Junior Member

si per le opzioni ok pero' vorrei capire come faccio a fargli capire che il file exe è dentro il progetto ... è come se io ho un file exe con dentro un file exe ....

alextyx Profilo | Expert

Allora il tuo problema è quello di individuare il path dell'applicazione. Credo ti serva 'Application.startuppath', oppure usi il namespace My:
Dim percorso As String = My.Application.Info.DirectoryPath

che ti restituisce la directory in cui si trova la tua applicazione. Poi ci aggiungi "miofiledaeseguire.exe" e dovresti essere a posto.
Magari fai due prove, controllando cosa ti restituisce la proprietà 'DirectoryPath' e dove si trova esattamente il file da eseguire.
Spesso in queste cose si sbatte la testa in un backslash ( \ ) mancante, o nel fatto che il file da eseguire è in una ulteriore sottodirectory di cui ci si era scordati, o roba del genere, per cui bisogna fare un minimo di debug a step. Comunque la via dovrebbe essere questa.

almax Profilo | Junior Member

questa cosa la conoscevo pero' avrei bisogno di questo:

ho fatto così nuovo progetto winform poi ho aggiunto alle risorse del progetto un file1.exe
dal mio file2 exe dovrei poter lanciare file1.exe ...
Come se io avesso nel mio file2.exe il file1.exe inglobato che non vedi .. E' possibile?

alextyx Profilo | Expert

Diciamo che, per quello che mi pare di capire sia la tua esigenza, non saprei come aiutarti.

aiedail92 Profilo | Expert

Ciao

scusate se mi intrometto...

Credo che quello che vuoi fare tu sia impossibile senza prima esportare l'exe in una cartella, in quanto nelle risorse il tuo file viene archiviato come un array di byte, non come un'eseguibile.

Quindi se vuoi che l'utente non si accorga del tuo exe devi prima esportarlo in una cartella temporanea, utilizzarlo, e quindi alla chiusura dell'applicazione "rimuovere le tracce"

Luca

alextyx Profilo | Expert

Ben intromesso, Luca
Almeno mi confermi che abbiamo capito la stessa cosa in due.
E anche secondo me, non lo si può fare direttamente.

almax Profilo | Junior Member

Immaginavo ... cmq grazie a tutti e due .. Allora vi chiedo questo .. Sto cercando una soluzione per fare cio'...

Ho un programma che si installa e qui tutto ok, non riesco a trovare la documantazione per poter sostituire la sua icona che si trova nel suo bel file di risorse nell'exe quindi avevo pensato a questo punto di inglobare l'exe in un mio exe con mia icona e mio collegamento ... Che ne pensate?

Da quello che leggo dovrei al click del mio exe rigenerare l'exe originale ed eseguirlo, alla chiusura l'exe scompare ....
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5