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

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

Модем [D5, D6, Win2k, WinXP]


ППавел ©   (2002-08-07 04:55:00) 

Народ подскажите пожалуста как можно управлять модемом.
Тоесть заставить набирать нопределенный номер со всеми фишками
(пароль и имя пользователя)


Serg Gurin   (2002-09-19 01:21:00) [1]

Просто звонок - дальше можно корявить по своему разумению

function Ring(PhoneNumber, Client: String; PhoneCom: Integer): String;
var
Comment: Boolean;
i : integer;
hCommFile : THandle;
CommPort, dialPhoneNumber : string;
NumberWritten : Cardinal;
begin
Result := "";
i:=1;
Comment := False;
while i <= Length(PhoneNumber) do
begin
if not Comment then
Comment := PhoneNumber[i] = "|";
if not (PhoneNumber[i] in ["p", "P", "w", "W", ",", "0".."9"]) or Comment then
Delete(PhoneNumber, i, 1)
else
inc(i);
end;
if (Pos("p", PhoneNumber) > 1) or (Pos("P", PhoneNumber) > 1) then
begin
Result := "Неверно задан номер "+PhoneNumber;
Exit;
end;
CommPort := "COM"+IntToStr(PhoneCom);
hCommFile := CreateFile(PChar(CommPort),
GENERIC_WRITE,
0,
nil,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL,
0);
if hCommFile=INVALID_HANDLE_VALUE then
begin
Result := "Нет возможности открыть "+ CommPort+".";
exit;
end;
{Dial the phone}
dialPhoneNumber := "ATDT "+PhoneNumber+#13+#10;
NumberWritten:=0;
if WriteFile(hCommFile,
PChar(dialPhoneNumber)^,
Length(dialPhoneNumber),
NumberWritten,
nil) = false then
begin
Result := "Нет возможности набрать номер "+ PhoneNumber+".";
CloseHandle(hCommFile);
Exit;
end
else
begin
MessageBox(Application.Handle, "Как будет набран номер, поднимите трубку и нажмите OK."^M+
"Или, если хотите прервать набор, то нажмите OK не поднимая трубки.",
PChar(Client+" : "+PhoneNumber), MB_OK+MB_ICONEXCLAMATION);
WriteFile(hCommFile, "ATH"^M^J, 5, NumberWritten, nil);
end;
{Close the port}
CloseHandle(hCommFile);
end;

Написал не я, но работает отлично


LEgO-2   (2002-09-17 17:15:00) [2]

ндя... у меня немного другая трабла: номер набрать то мона, но влт например нужно мне перевести момёд из импульсного режима в тоновый ВО ВРЕМЯ набора номера...
Например есть номер телефона(для мобилы), и для того что бы позвонить не него нужно набрать сначало один номер и после того как тетка скажет, что "нужно перевести телефон в тональный набор и набрать номер" перевести его и далее набирать номер...


N_M_A   (2002-09-17 12:12:00) [3]

И мне, если еще разок не затруднит пожалуйста !!!


DjZapodlak   (2002-09-17 05:36:00) [4]

Ну ели не надоело то и мне пожалуста!!!


vinter   (2002-09-13 12:56:00) [5]

И мне тоже мона


Евген   (2002-09-12 18:13:00) [6]


> Juve ©

И мне плз вышли :)


alexta   (2002-09-11 16:24:00) [7]

Всем выслали? ;)
А слабо взять любой компонент для работы с СОМ-портом (как самый простой вариант) и потрудиться заглянуть в мануал к модему?


Arkan   (2002-09-10 03:42:00) [8]

и мне пожалуста Raptugava@hotmail.com


michael_b   (2002-09-09 12:58:00) [9]

и мне bondarevsky2001@mail.ru


UnixManiac   (2002-09-09 01:12:00) [10]

А мне выщли...
unixmaniac@chat.ru


- Lazure -   (2002-09-08 22:26:00) [11]

Где компонент? А прислать может кто?


ППавел   (2002-08-13 04:55:00) [12]

А ну дак как там с исходниками


Pingo   (2002-08-08 11:49:00) [13]

С завидной периодичностью возникает данный вопрос.
Если Вы не пишите чего-то универсального, а реализуете какое-то определенное решение может лучше использовать AT команды.
Благо с каждым модемом идет немалое PDFное руководство с прекрасным описанием. Если лень писать что-то для порта - есть прекрасный компонент. В итоге вы можете добится немалого с небольшими трудовыми затратами.
По-моему, это правильней!


Filat   (2002-08-08 11:12:00) [14]

А мне можешь выслать?
на sfilat@cr.avalbank.com
спасибо!


ППавел   (2002-08-08 07:02:00) [15]

высылай


Juve   (2002-08-08 01:02:00) [16]

Есть у меня пара примерчиков, где то скаченных (на будущее).
Я сам толком не разбирался, но если что - могу выслать.
Может поможет...


Наверх

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