System.Win.ScktComp.TWinSocketStream.Write
Delphi
function Write(const Buffer; Count: Longint): Longint; override;
C++
virtual int __fastcall Write(const void *Buffer, int Count)/* overload */;
inline int __fastcall Write(const System::DynamicArray<System::Byte> Buffer, int Offset, int Count){ return System::Classes::TStream::Write(Buffer, Offset, Count); }
inline int __fastcall Write(const System::DynamicArray<System::Byte> Buffer, int Count){ return System::Classes::TStream::Write(Buffer, Count); }
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
function | public | System.Win.ScktComp.pas System.Win.ScktComp.hpp |
System.Win.ScktComp | TWinSocketStream |
Beschreibung
Schreibt so viele Bytes aus einem Puffer in die Socket-Verbindung, wie über Count vorgegeben ist.
Mit Write können Daten aus einem Puffer in die Socket-Verbindung geschrieben werden. Write gibt die Anzahl der übertragenen Bytes zurück.
Write kann den Wert 0 zurückgeben, wenn die Socket-Verbindung extrem langsam arbeitet und die Schreiboperation nicht nach der Anzahl der in TimeOut festgelegten Millisekunden beendet ist. So wird verhindert, dass die Methode in einen undefinierten Zustand gerät, wenn Verbindungsprobleme bestehen.
Um eine Zeitüberschreitung bei einer langsamen Verbindung zu verhindern, empfiehlt es sich, den Wert von Count eher niedrig anzusetzen und die Methode Write dafür mehrmals aufzurufen, anstatt weniger Aufrufe mit großem Count-Wert auszuführen.
Im Gegensatz zur Methode WriteBuffer löst Write keine Exception aus, wenn die mit Count geforderte Anzahl von Bytes nicht geschrieben werden konnte. Write gibt dann einfach 0 zurück.