Форум: "Сети";
Текущий архив: 2004.08.15;
Скачать: [xml.tar.bz2];
Вниз
Передача текста. Срочно!!! Подалуйста. Найти похожие ветки
← →
Apocalepse © (2004-06-14 12:27) [0]Нужно организовать передачу текста между двумя компонентами
ServerSocket и ClientSocket
Как это сделать?
procedure TForm1.edt_messKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (Key=VK_Return) and (edt_mess.Text<>"") then
begin
ListBox.Items.Add(edt_mess.Text);
if isOK then
ServerSocket.Socket.Connections[0].SendText(edt_mess.Text)
else
ClientSocket.Socket.SendText(edt_mess.Text);
edt_mess.Text:="";
end;
end;
IsOK - переменная сигнализирующая об удачном соединении клиента с сервером
edt_mess - поле типа Edit для ввода посылаемого текста
ListBox - Поле на котом выводятся сообщения.
Помогите Все компилиться и программы соединяються
но тескт с одной на другу не проходит!
У меня на форме две кнопки Сервер и коннект Если нажмеш сервер то активируеться сервак.
Когда соединяю две программы то текст набранный не отправляеться а появляется
в ListBox`e той проги в которой набрал!
Делал все в 5 Дельфе!
← →
Separator (2004-06-14 12:47) [1]Обработай событие OnRead так ListBox.Items.Add(Socket.ReceivedText) что-тто вроде этого
← →
Rouse_ © (2004-06-14 12:50) [2]C:\Program Files\Borland\Delphi6\Demos\Internet\Chat
это раз, а во вторых в зависимости от режима - сокет просто может быть не готов читать писать...
см. OnRead OnWrite
ну и в третьих -
ServerSocket.Socket.Connections[0].SendText(edt_mess.Text)
а почему именно так а не Connections[1] или Connections[2], ты же проверяй кто у тебя откуда и с кем соединился...
← →
Apocalepse © (2004-06-14 15:51) [3]Извините но я не могу найти литературы по этой теме, потому
в сетях некомпетентен абсолютно. Программа нужна позарез потому писал по статье.
Также нужно чтобы она была по верх всех окон.
Не могу ничего придумать как только привести ее полный код. Итак
var
Form1: TForm1;
isOK: Boolean = false;
implementation
{$R *.DFM}
procedure TForm1.ServerSocketClientConnect(Sender: TObject;
Socket: TCustomWinSocket);
begin
Caption:="Коннектинг пипл!";
isOK:=True;
end;
procedure TForm1.btn_waitClick(Sender: TObject);
begin
ServerSocket.Active:=true;
Caption:="Жду";
edt_mess.Text:="";
edt_ip.ReadOnly:=true;
btn_connect.Enabled:=false;
end;
procedure TForm1.btn_connectClick(Sender: TObject);
begin
ClientSocket.Address:=edt_ip.Text;
ClientSocket.Active:=true;
edt_mess.SetFocus;
edt_ip.ReadOnly:=true;
btn_wait.Enabled:=false
end;
procedure TForm1.ServerSocketClientDisconnect(Sender: TObject;
Socket: TCustomWinSocket);
begin
isOK:=false;
Caption:="Disconnect...";
end;
procedure TForm1.ClientSocketConnect(Sender: TObject;
Socket: TCustomWinSocket);
begin
Caption:="Коннектинг пипл!";
end;
procedure TForm1.ClientSocketDisconnect(Sender: TObject;
Socket: TCustomWinSocket);
begin
Caption:="Disconnect...";
end;
procedure TForm1.edt_messKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (Key=VK_Return) and (edt_mess.Text<>"") then
begin
ListBox.Items.Add(edt_mess.Text);
if isOK then
ServerSocket.Socket.Connections[0].SendText(edt_mess.Text)
else
ClientSocket.Socket.SendText(edt_mess.Text);
edt_mess.Text:="";
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Close;
end;
end.
----------------------------
btn_connect - Кнопка по которой активизируется клиент
btn_wait - Кнопка по нажатии которой активизируется сервер
edt_ip - Поле типа Edit для ввода IP-адреса
edt_mess - Поле типа Edit куда вводиться текст
ListBox - то место :-) где по идее должен отображаться текст.
---------------------------------
Огромня просьба помочь. Прграмма мне очень нужна... но не в одной статье, и
даже хелпе не видал ничего Про этоти компоненты их ведь нету в 7-ой Дельфе...
Могу выслать исходники...
← →
Darrin (2004-06-14 16:00) [4]Удалено модератором
Примечание: Личная переписка
← →
Verg © (2004-06-14 16:06) [5]
> Apocalepse © (14.06.04 15:51)
Ну, а где обработчики событий OnRead/OnClientRead ?
← →
Graber (2004-06-15 01:48) [6]В инетрнете есть элктронная книга по Делпхи Называется она помоему "Программирование на Делпхи 7 для профессионалов". Там как раз афтор рассматривает этот комонент. Есть так же несколько примеров, даже есть передача файлов по сети - как раз то что тебе надо.
Если не найдёшь то я тебе вышлю эту страничку с примером.
Удачи
← →
Piter © (2004-06-15 01:54) [7]http://www.delphimaster.ru/articles/sockets/index.html
← →
Apocalepse © (2004-06-15 15:12) [8]Книга у меня давно есть. Там еще ссылки сделаны в виде кнопок да? У меня есть две эти книги для чайников и провессионалов. Кстати лежат они тут http://delphim.amillo.net - моего друга сайт по мультимедиа программированию в дельфи. А вообще всем хочу сказать СПАСИБо так как я написал уже прогу но в 7 Дельфе. там сетевые компоненты TcpClient и TcpServer я их использовал.
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2004.08.15;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.032 c