Hallo,
ich möchte verhindern, dass ein gerade angemeldeter User aus einer ListBox gelöscht wird.
Bei dem folgenden Code erhalte ich eine Zugriffsverletzung. Was mache ich falsch?
Delphi-Quellcode:
procedure TFormDemo.DeleteActionExecute(Sender: TObject);
var
ini: TIniFile;
msg: string;
CurrentUser, status: String;
begin
CurrentUser := LEditUser.Text;
Status := 'Aktiv';
with ListBoxUser do
begin
ini := TiniFile.Create(ExtractFilePath(Application.ExeName) + 'Demo.ini');
msg := Format(S_SAFETYFIRST, [Items[ItemIndex]]);
CurrentUser := ini.ReadString('LetztesLogin', CurrentUser, '');
status := 'Aktiv';
if (CurrentUser = status) then
ModalResult := mrOK;
if ModalResult = mrOK then
ShowMessage('Ein angemeldeter Benutzername kann nicht gelöscht werden!')
else
if MessageDlg(msg, mtConfirmation, [mbYes, mbNo], 0) = mrYes then
begin
ini.DeleteKey(S_USERSECTION, Items[ItemIndex]);
ini.DeleteKey(S_LASTLOGINSECTION, Items[ItemIndex]);
Items.Delete(ItemIndex);
end;
Gruß
Lombi