Difference between revisions of "IPConnection.SendBufferRaw"
(→Примеры) |
m (1 revision imported) |
(No difference)
|
Latest revision as of 07:51, 7 February 2021
SendBufferRaw (Обмен данными) | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
TCP/IP функция отсылает данные из буфера по установленному соединению. Длина данных не отсылается. Функцию можно использовать как для блокирующих, так и для не блокирующих соединений. Если соединение будет разорвано до успешной отправки данных, функция вызовет исключение.
Синтаксис
IPConnection.SendBufferRaw(<Буфер для отправки информации (BUFFER)>,<Начальная позиция буфера (INT)>=0,<Размер отправляемых данных в байтах (INT)>)
Аргументы
<Буфер для отправки информации (BUFFER)>
- Буфер, содержимое которого будет передано с помощью установленного соединения.<Начальная позиция буфера (INT)>
- (необязательный аргумент) Начальная позиция в буфере, для отсылки информации. По умолчанию, 0.<Размер отправляемых данных в байтах (INT)>
- (необязательный аргумент) Размер в байтах, для отсылки информации. По умолчанию, до конца буфера.
Примеры
//Пример SendBufferRaw Сокет:=IPConnection.Connect("127.0.0.1:5555"); If not Сокет.IsConnected() Then Message("Сервер не отвечает","!"); Exit 0; EndIf; Try Стр:=FileToString("c:\Test.txt",0); aBuf:=Buffer.Create(); If StringTypeStr(Стр)="ANSI" Then //ANSI, длина, строка aBuf.SetByte(0,0); aBuf.SetDword(1,Length(Стр)); Else //UTF-16, длина, строка aBuf.SetByte(0,1); aBuf.SetDword(1,Length(Стр)*2); EndIf; Сокет.SendBufferRaw(aBuf,0,5); Сокет.SendStrRaw(Стр,StringTypeStr(Стр)<>"ANSI"); Exit 1; Except Exit 0; EndTry;