Delphi-PRAXiS
Seite 1 von 2  1 2      

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 Komponente vollständig instanziiert? (https://www.delphipraxis.net/114645-komponente-vollstaendig-instanziiert.html)

oki 28. Mai 2008 20:05


Komponente vollständig instanziiert?
 
Hi Leute,

ich hab schon Schierigkeiten einen passenden Threadtitel zu finden. Ich beschreib mal, was ich mache und wo mein Problem steckt.

Ich lade zur Laufzeit des Programms mehrere eigene Komponenten mittels Serialisierung. Nun ist es so, das eine Komponente eine ClientSocket hält, die sich mit einem Server connecten soll. Das soll nach der Serialisierung (read) automatisch erfolgen wenn eine published Eigenschaft AutoStart True ist.

Aktiviere ich die Socket sofort nach der Serialisierung ist die Instanz der Socket entweder nil oder die Socket verbindet sich nicht mit dem Server.

Ich denke mal, ich mach da was zu "früh". Die Frage ist, wann ist der richtige Zeitpunkt und wie erkenne ich ihn?

Ich hoffen jemand wird daraus schlau und kann mir helfen.

Dank und Gruß oki

mkinzler 28. Mai 2008 20:07

Re: Komponente vollständig instanziiert?
 
Delphi-Quellcode:
If Assigned( ... ) then

s-off 28. Mai 2008 20:09

Re: Komponente vollständig instanziiert?
 
Zitat:

Zitat von mkinzler
Delphi-Quellcode:
If Assigned( ... ) then

Liefert Assigned denn erst True, sobald der Konstruktor vollständig abgearbeitet ist?

DeddyH 28. Mai 2008 20:11

Re: Komponente vollständig instanziiert?
 
Ich hab jetzt nur die Hälfte gelesen, aber wäre Loaded nicht eine gute Gelegenheit?

mkinzler 28. Mai 2008 20:13

Re: Komponente vollständig instanziiert?
 
Zitat:

Zitat von s-off
Zitat:

Zitat von mkinzler
Delphi-Quellcode:
If Assigned( ... ) then

Liefert Assigned denn erst True, sobald der Konstruktor vollständig abgearbeitet ist?

Ja sollte so sein.

oki 28. Mai 2008 20:14

Re: Komponente vollständig instanziiert?
 
Ähm, schon klar. Ich wußte, dass der Titel falsch ist.

Das Problem ist ein anderes. Die Komponente wird creiert. Die Komponente kreiert als privaten Member eine ClientSocket. Wenn ich diese dann sofort im constructor Connecten will passiert nichts. Verbinde ich sie nach dem das Formular geladen ist manuell, klappt es.

gruß oki

oki 28. Mai 2008 20:16

Re: Komponente vollständig instanziiert?
 
grrr roter Kasten, und jede Menge Antworten. Ich bin einfach zu lahm auf meinem Laptop.

Loaded hab ich ausprobiert. Ist zu früh.

oki

mkinzler 28. Mai 2008 20:19

Re: Komponente vollständig instanziiert?
 
Dann liegt das Problem an was anderem. Zu diesem Zeitpunkt sind alle Subobjekte erzeugt.

oki 28. Mai 2008 20:21

Re: Komponente vollständig instanziiert?
 
Ich kontrollier noch mal alles und meld mich mit den Ergebnissen. Wenn ihr sagt nach Loaded ist alles da, dann such ich da weiter.

Gruß oki

Muetze1 28. Mai 2008 20:26

Re: Komponente vollständig instanziiert?
 
Zitat:

Zitat von oki
Das Problem ist ein anderes. Die Komponente wird creiert. Die Komponente kreiert als privaten Member eine ClientSocket. Wenn ich diese dann sofort im constructor Connecten will passiert nichts. Verbinde ich sie nach dem das Formular geladen ist manuell, klappt es.

Kann es sein, dass du nach dem Open bzw. Active := true eine sofortige Verbindung erwartest oder wartest du ab, bis das OnConnect Ereignis eingetreten ist? Erst dann kannst du den Socket verwenden, schliesslich arbeiten die Sockets asynchron in einem Thread...


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:08 Uhr.
Seite 1 von 2  1 2      

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