Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Comando shell
Forum - C# / VB.NET - Comando shell

Avatar
Exit93 (Ex-Member)
Rookie


Messaggi: 34
Iscritto: 31/03/2008

Segnala al moderatore
Postato alle 17:19
Lunedì, 31/03/2008
Questo topic è stato chiuso dal moderatore

Come faccio a utilizzare delle variabili con il comando shell?
Esempio:
Codice sorgente - presumibilmente Plain Text

  1. shell("takeown/f " & textbox.text)
  2. 'dove textbox1.text è il percorso di un file



Così facendo il programma mi da errore e mi dice File non trovato, mentre creando un batch con lo stesso comando tutto fila a meraviglia

Come posso fare? Dov'è l'errore?

PM
Avatar
_LX_ (Normal User)
Newbie


Messaggi: 3
Iscritto: 31/03/2008

Segnala al moderatore
Postato alle 17:42
Lunedì, 31/03/2008
se hai problemi di questo tipo creati una stringa con tutte le variabili che vuoi, e poi nella shell() richiami la stringa.
comunque se usi dei comandi dos non dimenticare di mettere prima cmd
es.
shell("cmd /c del c:\a.txt")

PM
Avatar
Mte90 (Member)
Guru


Messaggi: 1144
Iscritto: 25/03/2008

Segnala al moderatore
Postato alle 17:48
Lunedì, 31/03/2008
prova a mettere textbox.text.tostring pare stupido ma certe volte salva...

PM
Avatar
Exit93 (Ex-Member)
Rookie


Messaggi: 34
Iscritto: 31/03/2008

Segnala al moderatore
Postato alle 18:10
Lunedì, 31/03/2008
Ho provato in miriadi di modi ma non va, l'ultimo tentativo è stato così
Codice sorgente - presumibilmente VB.NET

  1. Try
  2. Dim cmd As String
  3.             cmd = "cmd/c takeown/f " & path1.Text.ToString
  4.             Shell(cmd)
  5.         Catch FNFE As IO.FileNotFoundException
  6.             MsgBox("File Non Trovato", MsgBoxStyle.Critical)
  7.         End Try



dove path1.text è il percorso del file

Ultima modifica effettuata da Exit93 il 31/03/2008 alle 18:11
PM
Avatar
_LX_ (Normal User)
Newbie


Messaggi: 3
Iscritto: 31/03/2008

Segnala al moderatore
Postato alle 18:18
Lunedì, 31/03/2008
gli spazi sono importanti

Codice sorgente - presumibilmente VB.NET

  1. Try
  2. Dim cmd As String
  3.             cmd = "cmd /c takeown /f " & chr(34) &  path1.Text & chr(34)
  4.             Shell(cmd)
  5.         Catch FNFE As IO.FileNotFoundException
  6.             MsgBox("File Non Trovato", MsgBoxStyle.Critical)
  7.         End Try



chr(34) sono le virgolette

PM
Avatar
Exit93 (Ex-Member)
Rookie


Messaggi: 34
Iscritto: 31/03/2008

Segnala al moderatore
Postato alle 18:24
Lunedì, 31/03/2008
Testo quotato

Postato originariamente da _LX_ :

gli spazi sono importanti

Codice sorgente - presumibilmente VB.NET

  1. Try
  2. Dim cmd As String
  3.             cmd = "cmd /c takeown /f " & chr(34) &  path1.Text & chr(34)
  4.             Shell(cmd)
  5.         Catch FNFE As IO.FileNotFoundException
  6.             MsgBox("File Non Trovato", MsgBoxStyle.Critical)
  7.         End Try



chr(34) sono le virgolette



Perfetto ora funziona! Grazie!:k:

PM
Avatar
_LX_ (Normal User)
Newbie


Messaggi: 15
Iscritto: 31/03/2008

Segnala al moderatore
Postato alle 18:50
Lunedì, 31/03/2008
di niente:)

PM