Salve a tutti, premetto che sono un autodidatta alle prime armi con VB 2008 e sto cercando di programmare una semplice applicazione che, per vari scopi, carica un file .txt dentro una textbox e fin qui non ho riscontrato nessun problema. Per rendere più completa l'applicazione ho cercato un modo per far si che se l'avvio da un file di testo .txt( facendo doppio click su di esso per intenderci, avendolo impostato come programma predefinito ) l'applicazione si avvii e legga direttamente il file di testo ad cui è stata avviata. Ho trovato tanti esempi su Google ma tutti che usano CommandLine come questi esempi che ho testato
Dichiarazione della variabile:
codice:
Dim CommandLineArgs As System.Collections.ObjectModel.ReadOnlyCollection(Of String) = My.Application.CommandLineArgs
Ciclo for:
codice:
For i As Integer = 0 To CommandLineArgs.Count - 1 MessageBox.Show(CommandLineArgs(i)) Next
Oppure inserendo un semplice(all'evento form load):
codice:
MsgBox (My.Application.CommandLineArgs(1)
Dove 1 si può cambiare per scegliere quale argomento restituire.
Il problema è che con il primo blocco di codice non appare nessun message box ( come se non ci fossero argomenti e quindi il ciclo for non venisse eseguito neanche una volta ) e nel secondo caso mi restituisce errore dicendo che "Index non compreso nell'intervallo...".
Quindi riassumendo la mia domanda è: è possibile che non ci siano argomenti nella CommandLine e come potrei ottenere altrimenti il percorso del file da cui viene avviata l'applicazione ? Scusate per le troppe parole ma volevo essere più preciso possibile.