butterblume
Goto Top

Hintergrundfarbe/ Schriftfarbe/ Fenstergrösse/ Sound in Batch definieren

Hallo, da bin ich wieder mit meiner Menüauswahl-Datei aber jetzt gehts um etwas anderes, wie ihr schon bei meinem Titel bemerkt habt.

Ich hab mit promt probiert...und zwar so:

@echo off

prompt $e[1;32m$p$g
cls

:START
Echo.
Echo.
Echo Menu
Echo.
Echo.
Echo 1 - Explorer
Echo.
Echo 2 - Msn
Echo.
Echo 3 - Backup
Echo.
Echo 4 - Beenden
Echo.

set /p choice=Bitte treffe deine Auswahl_

if %choice% == 1 goto EXPLORER
if %choice% == 2 goto MSN
if %choice% == 3 goto BACKUP
if %choice% == 4 goto QUIT
goto RESTART

:EXPLORER
explorer.exe
goto START

:MSN
C:\Programme\Messenger\msmsgs.exe
goto START

:BACKUP
backup.bat
goto START

:RESTART
set /p _ok=Falsche Eingabe! Bitte Treffe deine Auswahl!
goto START

:QUIT
exit
aber es funktioniert nicht, könnt ihr mir helfen???
Ich hab gehört man kann mit color / irgendwie, ich weiss aber nicht genau wie... Und Sound kann man auch irgendwie machen...

Danke sehr, Kristina

Content-Key: 51903

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

Printed on: April 23, 2024 at 18:04 o'clock

Member: Biber
Biber Feb 16, 2007 at 17:18:45 (UTC)
Goto Top
Moin Butterblume,

diese ANSI-Escape-Sequenzen gibt es eigentlich nicht mehr unter Win2000/WinXP.
Das war ein Zusammenspiel von dem früheren Befehlsinterpreter command.com und der ANSI.SYS, einem Device-Treiber, der in die unter DOS vorhandene config.sys eingebunden werden musste.

So etwas unter WinXP zum Fliegen zu bringen schaffen heutzutage nur noch drei weitere Biber (hätte ich vor einer halben Stunde behauptet).

Inzwischen habe ich aber erstaunlicherweise sogar eine Anleitung in einem der grossen Tankstellen-PC-Magazine gefunden:
ANSI-Treiber laden.

Habe ich nicht getestet, könnte aber funktionieren.

Gruss
Biber
Mitglied: 36539
36539 Feb 16, 2007 at 21:31:16 (UTC)
Goto Top
Hallo Kristina,

Hintergrundfarbe, Schriftfarbe kannst Du über Color-Befehl einrichten
color xy (x= Hintergrundfarbe, y= Schriftfarbe/Vordergrund)
color 4e wäre z.Bsp. ein Fenster mit rotem Hintergrund und gelber Schrift.
Legt die Hinter- und Vordergrundfarben für die Konsole fest.

COLOR [attr]

  attr      Gibt die Farbattribute für die Konsolenausgabe an.

Farbattribute werden durch ZWEI hexadezimale Ziffern angegeben - die erste
bezieht sich auf den Hintergrund, die zweite auf den Vordergrund. Jede Ziffer
kann einen der folgenden Werte annehmen:

    0 = Schwarz        8 = Dunkelgrau
    1 = Dunkelblau     9 = Blau
    2 = Dunkelgrün     A = Grün
    3 = Blaugrün       B = Zyan
    4 = Dunkelrot      C = Rot
    5 = Violett        D = Magenta
    6 = Ocker          E = Gelb
    7 = Hellgrau       F = Weiß

Wenn der COLOR-Befehl ohne Argument aufgerufen wird, werden die Farbein-
stellungen wiederhergestellt, mit denen CMD.EXE gestartet wurde. Diese werden
durch das aktuelle Konsolenfenster, die /T-Befehlszeilenoption oder durch den
Registrierungswert "DefaultColor" bestimmt.  

Fenstergröße kannst Du über mode-Befehl (kann aber noch mehr) einrichten: mode x,y (x=zeilenbreite, y=zeilenanzahl)
mode 82,35 wäre z.Bsp. ein Fenster mit 82 Zeichen pro Zeile und 35 Zeilen

Sound ginge über den Umweg der "csound.com" von Horst Schaeffer. Aber erwarte keinen Sourround-Effekte - ist mehr ne Spielerei. Du musst die "csound.com" von der Batch aus aufrufen. Die Beschreibung wie es geht und die "csound.com" ist in "PBATS" enthalten.
http://home.mnet-online.de/horst.muc/main.htm


Für ANSI-Sequenzen (Monitor oder Tastatur) benötigst Du sogenannte Konsoltreiber.
Mit dem prompt-Befehl allein funktioniert das nicht.
siehe Batchkurs von Horst Schaeffer als Download http://home.mnet-online.de/horst.muc/batkurs.htm
oder
http://www.antonis.de/dos/batchtut/bat-kurs/#17
http://www.antonis.de/dos/batchtut/bat-kurs/#18
Ich hab damit mal rumprobiert - es aber nicht hinbekommen (WIN 2000/XP).
Hab sicher was falsch gemacht, denn die Testbeispiele mit dem Tool "WBAT" von Horst Schaeffer http://home.mnet-online.de/horst.muc/ui.htm funktionieren tadellos unter 2000/XP. Den Tip von Biber hab ich nicht getestet.

gruß
onegasee59
Member: Butterblume
Butterblume Feb 19, 2007 at 09:06:48 (UTC)
Goto Top
Ich hab die Tools installiert und den Verzeichnis mit der Datei csound.com bei den Umgebungsvariablen eingebunden. Jetzt frage ich die Pfade mit path ab und der Pfad ist noch nicht da. Hab auch schon den PC neugestartet.
Ja und wenn ich einfach csound eingebe, denn findet er den Befehl nicht.

Was mache ich da falsch?
Mitglied: 36539
36539 Feb 19, 2007 at 11:19:05 (UTC)
Goto Top
Du musst den exakten Pfad zur "csound.com" angeben.
Am besten pack die "csound.com" ins gleiche Verzeichnis von der aus Du die Batch startest.

ich hab dir mal ein Bsp. für dich zum runterladen gemacht.
http://www.der-wmp.de/extra/Bsp_kristina.zip

gruß
onegasee59
Member: Butterblume
Butterblume Feb 19, 2007 at 16:48:07 (UTC)
Goto Top
@36539

Danke für deine Mühe...ehm

Für was kann ich überhaupt diese Datei brauchen, wie kann ich Hintergrundmusik oder so eonbauen? Ich weiss ehrlich gesagt gar nicht wie ich sie nutzen kann...wollte mal ausprobieren...
Member: Butterblume
Butterblume Feb 19, 2007 at 17:04:03 (UTC)
Goto Top
@36539

Sorry, hab gerade gemerkt für was sie ist und hab ein bischen Zahlen verändert. Aber das mit der Hintergrundmusik würde mich schon interessieren...bin ein bischen abspruchsvoll ich weiss...ich weiss ja gar nicht ob das möglich ist.
Mitglied: 36539
36539 Feb 20, 2007 at 11:03:35 (UTC)
Goto Top
Möglich wohl, aber dann nicht mehr so einfach in einer Batch zu bewerkstelligen.
Mit "Csound.com" geht sowas gar nicht - damit kannst Du lediglich Tonfolgen erzeugen. siehe "csound.txt"
Man könnte den Windows Media Player (WMP) 6.4 dafür "missbrauchen", der spielt dann eine ausgewählte Musik ab.
Der WMP 6.4 ist auf Systemen von WIN 98 bis WIN XP vorhanden.

Ginge dann so an:
"C:\Programme\Windows Media Player\mplayer2.exe" /play /close "C:\WINDOWS\Media\floete.wav"  

Problem dabei, der WMP 6.4 startet nicht versteckt minimiert, ich habs jedenfalls noch nicht hinbekommen.. Und die Einstellung des WMP unter Ansicht - Optionen muss auf 1-mal Wiederholung stehen.

Probiers einfach aus und setzte obiges anstelle des "csound-Zeile" in meiner Bsp-Batch.

[edit]
Also ich hab nochmal experimentiert. Es geht - mit dem Media Player Classic (MPC).
Automatischer Start, Sound- oder Video-Wiedergabe und nach Beenden der Wiedergabe automatisches Beenden des Player.
Geht sogar minimiert, so das während der Wiedergabe der Player selbst nicht zu sehen ist.

Du musst dazu den MPC runterladen und ins gleiche Verzeichnis wie die Batch kopieren. Ein installieren des MPC ist NICHT erforderlich.
Ebenfalls ins gleiche Verzeichnis wie die Batchdatei, packst Du Dir die gewünschte Sounddatei.

Die Alternative - der Media Player Classic (MPC) http://www.der-wmp.de/index.htm#MPC

die Befehlszeile muss dann so aussehen:
"Startpfad Deiner Batch\mplayerc.exe" /play /close /minimized "Startpfad zur Sounddatei\Sound-Datei"  

ich hab nochmal eine Bsp.-Batch für Dich mit echtem Sound gemacht.
http://www.der-wmp.de/extra/Bsp_kristina_mit_Sound.zip
starte die "kristina.cmd" und mach eine falsche Eingabe, schau was passiert.
Aus Sicherheitsgründen hab ich bei allen richtigen Eingaben nur ne echo-Meldung gemacht damit nicht jemand sich was zerschießt. Es finden also keinerlei Aktionen auf dem System statt die irgendeine Systemveränderung bewirken könnten.
[/edit]

gruß
onegasee59
Member: akkaren
akkaren Sep 19, 2011 at 20:10:05 (UTC)
Goto Top
Gibt es denn die Möglichkeit nur die ausgabe einer Variabel farbig zu machen? Oder nur einzelne Zeichen in einer Zeile farbig zu schreiben?