Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    [vb.net] Eseguire file bat

    salve ragazzi,
    ho la necessita di eseguire da codice vb.net un file.bat

    io faccio cosi, il file si esegue ma il risultato non è quello desiderato:
    codice:
            Try
    
    process.start(Percorsofile.bat)
    
            Catch ex As Exception
    
            End Try
    Non c'è nessun errore, il file bat viene eseguito, pero il risultato non è quello desiderato.
    Se eseguo il file bat con il codice riportato sopra, il file si esegue ma non mi da nessun risultato
    Se invece eseguo il bat manualmente funziona perfettamente

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480

    Re: [vb.net] Eseguire file bat

    Originariamente inviato da Salvatore_91
    il risultato non è quello desiderato.
    Cioè?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    in pratica il file.bat dice di eseguire un file.exe dando in input (fileInput.txt) e di fornire il risultato in un altro file di output (fileOutput.txt)

    Ecco il codice del file.bat
    file.exe -ifileInput.txt -ofileOutput.txt

    Ora se lancio manualmente il file.bat (doppio click con il mouse) funziona
    mentre se da codice faccio
    codice:
            Try  
    process.start(Percorsofile.bat)
              Catch ex As Exception       
       End Try
    non funziona, anche se si esegue (vedo che si apre la finestra di dos)

    quindi il mio problema è quello di eseguire il file.bat da codice

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Puoi indicare il percorso completo dei file nel codice del batch?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    path file.bat: "Z:\Progetti VB 2010\PrjTest\bin\Debug\driver\file.bat"
    path fileInput.txt: "Z:\Progetti VB 2010\PrjTest\bin\Debug\driver\fileInput.txt"
    path file.exe: "Z:\Progetti VB 2010\PrjTest\bin\Debug\driver\file.exe"


    mentre fileOutput.txt: è il file che si drovrebbe creare eseguendo il codice all'interno del file file.bat, che è questo:
    codice:
    file.exe -ifileInput.txt -ofileOutput.txt

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Sì, ma non intendevo di mostrarlo a me ma di scriverlo nel codice del batch
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Utente di HTML.it L'avatar di IAL32
    Registrato dal
    Aug 2011
    Messaggi
    88
    Prova con questi due modi differenti, ma egualmente funzionali:

    codice:
    Shell("cmd.exe /c @echo off & ilfilebatch.bat", AppWinStyle.NormalFocus)
    codice:
    Dim command As New Process ' Si crea l'istanza Process
    command.StartInfo.FileName = "cmd.exe"
    command.StartInfo.Arguments = " /c " & "ilfilebatch.bat"
    command.StartInfo.CreateNoWindow = True / False 'qui si decide se verrà visualizzata la schermata del command prompt mentre esegue le istruzioni.
    command.Start()

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.