Batch: Passworteingabe mit Timer?

6 Antworten

Das ist eigentlich einfach. :D
Ich helfe mal kurz.

Du schreibst 2 Batchdateien.


Mit einer machst du die Passwort abfrage.
Mit der Anderen prüfst du, ob in (z.B. %userprofile%\Passwort\pwright.sys) dem Pfad die Datei drin ist.

Wenn du mit der Passwort abfrage richtig bist, soll die Datei in diesem Pfad dann die pwright.sys schreiben (%userprofile%\Passwort\pwright.sys)

PW Abfrage:
:1
set /p a=Bestätige Passwort:
if not %a%==XYZ123 goto false
Echo. > %userprofile%\Passwort\pwright.sys

(Was immer du auch hier schreiben willst, wenn es richtig ist)
...

:false
cls
Echo Falsches Passwort!
goto 1



Für die andere Datei:

timeout 5 /nobreak
if exist %userprofile%\Passwort\pwright.sys goto found
timeout 5 /nobreak
if exist %userprofile%\Passwort\pwright.sys goto found

....
(So lange du es haben willst, sagen wir 60 Sekunden insgesamt) Und hier schreibst du hin, was passieren soll, wenn das Passwort nach 60 Sekunden immer noch nicht eingegeben wurde.

z.B.
shutdown /f
exit

:found
del %userprofile%\Passwort\pwright.sys /q
exit

Weil du bestimmt nicht möchtest, dass man die "Check" Datei einfach schließt, schreiben wir noch eine .vbs Datei (Ich möchte dass das Fenster von der "Check" Datei nicht sichtbar ist)

Die VBS Datei:

set shell=createobject("wscript.shell")
shell.run "[PFAD ZU CHECK DATEI]",0 <---- Fenster wird nicht angezeigt
shell.run "[Pfad zur Passwort Abfrage]" <---- Fenster wird angezeigt


Hoffe konnte helfen :) Ist etwas kompliziert, aber wollte mich nicht zurückhalten.

In Batch wird sowas schwer, da Batch grenzen hat, die njr schwer sind zu durchbrechen. Für den Einstieg, ok, aber wenn du nacher soetwas machen willst, dann mach es mit einer anderen Script-/Programmiersprache, wie : Python(sehr einfach), Perl, Ruby, C, C++, C#, VB, QBasic, FreeBasic(läuft noch ganz gut, auf win und lin), Java, usw.

Schau dir ein paar Sprachen an, und lehrne die, die dir am meisten zusagt. Dann kannst du soetwas in diesem Forum fragen, denn mit Batch kommen die Grenzen die du z.B. in Python nicht hast, oder C, Java, ...

Ich hoffe du hast verstanden was ich dir sagen wollte, MfG gerlochi :-)

ping hat irgendeinen Parameter der es erlaubt eine Zeit anzugeben. Dies kann als timer verwendet werden.
Batch hat auf jeden Fall viele Grenzen. Außerdem bringt es dir nix, dass Passwort im Klartext abzuspeichern. Rechtsklick -> Bearbeiten und der Nutzer kennt es. Benutz lieber eine andere Sprache und hashe das Passwort (mal eben Googlen bitte).

Was möchtest Du wissen?