Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13

Discussione: VB 2008 Comando shell

  1. #1

    VB 2008 Comando shell

    Ciao a tutti,
    ho un problema con il comando shell abbinato ad una variabile;
    da un database ho ricavato la directory del software che dovrei aprire, ma quando lo abbino alla shell mi va in errore.

    Questo è il codice che ho utilizzato.

    Dim aa As String
    aa = dgvdata.CurrentRow.Cells(1).Value (aa= c:\C:\Program Files\SmarThru 4\controlpanel.exe)
    shell (aa)


    Come devo fare?
    Grazie

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    c:\C:\


    ???
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Scusa ho sbagliato a scrivere;
    Nella cella c'è il seguente contenuto:
    C:\Program Files\SmarThru 4\controlpanel.exe
    Grazie

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Dato che ci sono degli spazi nel percorso, prova ad inserire le virgolette ...

    shell (Chr$(34) & aa & Chr$(34))
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Ho provato a fare come hai scritto, ma ottengo sempre un errore. Mi dice che il carattere tipo $ non corrisponde al tipo dati dichiarato Char.
    Porta pazienza ma sono alle prime e le domande possono essere anche banali.
    Grazie

  6. #6
    Prova cosi'
    codice:
    shell ("""" & aa & """")
    Facci sapere...
    Ciao

  7. #7
    No, anche così non funziona.
    Alternative?

  8. #8
    Ma l'errore che ricevi .... qual'è?

  9. #9
    L'errore è il seguente:
    FileNotFoundException non è stata gestita; Impossibile trovare il file

    Però se scrivo all'interno della shell la directory funziona.

  10. #10
    Prova a mettere un breakpoint sulla riga ed a controllare il valore della variabile aa.
    Poi, al posto di Shell, usa Process.Start
    codice:
    Process.Start(aa)
    oppure metti una Messagebox.Show prima di Process.Start
    codice:
    MessageBox.Show(aa)
    Process.Start(aa)
    Facci sapere...
    Ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.