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 - Come ho aperto il programma???
Forum - C# / VB.NET - Come ho aperto il programma???

Avatar
Cross (Normal User)
Pro


Messaggi: 61
Iscritto: 06/05/2007

Segnala al moderatore
Postato alle 18:24
Lunedì, 17/09/2007
Questo topic è stato chiuso dal moderatore

ciao raga.
come faccio a sapere se il mio programma è stato aperto perchè ho cliccato due volte su un file che deve aprire il mio programma(e quindi lo aperto il file), oppure se l'ho aperto io cliccando 2 volte sul programma (.exe)?????
grazie

P.S.:possibilmente lo voglio sapere tramite un msgbox come è stato aperto un programma.

PM
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 20:23
Lunedì, 17/09/2007
Se è stato aperto cliccando sul file, sicuramente avrà dei parametri a riga di comando, se invece è stato aperto manualmente no.
Vedi:
http://totem.altervista.org/appunti/rigacomando.php
per maggiori informazioni.

PM
Avatar
Cross (Normal User)
Pro


Messaggi: 61
Iscritto: 06/05/2007

Segnala al moderatore
Postato alle 19:33
Giovedì, 20/09/2007
l'ho letto ma lo stesso non sono riuscito ad ottenere il percorso del file che si apre.
Me lo puoi speigare meglio oppure se mi dai del codice spiegandolo
grazie

PM
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 14:50
Venerdì, 21/09/2007
Il file aperto è il primo parametro passato. Se CommandLineArgs è vuoto, vuol dire che non si è aperto niente.

PM
Avatar
Cross (Normal User)
Pro


Messaggi: 61
Iscritto: 06/05/2007

Segnala al moderatore
Postato alle 17:30
Venerdì, 21/09/2007
quindi devo fare così per ottenere il percorso del file aperto senza che mi da errori:
Codice sorgente - presumibilmente C# / VB.NET

  1. if my.application.commandlineargs(0) = "" then
  2. 'lascio vuoto così non fa niente e continua il programma
  3. else
  4. percorsodelfile = my.application.commandlineargs(0)


così?
se no mi fai qualche esempio + facile o mi dai qualche codice?
grazie

PM
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 15:53
Domenica, 23/09/2007
Il codice che hai scritto contiene un errore concenttuale. Controllando che il primo parametro non sia vuoto stai implicitamente supponendo che esiste almeno un parametro, il che non può sempre essere vero. Quello che tu devi fare è controllare SE esiste qualche parametro:
Codice sorgente - presumibilmente Delphi

  1. Dim Cmd As Collections.ObjectModel.ReadOnlyCollection(Of String) = My.Application.CommandLineArgs
  2.  
  3. 'Se ci sono parametri, allora il programma è stato aperto da file
  4. If Cmd.Count > 0 Then
  5.  percorsofile = Cmd(0)
  6. Else
  7.  'niente
  8. End If


PM