Форум: "Сети";
Текущий архив: 2003.01.02;
Скачать: [xml.tar.bz2];
Внизкогда Найти похожие ветки
← →
Beginer1 (2002-11-01 20:48) [0]доброго времни суток м@ст@ки
хочу написать программу которая будет звонить прову(соединяться с интернетом)
в факе нашел исходник програмки для передачи комманд модему ( http://delphi.mastak.ru/cgi-bin/faq.pl?look=1&id=988621981&n=20)
вопрос как получать ответы от модема т.е. узнать когда "пров" спрашивает у "меня" login и password
если есть возможность то объясните по подробние
зарание спасибо :)
← →
dkDimon (2002-11-02 02:08) [1]Зачем тебе это? Если ты соединяешься через RAS (Remote Access Server) то передаешь структуру с уже заполненными логином и пассвордом.
← →
Beginer1 (2002-11-02 09:27) [2]т. е. как я понимаю в строке с немером телефона я должен вписать login и password
PhoneNumber := "ATDPХ{номер прова}" + "login"+ "password";
поправте пожалуйста если не так
← →
Malder (2002-11-02 11:18) [3]Не так. Потом ты должен работать с терминалом.
Если видишь "ogin:" то отсылаешь логин и т.д.
← →
Anatoly Podgoretsky (2002-11-02 14:29) [4]Malder © (02.11.02 11:18)
И это тоже не так, работать надо в соответствии с протоколом провайдера, у меня например провайдер запрашивает это как "user:"
← →
Beginer1 (2002-11-02 14:45) [5]так всетаки что происходит!!!!!!!
1. звоню прову
2.модем определяется с параметрами связи (скорость, сжатие данных...)
3. пров спрашивает login и password (как это узнать, когда он спрашевает)
>Malder
как мне увидить этот терменал , а точнее моей программе
← →
Malder (2002-11-02 15:22) [6]Anatoly Podgoretsky, несомненно нужно отслеживать наиболее распространенные приглашения, вроде login, user.
Beginer1, терминал ты не увидишь =) Ты его можешь увидеть, если в свойствах соединения поставишь "Открывать окно терминала после набора номера".
А как ты собственно говоря собираешься принимать, передавать данные ?
← →
Beginer1 (2002-11-02 22:26) [7]может я не так объяснаю :(
хочу написать прогу которая будет соединять меня с интернетом как это делается в виндовсе программой "подключение" а что касается логин или юзер то я использую разных провов.кто пишет sovam! login:
кто просто login:
>Malder
вот я и хочу узнать как принемать переданные данные от сервера
как отслеживать приглашения, вроде login, user.
как отслеживать приглашения, вроде login, user.
как отслеживать приглашения, вроде login, user.
← →
Malder (2002-11-03 12:12) [8]Beginer1, ты уж определись, что хочешь.
1) Если ты хочешь сделать звонилку, то тебе прямая дорога к RAS. Там ничего отслеживать не надо, все за тебя делают...
2) А если хочешь полностью контроллировать модемную передачу, то... контролируй ее. Я ж тебя не просто так спросил "А как ты собственно говоря собираешься принимать, передавать данные ?". Как набирать номер ты понял. А как передавать, принимать данные ?
Или тебе это не требуется, главное позвонить ? =)
Вот если научишься работать с данными, то увидишь, что удаленный модем тебе будет слать приглашения, вроде "login:" или "user:"
после успешного их ввода начнется PPP сессия (я говорю про подключение к интернету по dial-up), работать с которой тебе будет еще геморройней. Так что см. 1
← →
Геннадий (2002-11-03 14:46) [9]В общем так. Я использовал компонент CPort. Тебе нужно позвонить, подождать, пока модемы соединятся - и начинай постоянно читать порт. Тебе будет выслано приглашение ввести логин, а потом и пароль. Но Инет ты так не получишь.
---------------------------------------------------------
unit COM_Unit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, CPort;
type
TForm1 = class(TForm)
Button1: TButton;
Memo1: TMemo;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
var
COMport : TComPort;
procedure TForm1.Button1Click(Sender: TObject);
var
S : String;
begin
COMport.FlowControl.ControlDTR:= dtrEnable;
ComPort.FlowControl.ControlRTS := rtsEnable;
COMport.WriteStr("AT D P 666440"#10#13);
Repeat
COMport.ReadStr(S, 255);
If S<>"" then Memo1.Lines.Append(S);
Application.ProcessMessages;
Until (Application.Terminated) or (Pos("login:", LowerCase(S))<>0);
COMport.WriteStr("my_login"#10#13);
Repeat
COMport.ReadStr(S, 255);
If S<>"" then Memo1.Lines.Append(S);
Application.ProcessMessages;
Until (Application.Terminated) or (Pos("pass", LowerCase(S))<>0);
COMport.WriteStr("my_password"#10#13);
Repeat
COMport.ReadStr(S, 255);
If S<>"" then Memo1.Lines.Append(S);
Application.ProcessMessages;
Until (Application.Terminated);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
COMport:= TCOMport.Create(Self);
COMport.Port:= "COM2";
COMport.Open;
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
COMport.Close;
COMport.Free;
end;
end.
← →
Beginer1 (2002-11-05 15:33) [10]А где сзять такую компаненту
← →
Vit1251 (2002-11-05 16:17) [11]Это очень интересный вопрос, дело в том что не все провайдеры определяют это так как вы здесь выше написали. Большинство используют проверку пароля через протокол PPP под TCP/IP и систему кодирования например CHAP (этому надо учится). Так вот вам надо имитировать просто подключение PPP это можно сделать просто подключившись из Windows. НО если это не устраевает вам надо найти исходники TCP/IP, PPP, CHAP протоколов. А вот как вы будете это все стыковать это уже ваши проблемы... Я думаю это не подсилу вам...Тем более, что зная всю эту архитектуру вы могли бы очень просто взламывать любого провайдера.
Терминальную программу можно найти в папке HyperTerminal и открыв ее отменить всю чешую... Нажать {ENTER} и ввести команду работы с модемом. Модем работает на AT командах с использованием прерывания на данный командой CONNECT....
Прмер:
U - говорит пользователь
C - отвечает компьютер
U: AT Z
C: OK
U: ATDP3263610
C: CONNECT 56700/ARQ/NONE/V42+/LAMP
Произошло соединение...ПОсле этого уже надо стыковать протокол...
Если это CHAP авторизация (Win98, Win95) то нужно послать закодированный логин и пароль (иногда домен). После чего прийдет ответ...Его уже надо ловить PPP подробнее об этом написано на www.protocol.ru (ЕСЛИ НЕ ОШИБАЮСЬ)
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2003.01.02;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.003 c