Thunderdragon17 10 Geschrieben 12. März 2009 Melden Geschrieben 12. März 2009 Hi @ all, ich hab hier ein Script und möchte nun prüfen, ob der "Abbrechen"-button gedrückt wurde (also vbCancel). Ist das iwie in einer IF-Abfrage möglich? Gruß David EDIT: Scriptsprache: VBS ;)
d.stegemann 10 Geschrieben 12. März 2009 Melden Geschrieben 12. März 2009 Morgen David, Set oFSO = CreateObject("Scripting.FileSystemObject") Set oFolder = oFSO.GetFolder(".") For Each sFolder In oFolder.Subfolders If MsgBox("mid (Foldername, 2,4) ist """ & mid(sFolder.Name,2 ,4) & """" _ , 1, "OK") = 2 _ Then WScript.Quit Next Schau es dir mal an :) 1 OK button 2 Cancel button 3 Abort button 4 Retry button 5 Ignore button 6 Yes button 7 No button Gruß Dirk
Thunderdragon17 10 Geschrieben 12. März 2009 Autor Melden Geschrieben 12. März 2009 hmmm irgendwie will es bei mir nicht klappen (liegt wohl an meiner noobigkeit ;)) Hier mal der Trümmercode ^^ while(i=1) For Each sFolder In oFolder.Subfolders If MsgBox("mid (Foldername, 2,4) ist """ & mid(sFolder.Name,2 ,4) & """" , 2, "Cancel") = 2 Then WScript.Quit else if slc = "add" then fn = Inputbox("Vorname:", "UserPanel 2.1 - Vorname") if (fn = "") then msg11 = MsgBox("Bitte geben Sie einen Vornamen ein.", vbCritical, "UserPanel 2.1") else ln = Inputbox("Nachname:", "UserPanel 2.1 - Nachname") pwd = Inputbox("Passwort:", "UserPanel 2.1 - Passwort") if (pwd = "") then msg12 = MsgBox("Bitte geben Sie ein Passwort ein.", vbCritical, "UserPanel 2.1") else upn = Inputbox("Anmeldename:", "UserPanel 2.1 - Anmeldename") if (upn = "") then msg13 = MsgBox("Bitte geben Sie einen Anmeldenamen ein.", vbCritical, "UserPanel 2.1") else tel = Inputbox("Telefonnummer:", "UserPanel 2.1 - Telefonnummer") raum = Inputbox("Raumnummer:", "UserPanel 2.1 - Raumnummer") WSHShell.Run "dsadd user cn="& fn & ",ou=sicherheitsgruppen,dc=bmbf,dc=hepp -fn "& fn & " -ln "& ln & " -pwd "& pwd & " -tel "& tel & " -office "& raum & " -upn "& upn & "@bmbf.hepp -disabled no", , True i=0 msg2 = MsgBox("Der User " & fn & " " & ln & " wurde erstellt.", vbExclamation, "UserPanel 2.1") End if End if End if End if End if wend und hier mal die einzelnen bereiche: Set WSHShell = WScript.CreateObject("WScript.Shell") Set objWMIService = GetObject("Winmgmts:root\cimv2") Set oFSO = CreateObject("Scripting.FileSystemObject") Set oFolder = oFSO.GetFolder(".") i = 1 Das ist sozusagen der header, wo alles deklariert wird etc... For Each sFolder In oFolder.Subfolders If MsgBox("mid (Foldername, 2,4) ist """ & mid(sFolder.Name,2 ,4) & """" , 2, "Cancel") = 2 Then WScript.Quit else hier ist die Anweisung, die den Button abfragt. Blickt da jmd durch und findet den Fehler?? Laut Fehlermeldung fehlt eine Anweisung im wend Gruß David
blub 115 Geschrieben 12. März 2009 Melden Geschrieben 12. März 2009 Hallo thunderdragon Hier wird der Umgang mit Messagebox samt Parametern und Beispielscripten genau erklärt Microsoft Windows 2000 Scripting Guide - Displaying Timed Message Boxes zu deinem Code: ein "For Each" ohne ein "Next" führt zum Fehler. Das ist nachvollziehbar http://www.microsoft.com/technet/scriptcenter/guide/sas_vbs_ojjo.mspx cu blub
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden