Einzelnen Beitrag anzeigen

_SolidSnake_

Registriert seit: 3. Feb 2006
Ort: Pulheim
28 Beiträge
 
Delphi 2005 Architect
 
#6

Re: Listenindex überschreitet das Maximum (-1) unter Win2000

  Alt 8. Feb 2006, 23:10
Hallo Thorsten.

Danke für den Tipp Ich hab allerdings schon eine ähnliche Abfrage eingebaut, nur nicht mit angezeigt, weil es eben an dieser einen Zeile liegen muss. Die komplette Prozedur sieht so aus:

Delphi-Quellcode:
procedure TfrmLogin.Button_LoginClick(Sender: TObject);
var
  query: PChar;
  id: Integer;
  passwort: String;
begin
  if Trim(ComboBox_Benutzer.Text) <> 'then
    begin
      if Trim(Edit_Passwort.Text) = 'then
        begin
          MessageDlg('Bitte gültiges Passwort eingeben.', mtInformation, [mbOK], 0);
          ModalResult := mrNone;
        end
      else
        begin
          id := Integer(ComboBox_Benutzer.Items.Objects[ComboBox_Benutzer.ItemIndex]);
          query := PChar('SELECT passwort FROM mitarbeiter WHERE id=' + IntToStr(id));
          mysql_real_query(_myCon, query, Length(query));

          _myRes := mysql_store_result(_myCon);
          if _myRes = nil then
            begin
              ShowMessage('Es konnten keine Datensätze zurückgebenen werden. Ursache: ' + mysql_error(_myCon));
              Exit;
            end;

          _myRow := mysql_fetch_row(_myRes);
          passwort := _myRow[0];

          if Edit_Passwort.Text = passwort then
            LoginOK := True
          else
            begin
              MessageDlg('Falsches Passwort.', mtInformation, [mbOK], 0);
              ModalResult := mrNone;
            end
        end
      end
  else
    begin
      MessageDlg('Bitte einen Benutzer auswählen.', mtInformation, [mbOK], 0);
      ModalResult := mrNone;
    end;
end;
Wie gesagt, unter Windows XP schmeisst er auch keinen Fehler aus, aber unter Windows 2000.
Die ComboBox wird auch ordentlich angezeigt, nur sobald man dann auf "Login" klickt, kommt die Fehlermeldung.

Zur Not werd ich wohl versuchen irgendwas über den ComboBox_Benutzer.ItemIndex oder den ComboBox_Benutzer.Text zu basteln

Gruß
Micha
  Mit Zitat antworten Zitat