Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Отправка изображения с использованием сокетов [D7]


WeTeR ©   (2008-12-10 12:13:00) 

Скажите пожалуйста я хочу отправить изображение по сети пользуясь функцией Send(AcceptedSock,buffs,Len,0); но второй параметр  имеет тип либо Char либо String.
А отправить в буфер изображение я могу только таким образом
Stream.Read(Buf,SizeOf(Buf)); получая информацию в типе byte
Использовать Sendbuf неполучается так как он встроеный метод в компонент Server.Socket или  Klient.Socket а их я использовать нехочу
, предпочитаю делать так:

WSAStartup($101,DAta); {Инициализация библиотеки}
S:=Socket(AF_Inet,Sock_Stream,0); {Создаем сокет}
addr.sin_family:=PF_Inet;{Указываем семейство протоколов TCP}
Addr.sin_addr.S_addr:={Inet_Addr('192.168.200.217');{}Inaddr_any; {выбор адресса на усмотрение системы}
Addr.sin_port:=HTons(3030); {указываем порт}
FillChar(Addr.sin_zero,SizeOf(Addr.sin_zero),0); {заполняем некоторую область памяти заданным значением (sin_zero-нулями)}
if Bind(S,Addr,SizeOf(Tsockaddr))=Socket_Error then    {Привязываем заданый сокет(S) к адрессу(Addr)}
begin
ShowMessage('Какая то ошибка');
end;
Listen(S,SoMaxConn); {Переводим сокет в режим ожидания соеденения}

Что мне делать как перевести byte в Char или String, или как использовать Sendbuf не используя компонентов Server.Socket или  Klient.Socket ?


Германн   (2008-12-13 01:02:00) [1]


> ivak ©   (12.12.08 23:24) [8]

Он то знает. А вот ты нет. Разве так пишут бесконечный цикл?
:)


ivak   (2008-12-12 23:24:00) [2]


> ути пуси...


опять твои "ути..."? ты может что-то ещё знаешь кроме этого??


Palladin   (2008-12-12 22:17:00) [3]


> ivak ©   (12.12.08 22:10) [6]

ути пуси... ты хоть откомпилировать то пробовал?


ivak   (2008-12-12 22:10:00) [4]


> просто зациклился



for i := 1 to 2 do
i := 1;
?????


Сергей М.   (2008-12-12 14:02:00) [5]


> говорят что эти компоненты глючные


Говорят что в Москве кур доят)


WeTeR   (2008-12-12 11:56:00) [6]

Большое спасибо открыли глаза) просто зациклился)
>Религия не позволяет ?)
Просто хочется поглубже понять все эти моменты, да и говорят что эти компоненты глючные хотя сам непробовал)


Сергей М.   (2008-12-10 12:41:00) [7]


> пользуясь функцией Send(..); но второй
> параметр  имеет тип либо Char либо String


Вот штатная дельфийская декларация ф-ции Send в юните Winsock.pas (содержимое юнита не менялось со времен царя Гороха)

function send(s: TSocket; var Buf; len, flags: Integer): Integer; stdcall;

Второй форм.параметр выделе жирным.
Где ты здесь узрел Char и String ?
Он вообще нетипизированный..


tesseract   (2008-12-10 12:32:00) [8]


> Send(AcceptedSock,buffs,Len,0); но второй параметр  имеет
> тип либо Char либо String.


он вообще-то  Pchar - указатель, в него изображение и пихай.


Сергей М.   (2008-12-10 12:30:00) [9]


> их я использовать нехочу


Религия не позволяет ?)


Наверх

Титульная страница Поиск, карта сайта Написать письмо