Top-Themen

Aktuelle Themen (A bis Z)

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

vbs inputbox eingabe in batch einfügen

Frage Entwicklung Batch & Shell

Mitglied: ConsTricTa

ConsTricTa (Level 1) - Jetzt verbinden

26.12.2008, aktualisiert 27.12.2008, 9531 Aufrufe, 5 Kommentare

zuerstmal sry wenn das wo falsch drinnen ist!

also ich kenn mich mit vbs noch nicht so gut aus aber ich fang mal an

ich öffne eine batch datei, die öffnet zb. ein vbs inputbox fenster (zb. geben sie ihr alter ein)
danach wird die zahl (zb. 53) in der batch an einer bestimmten zeile eingefügt!

danke schonmal und nochmal sry für doppelpost/falsches unterforum/etc..

lg
Mitglied: bastla
26.12.2008 um 23:15 Uhr
Hallo ConsTricTa und willkommen im Forum!

zuerstmal sry wenn das wo falsch drinnen ist!
Kein Beinbruch - solltest Du selbst nach "Entwicklung / Programmiersprachen / Batch & Shell" verschieben können ...
Dein Batch könnte etwa so aussehen:
01.
@echo off & setlocal 
02.
set In=%temp%\GetInput.vbs 
03.
>%In% echo Set args=WScript.Arguments:WScript.Echo InputBox(args(0), args(1), args(2)) 
04.
 
05.
set "Alter=" & for /f "delims=" %%i in ('cscript //nologo %In% "Bitte geben Sie Ihr Alter in Jahren ein!" "Alterseingabe" ""') do set "Alter=%%i" 
06.
 
07.
:Loop 
08.
set "Vorname=" & for /f "delims=" %%i in ('cscript //nologo %In% "Bitte geben Sie Ihren Vornamen ein!" "Vorname?" "Anonym"') do set "Vorname=%%i" 
09.
If not defined Vorname goto :Loop 
10.
echo Ihr Vorname lautet "%Vorname%" und Sie sind %Alter% Jahre alt.
Das Script für die "InputBox" wird im Batch selbst erzeugt - so muss nur eine Datei verwaltet / weiter gegeben werden.

Da das Script mit Parametern (Text, Fenstertitel, Vorgabewert - immer alle drei Parameter übergeben!) aufgerufen wird, kann es für die verschiedensten Eingaben verwendet werden.

Eine Kontrolle der Eingabe könnte im Script selbst erfolgen, im obigen Beispiel wird aber im Batch geprüft, ob ein nicht leerer (ein Leerzeichen genügt allerdings schon) Vorname eingegeben wurde - anderenfalls wird erneut zur Eingabe aufgefordert.

Das jedem Scriptaufruf vorangestellte
set "Variable="
sorgt dafür, dass nach dem Ablauf des Scripts die Eingabe in der Variable steht oder die Variable "not defined" ist.

Grüße
bastla
Bitte warten ..
Mitglied: ConsTricTa
27.12.2008 um 13:34 Uhr
ok danke!
kenn mich leider noch zu wenig aus um das alles zu verstehen
will hier auch ned lang rumnerven aber könntest du mir nochmal erklären was genau die befehle für so ein fenster sind?

und gibts hier irg.wo schon einen thread wo solche befehle,etc. erklärt werden?
danke nochmal
lg
Bitte warten ..
Mitglied: bastla
27.12.2008 um 14:00 Uhr
Hallo ConsTricTa!

Das VBScript sieht so aus:
01.
Set args=WScript.Arguments 
02.
WScript.Echo InputBox(args(0), args(1), args(2))
Hier werden alle verwendeten Elemente als Argumente (nummeriert ab Index 0 für das erste Argument) beim Aufruf "mitgeliefert" - für die Eingabe des Vornamens sähe das praktisch so aus:
01.
WScript.Echo InputBox("Bitte geben Sie Ihren Vornamen ein!","Vorname?","Anonym")
Durch das "WScript.Echo" wird die Eingabe nicht erst in einer VBS-Variablen gespeichert, sondern gleich wieder ausgegeben - so kann sie der Batch dann übernehmen.

könntest du mir nochmal erklären was genau die befehle für so ein fenster sind?
Eigentlich ist nur genau diese eine Zeile dafür erforderlich. Wolltest Du im VBScript noch mehr mit der Eingabe anstellen (auswerten, umformatieren), dann etwa so:
01.
Vorname=InputBox("Bitte geben Sie Ihren Vornamen ein!","Vorname?","Anonym") 
02.
WScript.Echo Len(Vorname)&","&UCase(Vorname)
In diesem Fall würde an den Batch die Länge des eingegebenen Vornamens (als Zeichenanzahl), ein Komma als Trennzeichen sowie der Vorname in Großbuchstaben zurückgegeben, wofür der Aufruf in Batch dann etwa so aussehen müsste:
set "Vorname=" & for /f "tokens=1* delims=," %%i in ('cscript //nologo %In%') do (set "Lang=%%i" & set "Vorname=%%j") 
Anmerkungen:
Die Variable %Lang% wird auf jeden Fall einen Wert erhalten (wenn nichts eingegeben wurde, ist die Länge eben 0), daher muss sie nicht unbedingt vorweg gelöscht werden.
Der Vorname könnte aus mehreren Wörtern bestehen und sogar das Trennzeichen "," enthalten, da in der "for"-Schleife durch das "1*" festgelegt ist, dass nur das erste Trennzeichen zu beachten ist - dadurch wird der Teil davor in die Laufvariable %%i und der gesamte Teil nach diesem ersten Trennzeichen (als Einheit) in %%j gesetzt.

