AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi TClientSocket auf Datenmodul
Thema durchsuchen
Ansicht
Themen-Optionen

TClientSocket auf Datenmodul

Ein Thema von Jens Hartmann · begonnen am 23. Jan 2012 · letzter Beitrag vom 25. Jan 2012
Antwort Antwort
Benutzerbild von Jens Hartmann
Jens Hartmann

Registriert seit: 11. Jan 2009
Ort: Wilnsdorf
1.439 Beiträge
 
Delphi XE2 Professional
 
#1

TClientSocket auf Datenmodul

  Alt 23. Jan 2012, 06:59
Guten Morgen zusammen,

ich habe ein eher seltsames Problem mit meinem Delphi XE2. Ich möchte eine Komponente TClientSocket auf einem Datenmodul plazieren.
(TClientSocket und TServerSocket zuvor natürlich nachinstalliert).

Ziehe ich die Komponente direkt auf eine Form, funktioniert das. Will ich die Komponente auf ein Datenmodul legen, kann ich Sie in der Toolpalette nicht finden.

Lege ich die TClientSocket auf eine Form, kopiere die Kompo und füge Sie im Datenmodul ein, kommt die Fehlermeldung

"Klasse TClientSocket nicht gefunden"

Kennt das Problem jemand?

Vorab Danke und Gruß Jens
Jens Hartmann
Das Leben selber ist zu kurz, also nutze jeden Tag wie er kommt.
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#2

AW: TClientSocket auf Datenmodul

  Alt 23. Jan 2012, 07:30
Workaround: Im DataModuleCreate instantiieren.
  Mit Zitat antworten Zitat
Benutzerbild von Jens Hartmann
Jens Hartmann

Registriert seit: 11. Jan 2009
Ort: Wilnsdorf
1.439 Beiträge
 
Delphi XE2 Professional
 
#3

AW: TClientSocket auf Datenmodul

  Alt 23. Jan 2012, 19:07
Zitat von Furtbichler:
Workaround: Im DataModuleCreate instantiieren.
Versteh ich um ehrlich zu sein nicht. Auch Google ist hier scheinbar nicht mein Freund.
Jens Hartmann
Das Leben selber ist zu kurz, also nutze jeden Tag wie er kommt.
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#4

AW: TClientSocket auf Datenmodul

  Alt 23. Jan 2012, 19:18
Delphi-Quellcode:
Procedure TMyDataModule.DataModuleCreate(Sender : TOBject);
Begin
  MyClientDataset := TClientDataset.Create(Nil);
  MyClientDataset..... // Properties setzen
end;

Procedure TMyDataModule.DataModuleDestroy(Sender : TObject);
Begin
  MyClientDataset.Free;
End;
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#5

AW: TClientSocket auf Datenmodul

  Alt 23. Jan 2012, 19:27
und warum nicht einfach
Delphi-Quellcode:
Procedure TMyDataModule.DataModuleCreate(Sender : TOBject);
Begin
  MyClientDataset := TClientDataset.Create( Self );
  MyClientDataset..... // Properties setzen
end;
Dann kümmert sich das DataModul selber um die Freigabe

Beobachtet habe ich das auch schon und als Workaround probier mal folgendes aus:
  1. Ziehe auf ein Formular die gewünschte Komponente
  2. Die Komponente von der Form auswählen und mit STRG-X ausschneiden
  3. Auf das DatenModul wechseln und mit STRG-V dort einfügen
  4. Alles speichern
Jetzt sollten auch alle nicht-visuellen Komponenten auswählbar sein
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#6

AW: TClientSocket auf Datenmodul

  Alt 23. Jan 2012, 20:29
und warum nicht einfach
Delphi-Quellcode:
Procedure TMyDataModule.DataModuleCreate(Sender : TOBject);
Begin
  MyClientDataset := TClientDataset.Create( Self );
  MyClientDataset..... // Properties setzen
end;
Dann kümmert sich das DataModul selber um die Freigabe
Das widerspricht dem Designtemplate: "Wer's anfordert, gibts wieder frei". Ansonsten haste Recht.
  Mit Zitat antworten Zitat
mjustin

Registriert seit: 14. Apr 2008
3.010 Beiträge
 
Delphi 2009 Professional
 
#7

AW: TClientSocket auf Datenmodul

  Alt 24. Jan 2012, 14:31
Zur ursprünglichen Frage - kann es das gleiche Feature (aus XE2) sein, das in diesem Blogartikel beschrieben wird?

XE2: TDatamodule v TImageList, TActionList, TTimer etc.
http://jed-software.com/blog/?p=504

Ursache des "Problems" ist die Einführung einer neuen Property, "ClassGroup", die steuert, welche Komponenten beim Design eines Datamoduls in der Palette sichtbar / verwendbar sind. Es geht dabei um die Zuordnung zu bestimmten Frameworks (FireMonkey, VCL).

TClientSocket ist wahrscheinlich nur unter VCL nutzbar. Ich tippe, dass Indy TCP/IP Komponenten direkt (ohne Änderung der ClassGroup) auf ein Datenmodul geworfen werden können.
Michael Justin
habarisoft.com
  Mit Zitat antworten Zitat
Benutzerbild von Jens Hartmann
Jens Hartmann

Registriert seit: 11. Jan 2009
Ort: Wilnsdorf
1.439 Beiträge
 
Delphi XE2 Professional
 
#8

AW: TClientSocket auf Datenmodul

  Alt 24. Jan 2012, 15:07
Zitat von mjustin:
TClientSocket ist wahrscheinlich nur unter VCL nutzbar. Ich tippe, dass Indy TCP/IP Komponenten direkt (ohne Änderung der ClassGroup) auf ein Datenmodul geworfen werden können.
Werde ich heute Abend mal ausprobieren...

Gruß Jens
Jens Hartmann
Das Leben selber ist zu kurz, also nutze jeden Tag wie er kommt.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:16 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz