Batch-Datei mit Parameter aufrufen

soyo

Erfahrenes Mitglied
Juhuu,

Ich arbeite gerade zum ersten mal mit VB, um genau zu sein Visual Studio 2005. Es soll eine Batchdatei ausgeführt werden, wenn man auf einen Button drückt. Gesagt .. getan:

Code:
Shell(batchpath, AppWinStyle.NormalFocus)

Damit gibt es keine Probleme. Ich möchte jedoch Parameter an die Batch-Datei übergeben. Das heißt ein Aufruf der Datei würde ungefähr so aussehen : "..dateipfadblabla/output.bat 123"

In der Batch steht zur Zeit nur folgendes zum testen:
Code:
@echo off

echo Parameter: %1%

PAUSE

Wenn ich über eine andere Batch, diese Batch-Datei ausführe(mit dem. o.g. Aufruf) mit Parameter gibt es keine Probleme,wenn ich aber das mit dem gleichen Aufruf in VB verwende funktioniert das nicht. Also wie muss der Aufruf der Batch-Datei mit Parameter richtig heißen?


gruß soyo
 
Hatt sich schon alles erledigt. Hatte erst eine Frage was VBScript betrifft, bin aber selbst auf die Lösung gekommen.
 
@Soyo,

also wenn man Deine Beiträge aufmerksam liest, dann waren diese hier richtig. Mr. Dr. S. hat an dieser Stelle also nicht recht.

Nun warum bin ich hier. Ich hatte Deine Beiträge gelesen und damit Zeit investiert, aber leider behälst Du die Lösung für Dich. ;-)

Ich habe nämlich das gleich Problem und bitte Dich Deine Lösung hier zu präsentieren.
Ich suche auch die Möglichkeit über VBS Script einen Batch mit Parameter aufzurufen.

Wäre also nett, wenn Du Deine Lösung präsentierst.
 
um dir weiterzuhelfen jojo

versuch es mal so

Visual Basic:
 Set sh = CreateObject("WScript.Shell")
sh.Run("notepad.exe c:\test.txt")
Grüsse bb

PS: Mr. Dr. S hat meistens recht. Des wegen widerspreche ich ihm so selten ;-)
 
@bainbyte

Danke für Deine Antwort.
Deine Lösung funktioniert ebenfalls und ist etwas kürzer. ;-)

Ich hatte mir nun auch eine Lösung erarbeitet:

set oshell =wscript.CreateObject("WScript.Shell")
Dim parameter
parameter = "123"
Dim aufruf
aufruf = "test.bat" & " " & parameter
oshell.run(aufruf)

Pendant in Deiner Syntax:
1. Set sh = CreateObject("WScript.Shell")
2. sh.Run("test.bat 123")

Gruß jojo-tux
 
Mr. Dr. S. hat an dieser Stelle also nicht recht.
Ich denke mal, damit bin ich gemeint, nun erklär mir mal, wieso ich nicht recht hatte?

soyo hat erstmal von VS2005 geredet, brainbyte hat ihn dann mal auf die unterschiedlichen Foren für VB und VB.NET hingewiesen (und das ist richtig). soyo hat dann gefragt, ob VBS hier behandelt wird, da VBS ja noch auch dem alten System (bis VB6) basiert, wird die Sprache hier behandelt (ist also auch richtig) und das hab ich ihm gesagt.

Und jetzt erklär mir bitte, wo ich falsch lag, so pauschale Aussagen ganz ohne Erklärung mag ich nicht. Wenn ich mal falsch liege (kann ja passieren) und ich werde sachlich darauf hingewiesen (mit Begründung), dann ist das kein Problem, mit einfach nur pauschal was reinschmeißen beißt du bei mir aber auf Granit (im Netz und IRL)


Der Doc!
 

Neue Beiträge

Zurück