Streams gehen ganz einfach. In der
Unit Classes sind
TStream,
TMemoryStream,
TFileStream und
TStringStream. Für die Verwendung guck bitte in die Delphi-Hilfe (Stichwort: Stream(s)).
Streams gehen so:
Delphi-Quellcode:
var Stream: TMemoryStream // mein Liebling unter den Streams
begin
Stream := TMemoryStream.Create; // Erstellen
Stream.Write(Edit1.Text[1], Length(Edit1.Text)); // Reinschreiben
Stream.Position := 0; // Auf den Anfang setzen
Form1.Client.Socket.SendStream(Stream); // Verschicken
// Ein .Free ist hier nicht notwendig, da das die Prozedur SendStream übernimmt
end;
Pointer sind Zeiger auf bestimmte Speichertypen. Übergibst du einer Funktion/Prozedur ein Objekt, so wird nur der Zeiger übergeben (nicht da Objekt seblst). Greifst du dann darauf zu, änderst du in allen Variablen dieses Objektes, das du übergeben hast, die Eigenschaft. (Hier ist jetzt aber nicht gemeint, dass man von jeder Klasse nur 1 Instanz erzeugen kann. Es wird eben das von der aktuellen Instanz geändert.)
Zitat von
faeX:
Mist, schon wieder ein Fehler... Der String ist auf 255 Zeiten begrenzt.
TagString : String[255];
Für längere Strings verwende WideString
Zitat von
faeX:
Bei deinem Chat schlägt mein Scanner Alarm, obwohl ich nicht glaube, dass er berechtigt ist...
Zitat von
MSSSSM:
beim server?
ist normal...
mfg
Seh ich anders. Ein Programm sollte ganz ohne Virenwarnung laufen (und erst recht dann, wenn es selbstgeschrieben ist).
Prüfe mal deine EXE z.b. bei
Virustotal und kontaktiere mal den Virenscanner-Hersteller, was der dazu sagt. Bei mir traten auch mal Viren auf, wenn ich direkt auf WinSockets zugegriffen hatte.
Bernhard