Wie kann man in Batch eine Eingabeaufforferung über eine vbs Datei grafisch darstellen
Hallo Administratoren,
ich hab mir einen Batchscript programmiert, der eine Eingabeaufforderung besitzt.
Diese möchte ich gern grafisch darstellen.
Ich habe schon gesehen wie man info Fenster über vbs programmieren kann.
Gibt es eine Möglichkeit Eingabeaufforderung grafisch darzustellen?
Gruß Motorcross
ich hab mir einen Batchscript programmiert, der eine Eingabeaufforderung besitzt.
Diese möchte ich gern grafisch darstellen.
Ich habe schon gesehen wie man info Fenster über vbs programmieren kann.
Gibt es eine Möglichkeit Eingabeaufforderung grafisch darzustellen?
Gruß Motorcross
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 136010
Url: https://administrator.de/contentid/136010
Ausgedruckt am: 25.11.2024 um 19:11 Uhr
10 Kommentare
Neuester Kommentar
Hi,
nein, auch die Buttons kann man in VBS nicht selbst definieren.
Also, Du rufst deine Batch auf und übergiebst ein (oder mehrere) Variablen als Aufrufparameter:
In der Batch kannst Du dann die übergebenen Parameter mit %1, %2, usw. abrufen:
Gruß
Bernd
nein, auch die Buttons kann man in VBS nicht selbst definieren.
Also, Du rufst deine Batch auf und übergiebst ein (oder mehrere) Variablen als Aufrufparameter:
C:\MeineBatch.bat MeineVariable1 MeineVariable2
In der Batch kannst Du dann die übergebenen Parameter mit %1, %2, usw. abrufen:
REM Beispielcode
SET VAR1=%1
SET VAR2=%2
Gruß
Bernd
Hi,
Alternativ zu einem VB-Script - hier sind kleine Exe-Dateien, die einige einfache GUI-Abfragen ermöglichen (Nachrichtenbox, Eingabefelder, Dateiauswahl) - inkl. Beispielcode für deine Batch.
http://home.mnet-online.de/horst.muc/w32diald.htm
Zu mehreren Eingabefeldern mit VBScript gäbe es die Variante mit einer HTA-Applikation. Das setzt Wissen zu HTML und VBScript voraus.
Oder man compiliert sich seine gewünschte Anwendung mit Freepascal / C#/ ... aber ich denke, das führt eher in die falsche Richtung.
Viele Grüsse
Axel
EDIT: Link auf deutsche Seite
Alternativ zu einem VB-Script - hier sind kleine Exe-Dateien, die einige einfache GUI-Abfragen ermöglichen (Nachrichtenbox, Eingabefelder, Dateiauswahl) - inkl. Beispielcode für deine Batch.
http://home.mnet-online.de/horst.muc/w32diald.htm
Zu mehreren Eingabefeldern mit VBScript gäbe es die Variante mit einer HTA-Applikation. Das setzt Wissen zu HTML und VBScript voraus.
Oder man compiliert sich seine gewünschte Anwendung mit Freepascal / C#/ ... aber ich denke, das führt eher in die falsche Richtung.
Viele Grüsse
Axel
EDIT: Link auf deutsche Seite
Hallo Motorcross!
Du könntest ja einmal ganz konkret beschreiben, was Du eigentlich haben möchtest ...
... bis dahin nur kurz zur Verwendung innerhalb eines Batches:
Grüße
bastla
Du könntest ja einmal ganz konkret beschreiben, was Du eigentlich haben möchtest ...
... bis dahin nur kurz zur Verwendung innerhalb eines Batches:
@echo off & setlocal
set "G=%temp%\GetInput.vbs"
>"%G%" echo WScript.Echo InputBox("Gib was ein:")
set Ein=
for /f "delims=" %%i in ('cscript //nologo "%G%"') do set "Ein=%%i"
if not defined Ein echo Keine Eingabe (Abbruch) & goto :eof
echo Eingabe: %Ein%
bastla
Moin Motorcross,
vielleicht zwei Abkürzungen für dich... Bernd- setzt glaube ich zuviel systematisches Herangehen voraus...
Abkürzung 1)
Du kannst beispielsweise in der Batchdatei (falls du wirklich Batch als Grundlage nehmen willst statt alles in VBS zusammenzuschroten) folgende mehrfach nutzbare VBScript-Zeile in eine .vbs-Datei schreiben:
Abkürzung 2)
Statt gerade Montags zu fragen "Wie ruf ich denn InputBox() auf oder was hat die für Syntax?", was relativ riskant ist, kannst du auch in ziemlich jede hergelaufene Suchmaschine oder Forumssuchfunktion "vbscript Inputbox syntax" reintippseln und drei Hundertstel Sekunden warten.
Grüße
Biber
[Edit] Okay, okay.... montags bin ich auch etwas langsamer....*zugeb [/Edit]
vielleicht zwei Abkürzungen für dich... Bernd- setzt glaube ich zuviel systematisches Herangehen voraus...
Abkürzung 1)
Du kannst beispielsweise in der Batchdatei (falls du wirklich Batch als Grundlage nehmen willst statt alles in VBS zusammenzuschroten) folgende mehrfach nutzbare VBScript-Zeile in eine .vbs-Datei schreiben:
:: ... in deiner bislang unveröffentlichen Batchdatei:
>%temp%vbinputbox.vbs echo wscript.echo(Inputbox(wscript.Arguments(0)))
:: damit wird in deinem %temp%-Verzeichnis eine einzeilige Datei mit gültiger VBS-Syntax geschrieben
:: So rufst du die auf
cscript //nologo %temp%\vbinputbox.vbs "Bitte wat reingeben:"
:: Bei Eingabe von "Hallo" würde "Hallo" auf dem Bildschirm zurückgegeben.
:: Und wenn du diesen "Hallo"- oder sonstwas-Wert als Batchvariable brauchst:
FOR /F "delims=" %%i in ('cscript //nologo %temp%\vbinputbox.vbs "Bitte wat reingeben:"') do Set "MyBatchVar=%%"
If not defined myBatchvar goto :UserHatAbbruchVorgezogen
IF /i "%MyBatchvar%" == "WattIchHoffe" goto :BestCase
IF /i "%MyBatchvar%" == "WattIchNichHoffe" goto :IsDennWunschkonzert
GOTO :WorstCase
...
Abkürzung 2)
Statt gerade Montags zu fragen "Wie ruf ich denn InputBox() auf oder was hat die für Syntax?", was relativ riskant ist, kannst du auch in ziemlich jede hergelaufene Suchmaschine oder Forumssuchfunktion "vbscript Inputbox syntax" reintippseln und drei Hundertstel Sekunden warten.
Grüße
Biber
[Edit] Okay, okay.... montags bin ich auch etwas langsamer....*zugeb [/Edit]