Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Wie kann man in Batch eine Eingabeaufforferung über eine vbs Datei grafisch darstellen

Frage Entwicklung Batch & Shell

Mitglied: Motorcross

Motorcross (Level 1) - Jetzt verbinden

15.02.2010 um 18:59 Uhr, 6791 Aufrufe, 10 Kommentare

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
Mitglied: Berrnd
15.02.2010 um 19:21 Uhr
Hi,

falls Du mit "Eingabeaufforderung" eine einfache Abfrage, z. B. von einem String meinst, dies geht in VBScript ganz leicht:

01.
Option Explicit 
02.
 
03.
Dim MeineVariable 
04.
MeineVariable = InputBox("Gib was ein:")
Gruß
Bernd
Bitte warten ..
Mitglied: Motorcross
15.02.2010 um 19:29 Uhr
Hallo,
das sieht doch gar nicht so schlecht aus kann man das auch so hinbekommen das man zwei Eingabeaufforderungen in einem Fenster hat?
Und das man die Variablen in Batch übernehmen kann?
Gruß Motorcross
Bitte warten ..
Mitglied: Berrnd
15.02.2010 um 19:36 Uhr
Hi,

zwei Textfelder in einem Abfragefenster geht bei VBS nicht.
Die Variablen kannst Du ja einfach als Aufrufparameter an die Batch übergeben (abruf in der Batch mit %1, %2, usw.)

Gruß
Bernd
Bitte warten ..
Mitglied: Motorcross
15.02.2010 um 19:42 Uhr
Hallo,
kann ,man denn einstellen welche Knöpfe es gibt also ok oder abrechen?
Und dann wie geht das denn mit %1, %2...
Bitte warten ..
Mitglied: Berrnd
15.02.2010 um 19:50 Uhr
Hi,

nein, auch die Buttons kann man in VBS nicht selbst definieren.

Zitat von Motorcross:
Und dann wie geht das denn mit %1, %2...
Also, Du rufst deine Batch auf und übergiebst ein (oder mehrere) Variablen als Aufrufparameter:
01.
C:\MeineBatch.bat MeineVariable1 MeineVariable2
In der Batch kannst Du dann die übergebenen Parameter mit %1, %2, usw. abrufen:
01.
REM Beispielcode 
02.
SET VAR1=%1 
03.
SET VAR2=%2
Gruß
Bernd
Bitte warten ..
Mitglied: Motorcross
15.02.2010 um 19:56 Uhr
Hallo,
kann man das auch so programmieren, dass wenn Abbrechen gedrückt wird, "j" in eine Variable definiert wird?
Bitte warten ..
Mitglied: AxelHahn
15.02.2010 um 20:00 Uhr
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
Bitte warten ..
Mitglied: bastla
15.02.2010 um 20:09 Uhr
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:
01.
@echo off & setlocal 
02.
set "G=%temp%\GetInput.vbs" 
03.
>"%G%" echo WScript.Echo InputBox("Gib was ein:") 
04.
 
05.
set Ein= 
06.
for /f "delims=" %%i in ('cscript //nologo "%G%"') do set "Ein=%%i" 
07.
if not defined Ein echo Keine Eingabe (Abbruch) & goto :eof 
08.
echo Eingabe: %Ein%
Grüße
bastla
Bitte warten ..
Mitglied: Berrnd
15.02.2010 um 20:10 Uhr
Hi,

ja, also wenn auf "Abbrechen" geklickt, wird nichts in die Variable geschrieben.
Es steht dann also ein Leerstring bzw. der letzte Wert in der Variablen.

01.
Option Explicit 
02.
 
03.
Dim MeineVariable 
04.
MeineVariable = InputBox("Gib was ein:") 
05.
 
06.
If MeineVariable = "" Then 
07.
	MeineVariable = "j" 
08.
End If
Gruß
Bernd
Bitte warten ..
Mitglied: Biber
15.02.2010 um 20:14 Uhr
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:
01.
:: ... in deiner bislang unveröffentlichen Batchdatei: 
02.
>%temp%vbinputbox.vbs echo wscript.echo(Inputbox(wscript.Arguments(0))) 
03.
:: damit wird in deinem %temp%-Verzeichnis eine einzeilige Datei mit gültiger VBS-Syntax geschrieben 
04.
 
05.
:: So rufst du die auf 
06.
cscript //nologo %temp%\vbinputbox.vbs "Bitte wat reingeben:" 
07.
:: Bei Eingabe von "Hallo" würde "Hallo" auf dem Bildschirm zurückgegeben. 
08.
 
09.
:: Und wenn du diesen "Hallo"- oder sonstwas-Wert als Batchvariable brauchst: 
10.
FOR /F "delims=" %%i in ('cscript //nologo %temp%\vbinputbox.vbs "Bitte wat reingeben:"') do Set "MyBatchVar=%%" 
11.
If not defined myBatchvar goto :UserHatAbbruchVorgezogen 
12.
IF /i "%MyBatchvar%" == "WattIchHoffe" goto :BestCase 
13.
IF /i "%MyBatchvar%" == "WattIchNichHoffe" goto :IsDennWunschkonzert 
14.
GOTO :WorstCase 
15.
...
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]
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Ähnliche Inhalte
VB for Applications
VBS oder Batch um eine Datei in Unterordner zu verschieben (1)

Frage von MrRoyal zum Thema VB for Applications ...

Batch & Shell
gelöst Powershell oder Batch-Task: Kopiere Datei x mal und benenne diese um (2)

Frage von Lorderich zum Thema Batch & Shell ...

Batch & Shell
gelöst Per Batch nur neueste Datei mit bestimmten Dateianfang kopieren (3)

Frage von Peter32 zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

DSL, VDSL
DSL-Signal bewerten (10)

Frage von SarekHL zum Thema DSL, VDSL ...

Windows Server
Mailserver auf Windows Server 2012 (8)

Frage von StefanT81 zum Thema Windows Server ...

Backup
Clients als Server missbrauchen? (8)

Frage von 1410640014 zum Thema Backup ...