Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.08.2011, 02:06   #1
Mr.Hacker
 
Регистрация: 16.08.2011
Сообщений: 3
Восклицание QMessenger v0.0.1 beta TCP Ошибка

Здравствуйте я недавно начал заниматься програмированиев в дельфи вот хотел зделать чат через нитернет ознакомилмя с языком и инди но не получается выполнить передачу сообщения Delphi7 Indy9

Цитата:
unit Unit2;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, IdTCPConnection, IdTCPClient, IdTelnet, idFTP, Menus,



OleCtrls, SHDocVw, IdBaseComponent, IdComponent, jpeg;
var
s : String;
key : Char;
i : integer;
s1 : String;
type
TForm2 = class(TForm)
MainMenu1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
edtMsg: TEdit;
Button1: TButton;
Label1: TLabel;
N5: TMenuItem;
Client: TIdTCPClient;
edtPort: TEdit;
edHost: TEdit;
timer1: TTimer;
memMsgs: TMemo;
lbl1: TLabel;
img1: TImage;
img2: TImage;
procedure SendClick(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure N5Click(Sender: TObject);
procedure timer1Timer(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure img1Click(Sender: TObject);
procedure img2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form2: TForm2;

implementation

uses Unit1, Unit4, Unit3;

{$R *.dfm}

procedure TForm2.SendClick(Sender: TObject);//Переход
begin
form2.hide;
form1.show;
end;
procedure TForm2.Button1Click(Sender: TObject); //Посылка сообщения
begin
if Key = #13 then
begin
s := edtMsg.Text + #10#13;
Key := #0;
edtMsg.Text := '';
Client.WriteBuffer(s[1], Length(s));
end;

end;
procedure TForm2.N2Click(Sender: TObject); //Переходы
begin
form1.hide;
form3.show;
end;
procedure TForm2.N3Click(Sender: TObject); //Выход из придлжения
begin
Application.Terminate;
end;
procedure TForm2.N5Click(Sender: TObject);//Логин + провекска статуса
begin
if Client.Connected then
Client.Disconnect
else
begin
Client.Host := edhost.text;
Client.Port := StrToIntDef(edtPort.Text, 8800);
edtPort.Text := IntToStr(Client.Port);
memMsgs.Lines.Clear;
Client.Connect;
end;
begin
if Client.Connected = True then
lbl1.Caption := 'Онлайн';
if Client.Connected = False then
lbl1.Caption := 'Оффлайн';
if Client.Connected = False then
Application.MessageBox('Связь с сервером QMessenger потеряна вам не будут приходть сообщения и вы не можете их писать ',
'Внимание!!!!', MB_OK + MB_ICONSTOP + MB_DEFBUTTON2);
end;
end;

procedure TForm2.timer1Timer(Sender: TObject);//Таймер
begin
if not Client.Connected then
exit;

I := 150;
if I > 0 then
begin
SetLength(s, i);
Client.ReadBuffer(s[1], i);
memMsgs.Lines.add(Copy(s, 1, Length(s) -2));
end;
end;

procedure TForm2.FormCreate(Sender: TObject);//Статус логина
begin
Form2.Caption := 'QMessenger - ' + Form1.login.Text + ' logged in!';
memMsgs.Lines.Clear;
edtMsg.Text := '';
if not Client.Connected then
exit;
end;

procedure TForm2.img1Click(Sender: TObject);//Смайлы
begin
edtMsg.Text:= edtMsg.Text + '';
end;

procedure TForm2.img2Click(Sender: TObject);
begin
edtMsg.Text:= edtMsg.Text + '';
end;

end. //Конец
Также после нажатия войти тоесть включения

Client.Host := edhost.text;
Client.Port := StrToIntDef(edtPort.Text, 8800);
edtPort.Text := IntToStr(Client.Port);
memMsgs.Lines.Clear;
Client.Connect;
Програма зависает что делать помогите!


Для поиска программистов на форуме существует раздел Фриланс. В следующий раз тему удалю. Модератор

Последний раз редактировалось dr.Chas; 18.08.2011 в 22:13.
Mr.Hacker вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как создать TCP клиент, TCP сервер ? DreamMaster911 C/C++ Сетевое программирование 1 26.10.2010 15:05
wdrawing v1.0 beta liljon Софт 0 05.05.2010 23:53
Ошибка в Excel 2010 beta Aent Microsoft Office Excel 4 22.01.2010 17:07
ДепозитЛинк 1.0 BETA Виталий Серов Софт 9 20.11.2009 11:11
3.5 и 3.5 SP1 Beta Malder Общие вопросы .NET 5 19.08.2008 17:17