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
GELÖST

Beim Starten und Abbrechen von VB-Skript Fehlermeldung unterdrücken - Der Vorgang wurde durch den Benutzer abgebrochen. (Windows Script Host)

Frage Entwicklung VB for Applications

Mitglied: evinben

evinben (Level 2) - Jetzt verbinden

22.02.2012, aktualisiert 16:18 Uhr, 6917 Aufrufe, 6 Kommentare

VB-Skript optimieren - Fehlermeldung beim Abbruch des Skriptes.

Hallo an allen,

wenn ein VB-Skript gestartet wird, wird dem Benutzer in Windows 7/Vista durch die Benutzerkontensteuerung die Ja/Nein-Abfrage angezeigt. Wird „Nein“ gewählt wird, dann wird jeweils die folgende Fehlermeldung ausgegeben:

Windows Script Host
Script: c:\script.vbs
Zeile: 16
Zeichen: 1
Fehler: Der Vorgang wurde durch den Benutzer abgebrochen
Code: 800704C7
Quelle: (null)

Ich kenne mich mit VB-Sprache kaum aus und schaffe daher nicht in dem Code [try], [catch] und [end try] an den richtigen Stellen zu setzen, um die obige Fehlermeldung (die nur beim Abbruch des Skriptes bzw. der Kontensteuerungsabfrage auftritt) zu unterdrücken. Ich habe einige Lehrmittel im Netz, allgemein über Ausnahmebehandlung/Exception, durchgelesen, aber leider schaffe ich es nach mehreren Kombinationen immer noch nicht.
Bzw. andere alternative Methoden dürfen ebenso vorkommen.

Über eure Hilfe freue ich mich sehr.

Anbei ist der Code:

01.
'jumpreg: Nach Eingabe eines Regisrierungsschlüssels, den Registry-Editor in weiterer Instanz öffnen und zum Zweig direkt springen  
02.
Set WshShell = CreateObject("WScript.Shell") 
03.
Dim MyKey 
04.
MyKey = Inputbox("Registry-Pfad eingeben") 
05.
MyKey = MyKey 
06.
WshShell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Applets\Regedit\Lastkey",MyKey,"REG_SZ" 
07.
'Der Schalter [/m] von "regedit.exe" ermöglicht es den Registry-Editor in einer weiteren Instanz (neues Fenster) zu starten. 
08.
'Bei Bedarf weglassen, um den gesuchten Schlüssel stets in einem neuen Fenster anzeigen zu lassen. 
09.
WshShell.Run "regedit /m", 1,True 
10.
Set WshShell = Nothing
Gruß,
evinben
Mitglied: bastla
22.02.2012 um 16:36 Uhr
Hallo evinben!
... schaffe daher nicht in dem Code [try], [catch] und [end try] an den richtigen Stellen zu setzen
Es wird Dir nur ein schwacher Trost sein - aber ich könnte das auch nicht (vor allem, weil wir es mit VBScript und nicht mit JScript oder einem "ausgewachsenen VB" zu tun haben) ...

Da ich auch etwas Probleme habe, in dem von Dir geposteten Script die in der Fehlermeldung genannte Zeile 16 (und die darauf folgenden) zu finden, kann ich noch nicht einmal einen vernünftigen Vorschlag zum Thema "On Error" machen ...

... nicht zuletzt, weil Du nicht erklärst, was außer dem Unterdrücken der Fehlermeldung dann noch geschehen soll ...

Grüße
bastla
Bitte warten ..
Mitglied: evinben
22.02.2012 um 18:48 Uhr
Hall bastla!
irgendwie wirken deine Zeilen für mich beruhigend ;) - ich dachte es wäre etwas gaaaanz elementares, so dass alle es hier auf Anhieb "na, so wird es doch gemacht, hast du es nicht gewusst?" denken.
... nicht zuletzt, weil Du nicht erklärst, was außer dem Unterdrücken der Fehlermeldung dann noch geschehen soll ...
es soll eigentlich nichts mehr weiteres passieren, außer dass Windows Script Host nicht meckert, wenn ein Benutzer doch die Ausführung des Skriptes abgebrochen hat.
So ein ähnliches Skript (nur umfangreicher - mit mehreren Filter und Funktionen) soll dann in das Explorer-Kontext-Menü rein. Ein Versehentliches Anklicken dieses Eintrages ist ja somit vorprogrammiert und es wäre unangenehm, wenn ständig diese Fehlermeldung nervt.

Über eine Möglichkeit würde ich mich sehr freuen.

Gruß,
evninben
Bitte warten ..
Mitglied: bastla
22.02.2012 um 20:51 Uhr
Hallo evinben!

Mit
On Error Resume Next
weist Du VBS an, im Falle eines Fehlers kommentarlos mit dem nächsten Befehl weiter zu machen (das Script wird daher nicht abgebrochen) - ob Du das in diesem Fall willst, musst Du selbst beurteilen ...

Wenn Du schon weißt, an welcher Stelle ein Fehler zu erwarten ist, kannst Du zusätzlich als nächsten Befehl eine Abfrage der "Err.Number" einbauen, um trotzdem noch auf den Fehler reagieren zu können, etwa
If Err.Number <> 0 Then WScript.Quit 1
Grüße
bastla
Bitte warten ..
Mitglied: evinben
22.02.2012 um 22:45 Uhr
Hallo bastla!
so funktioniert es mit
01.
 On Error Resume Next 
sehr gut – also geht es doch. Danke schön!