Grüße
bastla
Bitte warten ..
Mitglied: ConsTricTa
27.12.2008 um 15:44 Uhr
danke echt nett
werd das dann mal alles ausprobieren!
lg

EDIT:
vl. blöde frage aber %Alter% kann ich doch normalerweise für eine IF formel verwenden?! oder
(alter ist ja hier nur ein beispiel)
ich kriegs nämlich nicht hin
lg
Bitte warten ..
Mitglied: bastla
27.12.2008 um 16:09 Uhr
Hallo ConsTricTa!

%Alter% kann ich doch normalerweise für eine IF formel verwenden?!
Etwa so:
if %Alter% geq 18 goto :Volljaehrig
Die Vergleichsoperatoren findest Du in der Online-Hilfe (mit "if /?").

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Batch - Eingabe überprüfen
gelöst Frage von JantlemanBatch & Shell5 Kommentare

Hallo Community, ich beschäftige mich seit einigen Tagen mit Batch und habe beschlossen einen einfachen Sleeptimer zu programmieren. Bis ...

Batch & Shell
Batch Rechnung mit Eingabe und Umgangsvariablen
gelöst Frage von Matze1508Batch & Shell7 Kommentare

Guten Tag, mein Problem ist, ich will die Dateianzahl in einem Ordner zählen, was auch funktioniert mit: for /f ...

Batch & Shell
Batch User-Eingaben speichern
Frage von xXmaasterXxo1Batch & Shell4 Kommentare

Hallo, ich beschäftige mich seit einiger Zeit mit Batch Programmierung. Ich habe nun ein Programm erstellt, mit dem man ...

Batch & Shell
Batch: Programm öffnen und beliebige Eingabe einfügen (z.b als pw)
gelöst Frage von VernoxVernaxBatch & Shell1 Kommentar

Hallo. Wie kann ich mit der Batch ein Programm öffnen und danach einen text den ich vorher eingegeben habe ...

Neue Wissensbeiträge
Viren und Trojaner

Deaktivierter Keylogger in HP Notebooks entdeckt

Information von bitcoin vor 12 StundenViren und Trojaner1 Kommentar

Ein Grund mehr warum man Vorinstallationen der Hersteller immer blank bügeln sollte Der deaktivierte Keylogger findet sich im vorinstallierten ...

Router & Routing

Lets Encrypt kommt auf die FritzBox

Information von bitcoin vor 16 StundenRouter & Routing

In der neuesten Labor-Version der FB7490 integriert AVM unter anderem einen Let's Encrypt Client für Zugriffe auf das Webinterface ...

Internet

Was nützt HTTPS, wenn es auch von Phishing Web-Seiten genutzt wird

Information von Penny.Cilin vor 3 TagenInternet17 Kommentare

HTTPS richtig einschätzen Ob man eine Webseite via HTTPS aufruft, zeigt ein Schloss neben der Adresse im Webbrowser an. ...

Webbrowser

Bugfix für Firefox Quantum released - Installation erfolgt teilweise nicht automatisch!

Erfahrungsbericht von Volchy vor 4 TagenWebbrowser8 Kommentare

Hallo zusammen, gem. dem Artike von heise online wurde mit VersionFirefox 57.0.1 sicherheitsrelevante Bugs behoben. Entgegen der aktuellen Veröffentlichung ...

Heiß diskutierte Inhalte
Batch & Shell
Trusted Sites für alle User auf dem PC einpflegen
Frage von xXTaKuZaXxBatch & Shell12 Kommentare

Aufgabestellung: Es sollen auf 1 PC (bzw. mehreren PCs) vertrauenswürdige Sites per Powershell eingetragen werden, die für alle User ...

Voice over IP
Telefonstörung - Ortsrufnummern kein Verbindungsaufbau
Frage von Windows10GegnerVoice over IP10 Kommentare

Hallo, sowohl bei uns als auch beim Opa ist es über VoIP nicht möglich Ortsrufnummern anzurufen. Es kommt nach ...

Vmware
DOS 6.22 in VMWare mit CD-ROM
gelöst Frage von hesperVmware10 Kommentare

Hallo zusammen! Ich hab ein saublödes Problem. Es ist eine VMWare mit DOS 6.22 zu erstellen auf dem ein ...

Cloud-Dienste
PIM als SaaS Nutzungsgebühr
Frage von vanTastCloud-Dienste8 Kommentare

Moin, wir haben uns ein PIM (Product Information Management) nach unseren Ansprüchen für viel Geld als SaaS-Lösung bauen lassen. ...