Batch Falscher Benutzername oder Passwort beim Importieren einer Task per Batch

Sweeny

Cadet 1st Year
Registriert
Jan. 2014
Beiträge
11
Hi Leute,

bin absoluter Batch-Laie und mir macht folgende Batchdatei Probleme:


@Echo off
chcp 1252
set USER=PC-NAME\Benutzername
set PASSWORD="Passwort mit div. Sonderzeichen"

schtasks /Create /TN "TEST\Malware-Aktualisierung" /XML "D:\PRIVAT\Windows + Co\gesicherte Dateien\Windows\Tasks\TEST\Malware-Aktualisierung.xml" /RU %USER% /RP %PASSWORD%

pause


Beim Ausführen der Batchdatei kommt die Fehlermeldung "Der Benutzername oder das Kennwort ist falsch". Geb ich den Befehl jedoch direkt in CMD ein, wird die Aufgabe problemlos importiert. Ich dachte mir, dass es evtl. an den diversen Sonderzeichen im Passwort liegen könnte (+ % ! und =), allerdings hab ich es ja bereits in "" gesetzt.

Hab bereits zig Versuche gestartet und bin mittlerweile völlig ratlos...

Sonnige Grüße
Sweeny
 
Das werden die Sonderzeichen in der CMD sein. Setze doch bitte zum Test ein einfaches Kennwort. Die Anführungszeichen werden im Kennwort mit übergeben!
 
Was meinst du mit "Die Anführungszeichen werden im Kennwort mit übergeben!"?

Es macht keinen Unterschied, was man macht:
schtasks /Create /TN "Test-Task" /XML "Task.xml" /RU ... /RP meinKennwort
schtasks /Create /TN "Test-Task" /XML "Task.xml" /RU ... /RP "meinKennwort"

Ich habe kein Kennwort, das mit Gänsefüßchen beginnt:
1714909927976.png
 
Ich vermute er bezieht sich auf die SET-Befehle?
1714911650290.png
 
  • Gefällt mir
Reaktionen: dms
Danke für eure Rückmeldungen.

Ich hab jetzt zum Testen mal ein einfaches Kennwort benutzt und damit hat's dann auch problemlos geklappt. Da es sich hierbei aber ja um das Microsoft-Kennwort handelt, ist hald das Problem, dass eine Änderung immer gleich nen Rattenschwanz an Anpassungen hinter sich herzieht.

Tatsächlich machts auch keinen Unterschied, ob ich die "" mit eingebe oder nicht, die Fehlermeldung bleibt die Gleiche.

@Korben2206 Ich habs auch ohne die SET-Befehle probiert, auch hier ist das Ergebnis unverändert.

Aber gibts denn keine Möglichkeit, dass das System die Sonderzeichen als Teil des Kennworts ansieht? Und warum funktioniert DIREKT in CMD?
 
Sweeny schrieb:
set PASSWORD="Passwort mit div. Sonderzeichen"
Das geht durchaus, nur ein Detail ist falsch :):
Rich (BBCode):
set "PASSWORD=Passwort mit div. Sonderzeichen"
 
Hallo @marcOcram, hallo @mae1cum77,

DANKE, DANKE, DANKE!!!

Beide Vorschläge funktionieren PERFEKT! Wer hätte gedacht, dass ein kleines Caret-Zeichen und ein versetztes Gänsefüßchen solche Auswirkungen haben!

Aber auch danke an alle anderen, die sich an einem sonnigen Sonntagnachmittag meinem Problem angenommen haben!

Viele Grüße
Sweeny
 
  • Gefällt mir
Reaktionen: marcOcram, Korben2206 und mae1cum77
Sweeny schrieb:
Wer hätte gedacht
Gerade bei Code gilt es aufmerksam zu sein, da können kleinste Formatierungsfehler große Auswirkung haben. 3 mal prüfen, sacken lassen und dann nochmal.

