tuxhunt3r
Goto Top

VBS immer in der CMD-Konsole ausführen und immer ohne Logo ausführen

Hallo ans Forum

Was mich an VBS-Scripts immer gestört hat, ist einerseits die Tatsache, dass VBScripts standardmässig mit WScript.exe ausgeführt werden und nicht mit CScript.exe. Andererseits nervt mich bei der Ausgabe in der Konsole das folgende Logo:
Microsoft (R) Windows Script Host, Version 5.7
Copyright (C) Microsoft Corporation 1996-2001. Alle Rechte vorbehalten.

Das Teil stört vorallem dann, wenn man die Ausgabe des Scripts kurz mit ">" in ein Textfile umleiten will. Mit 2 kleinen Tricks bringt man Windows dazu, 1. VBS-Scripts immer mit CScript aus zu führen und 2. die Ausgabe immer ohne Logo darzustellen.

ACHTUNG: Die folgenden beiden Tipps habe ich nur unter Vista getestet!


back-to-topVBScripts immer mit Cscript ausführen

Dazu muss man nur die folgende Zeile in einem CMD-Fenster oder im "Ausführen..:"-Fenster ausführen (mit Adminrechten!):
cscript.exe //H:CScript
Damit wird der Standard-Scripthost von WScript auf CScript geändert.


back-to-topDie Ausgabe des Scripting-Host-Logos dauerhaft unterdrücken

Packt den folgenden Code in ein *.reg-File und führt es als Administrator aus:
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\VBSFile\Shell\Open2\Command]
@=hex(2):22,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,\
  00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,43,00,\
  53,00,63,00,72,00,69,00,70,00,74,00,2e,00,65,00,78,00,65,00,22,00,20,00,22,\
  00,25,00,31,00,22,00,20,00,25,00,2a,00,20,00,2f,00,2f,00,4e,00,6f,00,4c,00,\
  6f,00,67,00,6f,00,00,00

[HKEY_CLASSES_ROOT\VBEFile\Shell\Open2\Command]
@=hex(2):22,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,\
  00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,43,00,\
  53,00,63,00,72,00,69,00,70,00,74,00,2e,00,65,00,78,00,65,00,22,00,20,00,22,\
  00,25,00,31,00,22,00,20,00,25,00,2a,00,20,00,2f,00,2f,00,4e,00,6f,00,4c,00,\
  6f,00,67,00,6f,00,00,00

Dieses Regfile bewirkt (zumindest unter Vista, mit anderen Betriebsystemen habe ich es nicht getestet) folgendes:
Alle Dateien mit den Endungen *.vbe (verschlüsselte VBScripts) und *.vbs werden mit CScript und dem Parameter //nologo ausgeführt.
Konkret werden die folgenden beiden Reg-Keys geändert:


VBE:

HKEY_CLASSES_ROOT\VBEFile\Shell\Open2\Command
Den Inhalt von (Standard) von
"%SystemRoot%\System32\CScript.exe" "%1" %*  
in
"%SystemRoot%\System32\CScript.exe" "%1" %* //NoLogo  
ändern


VBS:

HKEY_CLASSES_ROOT\VBSFile\Shell\Open2\Command
Den Inhalt von (Standard) von
"%SystemRoot%\System32\CScript.exe" "%1" %*  
in
"%SystemRoot%\System32\CScript.exe" "%1" %* //NoLogo  
ändern.


Viel Spass damit!
Wenn man häufig Ausgaben von VBScripts in CSVs umleitet, um damit weitere Auswertungen zu machen, wird man es bald sehr zu schätzen wissen, wenn man nicht jedesmal von Hand das besch*** Logo löschen muss.

PS: Per Reg-Command geht es leider nicht, da sich im Datenfeld des zu ändernden Keys Anführungszeichen befinden. Zusammen mit den ohnehin notwendigen Anführungszeichen im Reg-Befehl wird dann ein falscher Wert in der Registry gespeichert.

Content-ID: 95358

Url: https://administrator.de/tutorial/vbs-immer-in-der-cmd-konsole-ausfuehren-und-immer-ohne-logo-ausfuehren-95358.html

Ausgedruckt am: 24.12.2024 um 12:12 Uhr

bastla
bastla 26.08.2008 um 18:16:32 Uhr
Goto Top
Hallo TuXHunt3R!

Nur als Ergänzung: Mit
cscript //nologo //s >nul
wird das Unterdrücken des Logos (für den aktuellen Benutzer) dauerhaft festgelegt.

Grüße
bastla
TuXHunt3R
TuXHunt3R 26.08.2008 um 22:02:42 Uhr
Goto Top
Ist soweit richtig, auch wenn ich den //s nicht kannte (habe das Help zu wenig genau gelesen).
Meine Variante hat allerdings den Vorteil, dass das Logo auf dem entsprechenden Computer bei keinem User angezeigt wird, was in diesem Fall das Ziel der Übung war.
miniversum
miniversum 01.09.2008 um 09:48:56 Uhr
Goto Top
Geht das nicht auch über den Ftype Befehl?

Mal ohne es ausprobiert zu haben sollte das doch mit entsprechender Einstellung an der cmd doch auch für alle Benutzer verändert werden können?
TuXHunt3R
TuXHunt3R 01.09.2008 um 22:54:31 Uhr
Goto Top
Ich persönlich wüsste nicht wie...
Wenn du es ausprobieren willst und hier postest: Bei mir stösst du auf Interesse.