Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Zugriffsverletzung beim anzeigen eines Forms (https://www.delphipraxis.net/30154-zugriffsverletzung-beim-anzeigen-eines-forms.html)

Akut-Programming 21. Sep 2004 14:47


Zugriffsverletzung beim anzeigen eines Forms
 
Huhu :hi:

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. :gruebel: Kann mir jemand weiterhelfen?? - Ich weiß nich mehr weiter.:wall:

Gruß,
Sascha

alcaeus 21. Sep 2004 14:48

Re: Zugriffsverletzung beim anzeigen eines Forms
 
Hi Sascha,

wurde frmMySQLSettings auch erstellt?

Greetz
alcaeus

Alex_ITA01 21. Sep 2004 14:50

Re: Zugriffsverletzung beim anzeigen eines Forms
 
vielleicht habe ich das jetzt auch falsch verstanden... aber ist denn die frmMySQLSettings-Form schon vorhanden (create) wenn du auf das label klickst?Ansonsten versuche vorher mal .create
Mfg Alex

Alex_ITA01 21. Sep 2004 14:51

Re: Zugriffsverletzung beim anzeigen eines Forms
 
zu spät :wall:
:-)

Akut-Programming 21. Sep 2004 15:02

Re: Zugriffsverletzung beim anzeigen eines Forms
 
Hoi alcaeus,

hmm das ist ne gute Frage :gruebel:. Ehrlichgesagt weiß ich nicht obs schon erstellt ist. :roll: Ich würde jetzt dummerweise mal schätzen, das es noch nicht erstellt ist. Wenn ich frmMySQLSettings.Create angebe, will er parameter haben. :wiejetzt: - Hab ich ne andere Möglichkeit das Form vor dem eigentlichen Logindialog erstellen zulassen??

Gruß,
Sascha

alcaeus 21. Sep 2004 15:05

Re: Zugriffsverletzung beim anzeigen eines Forms
 
Hi Sascha,

sieh mal in den Projektoptionen nach. Dort gibt es ein Feld mit allen Forms, wo du das MainForm einstellen kannst. Dort kannst du auch angeben, welche Forms automatisch erstellt werden sollen.
Zu den Projektoptionen: Strg+Shift+F11, dann die Registerkarte "Formulare".

Greetz
alcaeus

Akut-Programming 21. Sep 2004 15:11

Re: Zugriffsverletzung beim anzeigen eines Forms
 
:thumb: Ich danke dir alcaeus!! *DemAlcaeusErstmaNBierchenGibt* :cheers: Wie einfach das doch eigentlich ging.. :roll:

Alex_ITA01 21. Sep 2004 15:17

Re: Zugriffsverletzung beim anzeigen eines Forms
 
als parameter kannst du (Application) übergeben.Das reicht vollkommen aus.
MFG Alex

Akut-Programming 21. Sep 2004 15:19

Re: Zugriffsverletzung beim anzeigen eines Forms
 
Hi Alex,

auch dir THX für deine Hilfe. Habs jetze hinbekommen!!

Gruß,


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:41 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz