nickmcnaim
Goto Top

Bildschirmausgabe vollständig ausschalten

Hallo allerseits!

Ich schreibe zur Zeit ein Batch-Script, welches die Namen bestimmter Unterordner und Dateien ausliest und mit Hilfe von WBAT in Bildschirmmenüs ausgibt.

Das funktioniert soweit auch schon ganz gut. Das einzige was mich ein bisschen stört, ist die Tatsache, dass ich die sonstige Bildschirmausgabe mit "@ECHO OFF" nicht vollständig ausschalten kann. Deshalb blitzen immer noch kurz die SET-Befehle auf, bevor ich den Bildschirminhalt via "CLS" lösche und das WBAT-Menü erstelle.

Ich habe bereits versucht, Hintergrund- und Schriftfarbe gleichermaßen auf Schwarz zu setzen, aber das erlaubt die cmd.exe nicht. Würde mich freuen, wenn mir jemand einen Tipp geben würde, wie ich das trotzdem hinkriegen könnte.

Anbei noch ein kleiner Code-Schnipsel:

SET LastName=
SET /A NumberNames=0
FOR /F "tokens=* delims=" %%a IN ('DIR /AD /B') DO CALL "%BatchFilesDirPath%\ReadingFolderNames.bat" "%%a"
SET Fol

ReadingFolderNames.bat
IF "%~1" == "%LastName%" GOTO :End
SET /A NumberNames=%NumberNames%+1
SET "FolderName%NumberNames%=%~1"
SET "MenuItem%NumberNames%=%~1"
SET LastName=%~1
:End

Content-ID: 117489

Url: https://administrator.de/contentid/117489

Ausgedruckt am: 22.11.2024 um 15:11 Uhr

77559
77559 04.06.2009 um 17:06:37 Uhr
Goto Top
Hallo NickMcNaim.

Set Befehle erzeugen nur bei Fehlern oder ohne Zuweisung eine Ausgabe.

Wenn du eine Variable initalisierst kannst du vorher feststellen ob sie defniert ist.

If defined LastName SET "LastName="

Dein Code-Schnipsel kommt Aufgrund fehlendem Tagging mit < code> < /code> nur unvollständig an.

Wenn deine CMD Fenster eine von Command.com nicht unterstützte Größe hat (nur 80 Zeichen mal 25/43/50 Zeilen) kann es bei Eiunsatz von 16bit Programmen zu diesem Flackern kommen.

Gruß
LotPings
78632
78632 04.06.2009 um 17:11:31 Uhr
Goto Top
Wenn du eine Variable sowieso löschen willst, kannst die Überprüfung des Vorhandenseins auch ruhig lassen. face-smile

Set Lastname=

@77559
Irgendwelche Einwände? face-devilish
77559
77559 04.06.2009 um 17:22:09 Uhr
Goto Top
Zitat von @78632:
@77559
Irgendwelche Einwände? face-devilish
Ich würde, um eindeutig zu bleiben und Übertragungsfehler auszuschließen immer
Set "Lastname="  
nehmen.

Gruß
LotPings
78632
78632 04.06.2009 um 17:40:13 Uhr
Goto Top
Einverstanden. face-wink Es ging mir ja nur um die vorherige Überprüfung.
NickMcNaim
NickMcNaim 04.06.2009 um 18:25:39 Uhr
Goto Top
Danke für Eure schnellen Antworten. Die Tipps bezüglich "defined" und Anführungszeichen werde ich mir zu Herzen nehmen.

Und was das eigentliche Problem angeht... da bin ich gerade selbst hinter gekommen. Das "SET Fol" ist an dieser Stelle reichlich überflüssig. face-wink