Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

fehlermeldung bei falschem kennwort





Frage

Hi! Ich habe eine manuelle Passwortänderung (also mit newpassword statt über Menü) erstellt. Alles funktioniert super. Aber falls das eingegebene alte Kennwort nicht dem wirklichen Passwort entspricht kommt eine Fehlermeldung "sie haben keine berechtigung ...". Alles halb so wild. Aber es sieht halt nicht schön aus. Kennt jemand eine Lösung? Kann mir nicht vorstellen, dass man manuell testen kann, ob das Passwort stimmt, oder? Gruß, ich. P.S. Mehrbenutzerbetrieb, dehalb: "keine berechtigung"

Antwort 1 von Marie

natürlich kann man manuell ein Passwort abspeichern und in ein Formular eingeben lassen und prüfen. Fragt sich jedoch allererst mal um welches Programm es sich handelt :-(

Antwort 2 von need_help

Hallo!

Also ich rede von Access2003. Bin mir allerdings nicht sicher ob ich mich richtig ausgedrückt habe. Würde gerne wissen, ob folgendes irgendwie zu realisieren geht:
text="irgendein text"
if text=password then ...
Ich möchte halt das eingegebene "alte" Passwort mit dem wirklichen "alten" Passwort vergleichen.

Antwort 3 von need_help

Hey Marie.

Was machst du eigentlich um 04:05 Uhr vor dem PC?

Antwort 4 von erik

Doch, du hast dich schon richtig ausgedrückt. Du willst im Fall eines falschen alten Kennwortes die hässliche Accessmeldung unterdrücken und stattdessen einen eigenen Text auf den Bildschirm bringen.

Das alte Kennwort kannst du nicht für den Vergleich auslesen, das wäre ja ein krasses Sicherheitsleck. Stattdessen wird ein Laufzeitfehler ausgelöst, den du abfangen und auswerten kannst. Bei einem falschen Kennwort werden meines Wissens die Laufzeitfehler 3033 "Sie haben keine Berechtigung..." und 3001 "Falscher Argumenttyp" ausgelöst.


´....

On Error Goto ErrHandler

[User-Objekt].NewPassword strOldPassword, strNewPassword

ExitFunction:
Exit Function  ´bzw. Exit Sub

ErrHandler:
If Err.Number = 3033 Or Err.Number = 3001 Then
    MsgBox "Das alte Kennwort ist falsch.", vbExclamation
Else
    MsgBox "Das Kennwort wurde nicht geändert." & vbCrlf  & Err.Description, vbCritical
End If
Resume ExitFunction


Antwort 5 von need_help

Perfekt!!
Genau wie ich es wollte. Vielen Dank.

Kannst du mir aber noch für´s Verständnis sagen, was
vbExclamation, sowie vbCrlf und so bedeuten?

Antwort 6 von erik

Freut mich, dass ich dir helfen konnte.

In Bezug auf die Konstanten bietet Access selbst genug Hilfe. Klicke dort im Code mit der Maus in die Konstantennamen hinein und drücke die F1-Taste.

Antwort 7 von need_help

ja, danke!

Antwort 8 von Marie

vbExclamation gibt ein Ausrufezeichen in der Meldung, vbcrlf ist ein Zeilenumbruch im Text.
mit & vbCrlf & vbCrlf & kriegste ne Leerzeile. Probiers aus.

Antwort 9 von need_help

Danke.

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: