Willkommen im PC-Welt-Forum
Liebe Leser,
Wenn dies Ihr erster Besuch hier ist, lesen Sie bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Sie müssen sich vermutlich registrieren, bevor Sie Beiträge verfassen können. Klicken Sie rechts auf 'Jetzt registrieren.', um den Registrierungsprozess zu starten.
Wenn dies Ihr erster Besuch hier ist, lesen Sie bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Sie müssen sich vermutlich registrieren, bevor Sie Beiträge verfassen können. Klicken Sie rechts auf 'Jetzt registrieren.', um den Registrierungsprozess zu starten.
Ergebnis 1 bis 9 von 26
-
27.04.2009, 16:25 #1
Batch - Über echo Datei erstellen
Halli Hallo!
So wirklich Programmieren ist Batch ja nicht, trotzdem mal mit hier rein, weil's auch schon mehrere davon gibt.
Ich Möchte über eine kleine simple Batch-Datei eine Start-Routine eines Programms, was noch 'n Parameter braucht, in Autostart erstellen:
Das funktioniert aber nicht. Starte ich es im CMD, sehe ich, dass es folgendes ausführt:Code:echo programmpfad\start.exe -s > %AllUsersProfile%\Startmenü\Programme\Autostart\Start.bat
Damit erstellt er mir eine undefinierte Datei "Dokumente" auf C: mit dem Inhalt "programmpfad\start.exe -s und Einstellungen\All Users\Startmenü\Programme\Autostart\ShutDown.bat", was mir natürlich nicht hilft.Code:echo programmpfad\start.exe -s und Einstellungen\All Users\Startmenü\Programme\Autostart\Start.bat > C:\Dokumente
Aus irgendeinem Grund modelt er mir den ersten Teil des %AllUsersProfile% hinten dran und entstellt so natürlich den Sinn.
Warum macht er das und wie unterbinde ich das?
Tschüss MarkusGeändert von Chickenmarkus (27.04.2009 um 16:28 Uhr) Grund: Hatte die "\" erst nicht mit gespeichert.
Der beste Weg einen PC zu beschleunigen, ist mit 9,81 m/s².
Die Lösung des Problems ist niemals die Gewalt, doch manchmal hilft es, wenn es auch mal knallt.
-
27.04.2009, 16:41 #2
Versuch mal den Pfad in " " zu setzen.
Wozu dient der Parameter -s bei der start.exe eigentlich ? Nurmal aus reiner Neugier gefragt.
Code:echo programmpfad\start.exe -s > "%AllUsersProfile%\Startmenü\Programme\Autostart\Start.bat"
MfG VB-Coder
-
27.04.2009, 17:45 #3
Gänsefüßel hab ich schon probiert. Gleiches Resultat der Verschiebung, nur mit zwei Gänsefüßeln mehr in der ungewollten Datei.
Das -s steht dafür, dass mir das Programm die Netzwerktreiber mit lädt und nicht denkt, es müsse nur auf dem lokalem PC arbeiten.
Geändert von Chickenmarkus (27.04.2009 um 17:48 Uhr)
Der beste Weg einen PC zu beschleunigen, ist mit 9,81 m/s².
Die Lösung des Problems ist niemals die Gewalt, doch manchmal hilft es, wenn es auch mal knallt.
-
27.04.2009, 19:45 #4
Megabyte
- Registriert seit
- 06.2006
- Beiträge
- 1.905
Batch ist DAS Lernprogramm für alle schlaueren Programme > dort lernt man, dass ein falscher Buchstabe oder Befehl...
...alles missraten lässt... und das ziemlich gefahr- und mühelos...
Warum verwendest Du "Echo"? > Das zeigt den Befehl in der Konsole an, tut sonst aber nichts...
Der Befehl ist >>>
C:\DeinPfadUndDateiName /Parameter
Je nachdem auch >>>
"DeinPfadUndDateiName /Parameter" .... in Anführungszeichen setzen
oder >>>
"DeinPfadUndDateiname" /Parameter
oder >>>
DeinPfadUndDateiName "/Parameter"
...oder sonst eine Variante...
Ausprobieren, was die Batch und Dein Programm akzeptieren können....
Gruss Urs
-
28.04.2009, 00:13 #5
Hallo,
wie wäre es mit dem Code?
Code:cd %AllUsersProfile% cd Startmenü\Programme\Autostart echo programmpfad\start.exe -s > Start.bat cd \
Die besten Kapitäne stehen am Ufer.
-
28.04.2009, 11:24 #6
@Urs2
Hast im Prinzip recht, aber echo kann auch noch viel mehr.
Ich nutze nun grad "eine 2te Datei erzeugen, ergänzen", ungefähr aus der Mitte von http://www.libe.net/themen/BATch-Befehle.php
Ergänze ich da meinen Pfad direkt nach dem echo zu "programmpfad\start.exe -s", habe ich in der neu erstelen Batch halt noch zwei Gänsefüßel mehr.
@Hascheff
Hab's mal probiert. Funktioniert schon weiter, indem es mir nun die richtige Datei erstellt, aber noch im allgemeinen AllUser-Ordner.
"cd Startmenü\Programme\Autostart" findet er dann nicht. Noch weiter auseinander genommen und es scheitert am "cd Startmenü".
Und siehe da, es kann nur an etwas liegen, was ich immer unbeachtet hab lassen. Egal wann, wie und in welcher Kombination "Startmenü" in der Batch auftaucht, es wird immer "Startmen³" ausgeführt, obwohl er das "ü" in der direkten Eingabe im CMD ja akzeptiert.
Das wird wahrscheinlich auch für den Misserfolg des aller ersten Codes gesorgt haben.
Aber wieso kommt Batch net mit Umlauten klar und wie verklicker ich ihm das?
EDIT:
Weder "chcp 1252" noch "chcp 850" helfen. Mit Codepage 850 verweigert's mir dann sogar auch im CMD das ü.Geändert von Chickenmarkus (28.04.2009 um 11:42 Uhr)
Der beste Weg einen PC zu beschleunigen, ist mit 9,81 m/s².
Die Lösung des Problems ist niemals die Gewalt, doch manchmal hilft es, wenn es auch mal knallt.
-
28.04.2009, 23:43 #7Das glaub ich nicht. Da waren eindeutig die Leerzeichen in "Dokumente und Einstellungen" schuld.Das wird wahrscheinlich auch für den Misserfolg des aller ersten Codes gesorgt haben.
Gestern hab ich auch direkt in der Eingabeaufforderung getestet. Diesmal habe ich eine Batch erstellt.
1. Test: einfach "dir > test.txt" im richtigen Ordner als Batch. Damit man das ü sieht, muss man beim Öffnen von Test.txt als Zeichensatz ASCII wählen. (heißt in meinem Editor DOS)
2. Test: Vor dir > test.txt noch "cd startmenü" eingefügt. Beim ersten Speichern als Zeichensatz "Standard" gelassen. (Ist unter Windows ja ANSI)
Es kam keine Test.txt, also die Batch brach mit Fehler ab.
Jetzt speicherte ich mit "DOS" also ASCII als Zeichensatz, im Startmenü entstand eine Test.txt.
Lange Rede, kurzer Sinn: du musst beim Speichern der Batch den ASCII-Zeichensatz wählen.
Gruß, HascheffDie besten Kapitäne stehen am Ufer.
-
29.04.2009, 14:00 #8
Schön, eine Lösung. Wenn ich sie jetzt noch verstehen würde.

Wie mit ASCII speichern?
Chcp 1252 und 850 zum Umstellen innerhalb der Batch haben bei mir ja nicht geholfen.
Aber sie direkt mit ASCII-Code zu speichern, wüsste ich jetzt nicht, wie ich das anstellen soll. Finde im Windoof-Editor auch keine Einstellung, wo ich das iwi einstellen könnte.Der beste Weg einen PC zu beschleunigen, ist mit 9,81 m/s².
Die Lösung des Problems ist niemals die Gewalt, doch manchmal hilft es, wenn es auch mal knallt.
-
29.04.2009, 18:38 #9
Im Windows-eigenen Editor kannst du beim Speichern unter... die Codierung einstellen.
Nicht gesicherte Daten sind verlorene Daten.Geschwindigkeit des Internetnetzugangs - Grundlagenwissen >Klick<
12

Zitieren

Lesezeichen