| Autor |
Beitrag |
olliistmeinname
      
Beiträge: 59
|
Verfasst: So 12.10.03 18:59
_________________ Olliistmeinname und bin da für jede Dame
|
|
MSCH
      
Beiträge: 1448
Erhaltene Danke: 3
W7 64
XE2, SQL, DevExpress, DevArt, Oracle, SQLServer
|
Verfasst: So 12.10.03 19:26
mit der Deklaration einer Variablen ist es nicht getan!!
du must
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9:
| var serversocket1 : tserversocket;
begin ServerSocket1:= TServerSocket.create; serversocket1.Active := true; <-- dann zugreifen!! end. |
grez
msch
_________________ ist das politisch, wenn ich linksdrehenden Joghurt haben möchte?
|
|
olliistmeinname 
      
Beiträge: 59
|
Verfasst: So 12.10.03 19:31
THX !!
Quelltext 1:
| ServerSocket1:= TServerSocket.create(serversocket1); |
Da fehlte noch serversocket1 aber es geht !
mfg OLLI
_________________ Olliistmeinname und bin da für jede Dame
|
|
MrSaint
      
Beiträge: 1033
Erhaltene Danke: 1
WinXP Pro SP2
Delphi 6 Prof.
|
Verfasst: So 12.10.03 20:54
wäre vielleicht auch anzumerken, dass du das dingens nach gebrauch wieder freigeben solltest  sonst gibts datenmüll im RAM und das mögen andere Programmierer gar net  könnte dann in irgendwelchen "unerklärlichen" exceptions von anderen Programmen enden... also: immer schön aufräumen
Quelltext
MrSaint
_________________ "people knew how to write small, efficient programs [...], a skill that has subsequently been lost"
Andrew S. Tanenbaum - Modern Operating Systems
|
|
olliistmeinname 
      
Beiträge: 59
|
Verfasst: So 12.10.03 22:18
So !
Jetzt bin ich soweit und habe die Komponente implementiert , aber da kommen schon die nächsten Probleme .
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21:
| program projekt1;
uses windows ,ScktComp, Dialogs ; {$R *.res}
procedure ServerSocket1ClientRead(Sender: TObject; socket: TCustomWinSocket); var s :string;
begin s := socket.ReceiveText; showmessage(s); end;
begin serversocket1.active := true; ... ... end. |
Ich dachte mir , dass wenn der Client eine Nachricht an den Server geschickt hätte , die Procedure ausgeführt werden müsse. Ich dachte wieder falsch.
Moderiert von Tino: Code- durch Delphi-Tags ersetzt.
_________________ Olliistmeinname und bin da für jede Dame
|
|
olliistmeinname 
      
Beiträge: 59
|
Verfasst: Di 14.10.03 07:24
Bitte  Das Ist seht wichtig  Jemand weiß doch sicher die Lösung 
_________________ Olliistmeinname und bin da für jede Dame
|
|
MrSaint
      
Beiträge: 1033
Erhaltene Danke: 1
WinXP Pro SP2
Delphi 6 Prof.
|
Verfasst: Di 14.10.03 11:38
versuch mal vorher das zu setzen:
Quelltext 1:
| ServerSocket1.OnClientRead:=ServerSocket1ClientRead; |
müsste dann so gehn, wenn du das vor
Quelltext 1:
| serversocket1.Active := true; |
setzt....
MrSaint
_________________ "people knew how to write small, efficient programs [...], a skill that has subsequently been lost"
Andrew S. Tanenbaum - Modern Operating Systems
|
|
olliistmeinname 
      
Beiträge: 59
|
Verfasst: Di 14.10.03 14:09
Geht nicht. Er meint , dass seien inkompatible Typen : Methodenzeiger und Reguläre Prozedur.
_________________ Olliistmeinname und bin da für jede Dame
|
|
barfuesser
      
Beiträge: 324
|
Verfasst: Di 14.10.03 14:18
Das ist OK, Du mußt dem Methodenzeigen schon eine Objektmethode übergeben.
barfuesser
|
|
olliistmeinname 
      
Beiträge: 59
|
Verfasst: Di 14.10.03 14:52
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31:
| program test;
uses windows ,messages,ScktComp,Dialogs ; {$R *.res}
procedure ServerClientRead(Sender:TObject;socket:TCustomWinSocket); var s :string; begin s := socket.ReceiveText; showmessage(s); end;
var serversocket1 : tserversocket; label start;
begin serverSocket1:= TServerSocket.create(serversocket1); Serversocket1.OnClientRead:=ServerClientRead; <<< Hier gibt es den Fehler beim kompilieren. serversocket1.Active := true;
start: sleep(100); goto start;
end. |
Irgendwas mache ich falsch 
_________________ Olliistmeinname und bin da für jede Dame
|
|
barfuesser
      
Beiträge: 324
|
Verfasst: Di 14.10.03 15:03
Ich glaube zur Lösung Deines Problems, solltest Du Dir erst einmal Grundlagen der objektorientierten Programmierung mit Delphi aneignen.
Zum zweiten wird mir immer ganz anders, wenn ich in Quelltexten auf Label oder einen GoTo-Befehl stoße.
barfuesser
|
|
olliistmeinname 
      
Beiträge: 59
|
Verfasst: Di 14.10.03 15:10
Wenn ich das mit Forms mache , dann gibt es keine Probleme.
Man kann da ja mit einem Klick auf dem Objektinstpektor Proceduren definieren etc. Aber wenn man keine Forms benutzt , muss man das selber machen , was sonst Delphi übernimmt , oder ?
Naja das Problem besteht immer noch ...
_________________ Olliistmeinname und bin da für jede Dame
|
|
barfuesser
      
Beiträge: 324
|
Verfasst: Di 14.10.03 15:41
Wenn Du das mit Forms machst, dann werden automatisch Objekte erstellt. Und diese haben Methoden und keine Prozeduren. Wenn Du ohne Forms arbeiten möchtest, dann mußt Du trotdem Objektorientiert programmieren. Du mußt also eine Klasse erstellen, von der Du dann Objekte erzeugst. Und in dieser Klasse mußt Du dann eine Methode erzeugen, die Du an das Event übergeben kannst.
barfuesser
|
|