Nebenbei gibt es je Syntax Feinheiten in Bezug auf Anführungszeichen und das Verhindern von unbeabsichtigtem Parsen und auch Leerzeichen. Beides ist immer wieder gut für Fehler.

Der brannte direkt in meinen Augen, nach dem Lesen der Frage :).
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: dms
tollertyp schrieb:
was genau bringt das?
Das sorgt dafür, dass Leerzeichen und die meisten Steuerzeichen ignoriert werden, Ausnahmen bestätigen wie immer die Regel.

Code:
C:\WINDOWS\system32>set "PASSWORD=Passwort mit div. Sonderzeichen"

C:\WINDOWS\system32>echo %PASSWORD%
Passwort mit div. Sonderzeichen

C:\WINDOWS\system32>set PASSWORD="Passwort mit div. Sonderzeichen"

C:\WINDOWS\system32>echo %PASSWORD%
"Passwort mit div. Sonderzeichen"

C:\WINDOWS\system32>
 
Und was hat er damit gewonnen? Nichts.

Außer dass mehr Sonderzeichen nicht funktionieren:
Code:
D:\>set "PASSWORD=Test ^1%23"

D:\>echo %PASSWORD%
Test 1%23

D:\>set PASSWORD="Test ^1%23"

D:\>echo %PASSWORD%
"Test ^1%23"

Die Gänsefüßchen stören nicht beim Aufruf von schtasks.

(Diese Befehle in einer Batch-Datei würden zu einem anderen Ergebnis führen, weil %2 als zweiten Parameter des Aufrufs der Batch-Datei interpretiert würden, da müsste man dann Test ^1%%23 schreiben.
 
tollertyp schrieb:
Außer dass mehr Sonderzeichen nicht funktionieren:
Irgendwas ist IMMER :). Ich nutze lieber ein paar Escapes, als mich mit Anführungszeichen als Variablenwert rumzuärgern, wenn ich sie nicht brauche.

Zumindest kann ich so definieren, ob Leerzeichen vorn und hinten übernommen werden, wenn nötig, oder auch nicht.
 
  • Gefällt mir
Reaktionen: tollertyp
Hallo

Ich hab mir folgende Test BAT-Datei im Windows Editor geschrieben:

Anfang -----------------------------------

@Echo off

cls

echo.
echo * * * * * * * * *
echo * S T A R T *
echo * * * * * * * * *
echo.

set U_SER=
set P_ASSWORD=

echo.
echo asdfÄÜÖß
echo ASDFäüöß
echo.

chcp 1252

set U_SER=asdfÄÜÖß
set P_ASSWORD=ASDFäüöß

echo.
echo "USER asdfÄÜÖß: " %U_SER%
echo "PASSWORD ASDFäüöß: " %P_ASSWORD%
echo.

chcp 850

echo.
echo "USER asdfÄÜÖß: " %U_SER%
echo "PASSWORD ASDFäüöß: " %P_ASSWORD%
echo.

set U_SER=
set P_ASSWORD=

rem schtasks /Create /TN "TEST\Malware-Aktualisierung" /XML "D:\PRIVAT\Windows + Co\gesicherte Dateien\Windows\Tasks\TEST\Malware-Aktualisierung.xml" /RU %USER% /RP %PASSWORD%

echo.
echo * * * * * * * *
echo * E N D E *
echo * * * * * * * *
echo.

Ende --------------------------------------------------

Alles häng mit der Codepage des Windows Editor zusammen und wie die Datei im Windows-Editor gespeichert wird! Die BAT-Datei muss mit
1714958449889.png
bei "Speichern unter" im Windows-Editor gespeichert werden.

Auf der Webseite ist es gut beschrieben: https://www.libe.net/Robocopy-Umlaute

1714956657272.png


Es ist zwar ein wenig umständlich, da man bei JEDEM Speichern der Datei darauf denken muss, aber es funktioniert!

Schönen Gruß
 
Zuletzt bearbeitet:

Ähnliche Themen

Zurück
Oben