Wo genau im Code empfiehlt es sich den anderen Codeabschnitt

01.
 If Err.Number <> 0 Then WScript.Quit 1 
einzufügen? Der Fehler wurde ursprünglich für die Zeile 16 gemeldet (bevor On Error Resume Next hinzugefügt wurde). Heißt es dann, dass die "Err.Number" –Abfrage so wie sie ist unverändert unterhalb der Fehlerzeile eingefügt werden soll (in der 17. Zeile)?

Gruß,
evinben
Bitte warten ..
Mitglied: bastla
22.02.2012 um 22:51 Uhr
Hallo evinben!

Da ja nach einem Fehler die nächste Anweisung (Zeile) ausgeführt wird, sollte dort (also gleich nach der ursprünglichen Zeile 16) die Abfrage platziert werden.

Grüße
bastla

P.S.:
also geht es doch
Ich hatte ja nur darauf hingewiesen, dass es mit "try" nicht geht (weil es das eben in VBS noch nicht gibt) ...
Bitte warten ..
Mitglied: evinben
23.02.2012 um 10:33 Uhr
Hallo bastla,

ich habe die Abfrage in dem Code an der richtigen Stelle eingefügt und es ist alles in Ordnung so. Ob mit Try oder ohne ist mir nun ein Wind.

Vielen herzlichen Dank für die Bereitschaft! Problem gelöst

Gruß,
evinben
Bitte warten ..
Ähnliche Inhalte
VB for Applications
VB-Script in VB-Script starten und Parameter übergeben
gelöst Frage von denkisVB for Applications7 Kommentare

Hallo liebe Scriptgemeinde, ich muss mehrere Rechner für den Übergang in eine neue Domäne vorbereiten. Dafür sind drei wesentliche ...

Windows Server
"Dieser Vorgang wurde aufgrund von Einschränkungen abgebrochen,.Gruppenrichtlinien lokal - auch Admin betroffen
gelöst Frage von fidelio1Windows Server9 Kommentare

Hallo, wie die Überschrift schon sagt, habe ich n Bock geschossen. Lokal sollte keiner großartig etwas machen können (Ausführen ...

Batch & Shell
Aus Batch mit Adminrechten ein VB Script starten - klappt nicht
Frage von m.fesslerBatch & Shell14 Kommentare

Hallo, möchte aus einer Batch welche mit Adminrechten gestartet wird ein VB Script starten. Wenn die Batch mit normalen ...

Windows 10
Windows Aufgabenplanung Skript starten (ohne Fehlermeldung falls nicht verfügbar oder erreichbar)
Frage von paupau90Windows 101 Kommentar

Hallo, ich würde gerne über die Windows Aufgabenplanung ein Skript starten, es soll aber keine Fehlermeldung kommen, wenn das ...

Neue Wissensbeiträge
Batch & Shell

Open Object Rexx: Eine mittlerweile fast vergessene Skriptsprache aus dem Mainframebereich

Information von Penny.Cilin vor 19 StundenBatch & Shell8 Kommentare

Ich kann mich noch sehr gut an diese Skriptsprache erinnern und nutze diese auch heute ab und an noch. ...

Humor (lol)

"gimme gimme gimme": Automatischer Test stolpert über Easter Egg im man-Tool

Information von Penny.Cilin vor 21 StundenHumor (lol)6 Kommentare

Interessant, was man so alles als Easter Egg implementiert. Ist schon wieder Ostern? "gimme gimme gimme": Automatischer Test stolpert ...

MikroTik RouterOS

Mikrotik - Lets Encrypt Zertifikate mit MetaROUTER Instanz auf dem Router erzeugen

Anleitung von colinardo vor 1 TagMikroTik RouterOS8 Kommentare

Einleitung Folgende Anleitung ist aus der Lage heraus entstanden das ein Kunde auf seinem Mikrotik sein Hotspot Captive Portal ...

Sicherheit

Sicherheitslücke in HP-Druckern - Firmware-Updates stehen bereit

Information von BassFishFox vor 1 TagSicherheit1 Kommentar

Ein weiterer Grund, dass Drucker keinerlei Verbindung nach "auswaerts" haben sollen. Unter Verwendung spezieller Malware können Angreifer aus der ...

Heiß diskutierte Inhalte
Windows Server
RDP macht Server schneller???
Frage von JaniDJWindows Server17 Kommentare

Hallo Community, wir betrieben seit geraumer Zeit diverse virtuelle Maschinen und Server mit Windows Server 2012. Leider haben wir ...

Windows 10
Bitlocker nach Verschlüsselung nicht mehr aufrufbar!
gelöst Frage von alexlazaWindows 1013 Kommentare

Hallo, ich besitze ein HP ZBook 17 G4 mit einem Windows 10 Pro Betriebssystem. Bei diesem Problem handelt sich, ...

Off Topic
Fachkräftemangel in Deutschland? - Talentschmiede schreibt alle 2 Tage die gleichen Stellen aus
Frage von Penny.CilinOff Topic12 Kommentare

Hallo, haben wir in Deutschland Fachkräftemangel? Die Talentschmiede schreibt gefühlt alle zwei Tage dieselben Stellen aus. Und das schon ...

Windows Server
Sichere Remote Desktop Verbindung wie?
gelöst Frage von nuss33Windows Server11 Kommentare

Hallo zusammen, eins vorweg: Ich besitze einen privaten Windows Server 2008 R2 zu Hause im Netzwerk er wird nicht ...