/*
 * German resources for WLDAP32
 *
 * Copyright 2005 Henning Gerhardt
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
 */

#include "windef.h"

#pragma code_page(65001)

LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL

STRINGTABLE
{
    0 "Erfolgreich"
    1 "Operationsfehler"
    2 "Protokollfehler"
    3 "Zeitlimit überschritten"
    4 "Größenlimit überschritten"
    5 "Vergleich falsch"
    6 "Vergleich wahr"
    7 "Authentifizierungsmethode nicht unterstützt"
    8 "Starke Authentifizierung erforderlich"
    9 "Weiterleitung (v2)"
    10 "Weiterleitung"
    11 "Verwaltungslimit überschritten"
    12 "Kritische Erweiterung nicht verfügbar"
    13 "Vertraulichkeit erforderlich"
    14 ""
    15 ""
    16 "Attribut nicht vorhanden"
    17 "Nicht definierter Typ"
    18 "Unzulässiger Vergleich"
    19 "Restriktionsverletzung"
    20 "Attribut oder Wert vorhanden"
    21 "Ungültige Syntax"
    22 ""
    23 ""
    24 ""
    25 ""
    26 ""
    27 ""
    28 ""
    29 ""
    30 ""
    31 ""
    32 "Objekt nicht vorhanden"
    33 "Aliasproblem"
    34 "Ungültige DN Syntax"
    35 "Endknoten"
    36 "Alias Dereferenzierungsproblem"
    37 ""
    38 ""
    39 ""
    40 ""
    41 ""
    42 ""
    43 ""
    44 ""
    45 ""
    46 ""
    47 ""
    48 "Fehlerhafte Authentifizierung"
    49 "Anmeldeinformationen fehlerhaft"
    50 "Nicht ausreichende Rechte"
    51 "Beschäftigt"
    52 "Nicht verfügbar"
    53 "Ausführung verweigert"
    54 "Schleife erkannt"
    55 ""
    56 ""
    57 ""
    58 ""
    59 ""
    60 "Fehlende Sortiersteuerung"
    61 "Indexbereichsfehler"
    62 ""
    63 ""
    64 "Bennenungsverletzung"
    65 "Objektklasse verletzt"
    66 "Nicht erlaubt für Nicht-Endknoten"
    67 "Nicht erlaubt für RDN"
    68 "Bereits vorhanden"
    69 "Keine Objektklassenmodifikationen"
    70 "Ergebnisse zu groß"
    71 "Mehrere DSAs betroffen"
    72 ""
    73 ""
    74 ""
    75 ""
    76 ""
    77 ""
    78 ""
    79 ""
    80 "Andere"
    81 "Server heruntergefahren"
    82 "Lokaler Fehler"
    83 "Kodierungsfehler"
    84 "Dekodierungsfehler"
    85 "Zeitüberschreitung"
    86 "Unbekannte Authentifizierung"
    87 "Filterfehler"
    88 "Benutzerabbruch"
    89 "Parameterfehler"
    90 "Nicht genügend Speicher"
    91 "Kann nicht zum LDAP Server verbinden"
    92 "Die Operation wird durch dieses LDAP Protokoll nicht unterstützt"
    93 "Angegebenes Steuerobjekt wurde in der Meldung nicht gefunden"
    94 "Keine Ergebnisse in der Meldung vorhanden"
    95 "Weitere Ergebnisse gefunden"
    96 "Schleife während der Abarbeitung von Weiterleitungen"
    97 "Überschreitung der maximalen Anzahl von Weiterleitungen"
}
