![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите с тэлнэт сервером
Пиво © (2004-06-05 07:46:00)Уважаемые программисты =)
У меня возникла проблемма в консольном приложении, дело в том, что у меня не получается сделать телнет сервер, точнее получаеться только открыть порт =) а залогиниться не получаеться, пожайлуста напишите как это сделать?
Warlock (2004-06-07 05:47:00) [1]Кстати все выше сказанное на Дельфи 7 с компонентой TIdTelnetServer работает...
Warlock (2004-06-07 05:45:00) [2]В telnet сервере пропиши событие
procedure TForm1.Telnet1Authentication(AThread: TIdPeerThread;
const AUsername, APassword: String; var AAuthenticated: Boolean);
begin
if (AUsername='user')and(APassword='pass') then begin
AThread.Connection.WriteLn('Welcome '+AUsername);
AAuthenticated:=True;
end else
AAuthenticated:=False;
end;
а потом работай с собитием onExecute как тебе надо
например:
procedure TForm1.Telnet1Execute(AThread: TIdPeerThread);
var
s:string;
begin
with AThread.Connection do begin
Write('>');
str:=InputLn('');
if Pos(' ',str)>0 then mess:=Copy(str,Pos(' ',str)+1,Length(str)-Pos(' ',str));
str:=UpperCase(str);
if (str='EXIT')or(str='E')or(str='QUIT')or(str='Q') then Disconnect;
if (str='HELP')or(str='H')or(str='?')then begin
writeln('');
writeln('List commands :');
writeln('[h]elp or ? - this help');
writeln('[q]uit or [e]xit - exit');
writeln('[l]ogout - logout computer');
writeln('[r]eboot or [r]estart - reboot computer');
writeln('[s]hutdown - shutdown computer');
ftp-server');
writeln('');
end;
end;
ну и так далее...