Hallo, Ich schreibe mir gerade ein Anmeldescript, der bei Autostart laufen soll. Das Problem, während der Script los läuft ist das Netzwerk noch nicht bereit und der NET USE Befehl macht alle möglichen sachen, die ich gar nicht will. Ich habe soweit eine Schleife in der Batch Datei drin, dass der NET USE Befehl so oft wiederholt wird bis das Laufwerk verbunden ist. So weit klappt das. Aber manchmal möchte der noch ein Benutzername abfrage und das stört. Ich habe im Internet nun ein Befehl gefunden "KPUSH.COM", mit dem kann ich das CR Zeichen (13) einfach vor dem NET USE Befehl senden, damit springt der einfach raus und es geht weiter in der Schleife. Nun, wenn keine Benutzer-Abfrage kommt, dann stehen lauter CR Zeichen im Tastaturbuffer. Ich habe ein "KFLUSH.COM" gefunden, die kann zwar Zeichen aus dem Tastaturbuffer löschen, aber nicht das CR Zeichen :-( Ich habe mich darauf hin mal bemüht und die alten DOS Interrups angeschaut und mit dem alten TurboPascal ein paar kleine Assembler Programme geschrieben und so versucht den Tastenbuffer zu leeren. INT21 / AH = 0Ch macht das auch. Aber wenn jetzt kein Zeichen im Buffer ist, dann wartet mein Programm bis irgend jemand eine Taste drückt (wenn zuvor dieser NET USE das CR wegen Benutzerabfrage geholt hat). Hat jemand einen Trick auf Lager die ich den Tastenbuffer leeren kann? Der muss wieder leer sein, sonst gehen andere Dateien im Batch Script nicht richtig. Vielen Dank, Markus.
Markus Müller schrieb: > Aber manchmal möchte der noch ein Benutzername abfrage und das stört. Sofern Du sicherstellen kannst, daß das Anmeldeskript niemals nie von irgendwem unbefugten angesehen werden kann, kannst Du Deine Netzwerklaufwerke auch gleich mit Angabe eines Benutzernamens verbinden: net use \\server\freigabe /user:benutzername passwort Ansonsten musst Du im Anmeldeskript gar nicht jedesmal die Laufwerke wiederherstellen, wenn Du sie einmalig so anlegst: net use x: \\server\\freigabe /persistent:yes Desweiteren könntest Du Dein Anmeldeskript dahingehend modifizieren, daß es a) einfach eine bestimmte Zeit lang wartet oder b) die Verfügbarkeit des Netzwerkes überprüft, bevor es mit dem Einrichten der Netzwerkverbindungen fortfährt. Die Verwendung DOS-basierter Tools (*.com ist ein eindeutiges Indiz) ist jedenfalls weder nötig noch sinnvoll.
Ich habs raus gefunden... Ich mache anstatt einen KFLUSH / Löschen Keybord Buffer einfach ein DELAY 0 /S Denn der frägt die Tastatur ab und schließt sich wenn was drin ist. Die Zeit 0 macht auch keine Wartezeit. Zwar von der Funktion her missbraucht, dafür klapp es.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.