![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
![]() помогите, времени нет на поиски, если уже есть такая тема дайте ссылку и удалите эту тему. У меня TClientSocket.SendText почему то через раз отправляет сообщения, подскажите как сделать что0бы всегда отправлял\принимал... я в сетевой части нуппп
TAleD = class(TUser) public function HelpMe(ASubject, ARequest: String): String; function GiveMeExample(ASubject: String): TStringList; procedure WriteReview(APost: Integer; ADescription: TStringList); end; |
#2
|
||||
|
||||
![]() AleD, слухай, а если ты не разбираешься в сокетах... а это там главное вроде... судя по тому что написано на форуме... и еще 3D координаты - но это для лохов, понятно же. Продолжим, как же ты будешь...?
Некоторые программисты настолько ленивы, что сразу пишут рабочий код. Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты. |
#3
|
||||
|
||||
![]() Цитата:
Если ты такой умный то иди и делай ММОRPG с PhoeniX'ом, или сиди и молчи Я понимаю что ты (ну вы) уже несколько лет кодите, у меня стаж только 2 года, и то до этого только софт делал для самого себя TAleD = class(TUser) public function HelpMe(ASubject, ARequest: String): String; function GiveMeExample(ASubject: String): TStringList; procedure WriteReview(APost: Integer; ADescription: TStringList); end; Последний раз редактировалось AleD, 09.04.2009 в 06:51. |
#4
|
||||
|
||||
![]() Сами спровоцировали человека, ответить в стиле вашего вопроса, а теперь обижаетесь. Меньше воды, больше кода. Телепатов тута нет.
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#5
|
||||
|
||||
![]() Цитата:
Код конечно смотрите: Код:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, ScktComp; type TForm1 = class(TForm) svSocket: TServerSocket; clSocket: TClientSocket; mmOutput: TMemo; mmInput: TMemo; btnSend: TButton; Bevel1: TBevel; edtHost: TEdit; Label1: TLabel; procedure mmInputKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); procedure FormCreate(Sender: TObject); procedure btnSendClick(Sender: TObject); procedure svSocketListen(Sender: TObject; Socket: TCustomWinSocket); procedure svSocketClientWrite(Sender: TObject; Socket: TCustomWinSocket); procedure svSocketClientRead(Sender: TObject; Socket: TCustomWinSocket); procedure svSocketClientConnect(Sender: TObject; Socket: TCustomWinSocket); procedure svSocketClientDisconnect(Sender: TObject; Socket: TCustomWinSocket); procedure svSocketAccept(Sender: TObject; Socket: TCustomWinSocket); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation uses StrUtils; {$R *.dfm} procedure log(s: String); begin Form1.mmOutput.Lines.Add(s); end; procedure TForm1.mmInputKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin if(ssCtrl in Shift)and(Key=VK_RETURN)then btnSend.Click; end; procedure TForm1.FormCreate(Sender: TObject); begin svSocket.Active := true; if(svSocket.Socket.Connected)then log('Сообщения прослушиваются') else log('Ошибка инициализации прослушивания'); end; procedure TForm1.btnSendClick(Sender: TObject); var msg: String; t: Cardinal; Begin t := GetTickCount; msg := mmInput.Lines.Text; clSocket.Host := edtHost.Text; try clSocket.Active := true; if(clSocket.Socket.Connected)then begin log(svSocket.Socket.LocalHost+': '+msg); clSocket.Socket.SendText('msg:'+msg); end; finally clSocket.Active := false; mmInput.Lines.Clear; log('SendTime: '+IntToStr(GetTickCount-t)+' ms'); end; end; procedure TForm1.svSocketListen(Sender: TObject; Socket: TCustomWinSocket); begin log('listen: '+Socket.RemoteHost); end; procedure TForm1.svSocketClientWrite(Sender: TObject; Socket: TCustomWinSocket); begin log('clWrite: '+Socket.RemoteHost); end; procedure TForm1.svSocketClientRead(Sender: TObject; Socket: TCustomWinSocket); var cmd,msg: String; begin cmd := Socket.ReceiveText; msg := AnsiMidStr(cmd,4,length(cmd)); if(AnsiStartsText('msg:',cmd))then begin //message log(' ] '+Socket.RemoteHost+': '+msg); end; end; procedure TForm1.svSocketClientConnect(Sender: TObject; Socket: TCustomWinSocket); begin log('clConnect: '+Socket.RemoteHost); end; procedure TForm1.svSocketClientDisconnect(Sender: TObject; Socket: TCustomWinSocket); begin log('clDisconnnect: '+Socket.RemoteHost); end; procedure TForm1.svSocketAccept(Sender: TObject; Socket: TCustomWinSocket); var s: String; begin log(' ] Message from '+Socket.RemoteHost); s := Socket.ReceiveText; while s<>'' do begin log(' '+s); s := Socket.ReceiveText; end; log(' [------------------------]'); end; end. TAleD = class(TUser) public function HelpMe(ASubject, ARequest: String): String; function GiveMeExample(ASubject: String): TStringList; procedure WriteReview(APost: Integer; ADescription: TStringList); end; |