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

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

Мастера ПОМОГИТЕ!!!


Страницы:   1 2

elefant ©   (2002-05-11 12:48:00) 

У меня есть :
program Pervaia;

uses
Windows,
Messages,
ScktComp;

var
hSo : TServerSocket;
begin

hSo := TServerSocket.Create(nil);
hso.Port := 50;
hso.Active :=true;

end.

Как отловить когда клиент конектица и т.д?
Очеть нужно!
Зарание благодарен.


elefant   (2002-05-17 11:01:00) [1]

Сатиp
Просто меня бомбил Klez.h вот и прешлось так клиента настроить :(


elefant   (2002-05-17 10:58:00) [2]

Сатиp
Пожалуйсто отошли куски еще разок,
ато мои клиент левые письма из яшика двигает :)


Donal_Graeme   (2002-05-15 16:36:00) [3]

2 Song: посланые по почте :-)

2 elefant: заранее извиняюсь :-), но функцию OnClntConnect ты оставил так как у меня написано? а после создания класса у тебя что-нибудь есть?
я к чему говорю, если программа осталась в том же виде, как и в вопросе, то она заканчивает выполнение сразу после создания и подключения.


Song   (2002-05-15 15:46:00) [4]

Класс... а куски кода невидимые... :(


Сатир   (2002-05-15 15:20:00) [5]

я вот сегодня с этим вопросом тоже решил разобраться.
Короче, вот тебе куски кода... хотя ты их можешь глянуть в хелпе по
TPowerSock. Чтоб тебе было легче искать, смотри раздел, посвященный компоненту NMGeneralServer.
Когда сбацаешь приложение, законекться к своей тачке через телнет и тогда в нём увидешь дату подключения а в своём приложении надпись "client connected".
Удачи.


elefant   (2002-05-15 12:33:00) [6]

Donal_Graeme
Комплица нормально, только когда клиент коннектица
сервер ни как не реагирует.


Donal_Graeme   (2002-05-14 17:54:00) [7]

а что не работает?


слон   (2002-05-13 16:54:00) [8]

2elefant
если думаешь об API, то забудь про всякие
TServerSocket и всю муру
ТОЛЬКО функции из Winsock.dll
и никаких гвоздей!!!


elefant   (2002-05-13 16:39:00) [9]

Donal_Graeme
Жаль и это не пашет :(
Может еще идеи есть?


elefant   (2002-05-13 15:52:00) [10]

Donal_Graeme
Да понятно спасибо.
Проверю ;)


Donal_Graeme   (2002-05-13 10:28:00) [11]

процедура события OnConnect должна быть методом класса.

если нужно без форм, то могу посоветовать создать свой класс и всё делать там... Например :



type
TMyConnect = class (TPersistent)
private
procedure OnClntConnect (Sender: TObject; Socket: TCustomWinSocket);
public
FTCP: TServerSocket;

constructor Create; override;
destructor Destroy; override;
end;

var MC: TMyConnect;

implementation

constructor TMyConnect.Create;
begin
inherited;

FTCP := TServerSocket.Create (nil);
FTCP.OnClientConnect := OnClntConnect;
end;

destructor TMyConnect.Done;
begin
FTCP.Free;

inherited;
end;

procedure TMyConnect.OnClntConnect;
begin
// Client Connected
end;

// main
begin
MC := TMyConnect.Create;
...
end.



это только набросок. надеюсь, идея понятна :-)


Malder   (2002-05-11 17:04:00) [12]

elefant, почитай доков по работе с сокетами с помошью WinAPI...

Насчет примера Song"а - дай процедуре имя не ServerSocket1ClientConnect, а какое-нибдудь другое, уникальное. А то это совпадает со стандартным названием мобытия у ServerSocket1

P.S. Называйте темы по нормальному, а не "Помогите" "Хеееелп" или "Задача для умных людей"...


elefant   (2002-05-11 16:03:00) [13]

Поможет кто или нет?


elefant   (2002-05-11 15:26:00) [14]

Song
Да вормы мне ненало.
Задм вопрос по другому.
Как все это на АПИ забабашить?


Song   (2002-05-11 15:20:00) [15]

А чё форма всю жизнь портит?


elefant   (2002-05-11 15:04:00) [16]

Ну не катит, попробуй у себя откомпели.
Не получиться, надо что-то другое!


Song   (2002-05-11 14:39:00) [17]

Какая разница убрери Form1


elefant   (2002-05-11 14:26:00) [18]

Song
Программа без модуля!(Один .dpr).
Пробовал толькочто то что ты сказал, но компюругается
[Error] Remote.dpr(20): Incompatible types: "method pointer and regular procedure"


Song   (2002-05-11 13:58:00) [19]


procedure TForm1.ServerSocket1ClientConnect(Sender: TObject;
Socket: TCustomWinSocket);
begin
// Тест процедуры
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
hso:=TServerSocket.Create(nil);
With hso Do
Begin
Port := 50;
Active :=true;
onClientConnect:=ServerSocket1ClientConnect;
// другие св-ва и другие события
End;
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
hso.Free;
end;


elefant   (2002-05-11 13:28:00) [20]

Пожалуисто по конкретнее.


Страницы:   1 2

Наверх

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