Einzelnen Beitrag anzeigen

Akut-Programming

Registriert seit: 18. Aug 2003
648 Beiträge
 
#1

Zugriffsverletzung beim anzeigen eines Forms

  Alt 21. Sep 2004, 14:47
Huhu

Wenn meine Anwendung startet, wird das Hauptform zuerst nicht angezeigt, sondern es erscheint ein Logindialog für die Anwendung. Wenn das Loginfenster erstellt wird, wird folgender Code aufgerufen:
Delphi-Quellcode:
procedure TfrmLogin.FormCreate(Sender: TObject);
var
   ini: TIniFile;
begin
     if FileExists(OwnFilesPath+'\AMS\database.ini')
     then begin
          ini:=TIniFile.Create(OwnFilesPath+'\AMS\database.ini');
          try
             with frmMain do begin
                  varUserID:=ini.ReadString('DBSettings', 'UserID', '');
                  varDSN:=ini.ReadString('DBSettings', 'DSN', '');
                  varDB:=ini.ReadString('DBSettings', 'DB', '');
                  varServer:=ini.ReadString('DBSettings', 'Server', '');
                  varPassword:=ini.ReadString('DBSettings', 'Password', '');
                  varPort:=ini.ReadString('DBSettings', 'Port', '');
                  MySQLCS:='Provider=MSDASQL.1;Persist Security Info=False;User ID='+varUserID+';Data Source='+varDSN+';Extended Properties="DSN='+varDSN+';DESC=MySQL ODBC 3.51 Driver DSN;DATABASE='+varDB+';SERVER='+varServer+';UID='+varUserID+';PASSWORD='+varPassword+';PORT='+varPort+';SOCKET=;OPTION=3;STMT=;"';
                  ADOConnection1.ConnectionString:=MySQLCS;
                  ADOConnection1.Connected:=true;
             end;
          finally
                 ini.Free;
          end;
     end;
     frmLogin.ShowModal;
     CloseAction:=caNone;
end;
Anschließend will ich das Fenster zum angeben der MySQL-DB Settings für meine Anwendung anzeigen lassen. Dazu habe ich ein Label aufs Loginform gepackt, wo beim drauf klicken dieser Code ausgeführt wird:
Delphi-Quellcode:
procedure TfrmLogin.Label3Click(Sender: TObject);
begin
     frmMySQLSettings.Show;
end;
Klicke ich da drauf, kommt es im Code des OnClick des Labels zu einer Zugriffsverletzung. Kann mir jemand weiterhelfen?? - Ich weiß nich mehr weiter.

Gruß,
Sascha
Akut-Programming
be cool, be hot ... just be
  Mit Zitat antworten Zitat