![]() |
Nicht genug wirkliche Parameter
Jetzt habe ich noch ein Prob bei sendText kommt folgende Fehlermeldung:
Nicht genug wirkliche Parameter. Untern steht der code. Hat sich erledigt: Ich habe ein Problem mit der Komponente Tserversocket.socket.remoteaddress Wenn ich das Projekt starte kommt undefinierter bezeicher 'RemoteAdress'. Am besten ihr nennt mir alle Fehler. lg fabi ps:
Code:
unit chat;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ScktComp; type TForm1 = class(TForm) PortLabel: TLabel; Port: TEdit; Protokoll: TGroupBox; Memo1: TMemo; User: TLabel; Edit1: TEdit; Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton; Button5: TButton; Server: TServerSocket; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button5Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure FormDestroy(Sender: TObject); procedure ServerClientConnect(Sender: TObject; Socket: TCustomWinSocket); procedure ServerClientDisconnect(Sender: TObject; Socket: TCustomWinSocket); procedure ServerClientError(Sender: TObject; Socket: TCustomWinSocket; ErrorEvent: TErrorEvent; var ErrorCode: Integer); procedure ServerClientRead(Sender: TObject; Socket: TCustomWinSocket); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; Userzahl: Integer; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin Server.Port:=strtoint (Port.Text); Server.Active:=True; Button1.Enabled:=False; Button2.Enabled:=True; Memo1.Lines.Add('Status: Server gestartet.') ; end; procedure TForm1.Button2Click(Sender: TObject); begin Server.Port:=strtoint (Port.Text); Server.Active:=False; Button1.Enabled:=True; Button2.Enabled:=False; Memo1.Lines.Add('Status: Server angehalten') ; end; procedure TForm1.Button5Click(Sender: TObject); begin Memo1.Lines.Clear; Memo1.Lines.Add('Serversoftware version1.0') ; end; procedure TForm1.Button3Click(Sender: TObject); begin Server.Active:=False; Application.Terminate; end; procedure TForm1.FormDestroy(Sender: TObject); begin Server.Active:= False; end; procedure TForm1.ServerClientConnect(Sender: TObject; Socket: TCustomWinSocket); begin Memo1.Lines.Add('Status: Client ' + Socket.RemoteAddress +'verbunden.'); Userzahl:=Userzahl +1; User.Caption:='User: ' + inttostr(Userzahl); end; procedure TForm1.ServerClientDisconnect(Sender: TObject; Socket: TCustomWinSocket); begin Memo1.Lines.Add('Status: Client ' + Socket.RemoteAddress +'getrennt.'); Userzahl:=Userzahl -1; User.Caption:='User: ' + inttostr(Userzahl); end; procedure TForm1.ServerClientError(Sender: TObject; Socket: TCustomWinSocket; ErrorEvent: TErrorEvent; var ErrorCode: Integer); begin Memo1.Lines.Add('Status: Client ' + Socket.RemoteAddress + 'hat den Fehler:' + inttostr(Errorcode)); Userzahl:=Userzahl -1; User.Caption:='User: ' + inttostr(Userzahl); end; procedure TForm1.ServerClientRead(Sender: TObject; Socket: TCustomWinSocket); var i:integer; Nachricht:AnsiString; begin Nachricht:=Socket.RemoteAddress + ': ' + Socket.ReceiveText; Memo1.Lines.Add(Nachricht); for i := 0 to Server.Socket.ActiveConnections - i do Server.Socket.Connections[i] .SendText[Nachricht]; //Hier steht der Fehler laut Delphi end; end. |
AW: Problem mit Tserversocket.socket.remoteadress
Fehlt vielleicht nur ein "d"? Remoteaddress, es könnte also einfach ein Tippfehler sein.
|
AW: Problem mit Tserversocket.socket.remoteadress
Daran lags vllt. kannste mir beim neuen problem helfen
|
AW: Nicht genug wirkliche Parameter
Ich hab die Sockets nicht installiert, aber schau doch einfach nach, welche Parameter da erwartet werden. Und ein bisschen ordentliche Formatierung würde den Code viel lesbarer machen. Auf jeden Fall kommen mir die eckigen Klammern da komisch vor, [Nachricht] hätte ich eher in (Nachricht)-Schreibweise vermutet.
P.S.: Mach bitte für neue Probleme auch neue Threads auf, statt die alten löschen/überschreiben, sonst landen wir hier schnell im Chaos. |
AW: Nicht genug wirkliche Parameter
OK Bin neu werde daran denken.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:56 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